Purpose
Explain the alert
Identify which volume is constrained, how quickly it changed, and which workload or storage consumer best matches the evidence.
Windows Server / Storage / Investigation
Confirm the affected volume, measure the condition, and identify credible growth evidence before planning a change. This is an investigation guide, not an automated cleanup or remediation procedure.
Purpose
Identify which volume is constrained, how quickly it changed, and which workload or storage consumer best matches the evidence.
Boundary
No files, logs, snapshots, databases, checkpoints, retention settings, services, or volumes are changed by this guide.
Example
LAB-SRV-01 and its example values are documentation-safe placeholders, not production-derived evidence.
Method
Interpret capacity together with server role, backup state, recent changes, service impact, and the rate of growth.
1 · Investigation question
Determine whether one volume is genuinely constrained, whether consumption was sudden or gradual, what category of data is growing, and which accountable owner should evaluate the safest remediation.
Match the alert to the exact drive letter, mount point, volume label, capacity, and current free space.
Compare prior measurements and recent patching, software, backup, logging, workload, and application changes.
Connect the likely consumer to the server role and the team responsible for its application, retention, backup, and recovery requirements.
File size alone does not establish whether data is active, recoverable, duplicated, safe to move, or safe to delete.
2 · Alert context
Ten percent free on a 100 GB volume and ten percent free on a 10 TB volume describe very different operating buffers. Record both values, the workload's growth rate, and the space required for updates, logs, databases, checkpoints, backups, and recovery operations.
Alert thresholds should reflect the server role, expected growth, service requirements, storage architecture, and recovery plan. A percentage alone does not prove an outage, and a large absolute value does not prove the remaining buffer is adequate.
3 · Boundaries and safety
Use an account authorized to read the relevant volume and application paths. Some volume, event-log, VSS, and servicing details require an elevated session. Record access-denied results instead of treating unreadable paths as empty.
Large does not mean unnecessary. Old does not automatically mean safe to delete. Server role and backup state must be known before remediation.
A successful cleanup does not explain why growth occurred. Freeing space without correcting recurring growth only delays the next alert.
4 · Initial evidence
System
Record the server role, operating-system version, whether it is virtual or physical, and whether storage expansion is technically available.
Capacity
Record the affected volume, total capacity, available space, percentage free, alert timestamp, and previous free-space measurements.
Recent work
Record recent patching, software installation, application deployment, backup changes, logging changes, exports, imports, and maintenance activity.
Safety
Confirm whether backups are current and verified, and whether users, services, databases, replication, updates, or recovery operations are affected now.
5 · Affected volume
Drive letters, mount points, cluster storage, virtual disks, pass-through storage, and mapped file-system drives can produce different views. Start with the alert's identifier, then compare volume labels, drive letters, paths, and capacity before investigating directories.
Get-Volume |
Select-Object DriveLetter, FileSystemLabel, FileSystem, HealthStatus,
SizeRemaining, SizeGet-Volume is provided by the Windows Storage module and returns volume objects. It is useful for local volume identity, health status, and remaining capacity; not every volume has a drive letter.
6 · Current capacity
Get-PSDrive -PSProvider FileSystem |
Select-Object Name, Root,
@{Name='UsedGB'; Expression={[math]::Round($_.Used / 1GB, 2)}},
@{Name='FreeGB'; Expression={[math]::Round($_.Free / 1GB, 2)}}This reports drives exposed by the PowerShell FileSystem provider, including mapped and session drives. It is convenient, but it is not a substitute for identifying the underlying local volume.
Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" |
Select-Object DeviceID, VolumeName,
@{Name='SizeGB'; Expression={[math]::Round($_.Size / 1GB, 2)}},
@{Name='FreeGB'; Expression={[math]::Round($_.FreeSpace / 1GB, 2)}},
@{Name='PercentFree'; Expression={
[math]::Round(($_.FreeSpace / $_.Size) * 100, 2)
}}Win32_LogicalDisk exposes logical-disk size and free-space properties. The DriveType=3 filter limits this example to local fixed disks.
fsutil volume diskfree C:This native command reports free-space values in bytes for the selected volume. Microsoft documents fsutil as an administrative tool; use it from an elevated Command Prompt or PowerShell session. It does not calculate a friendly percentage.
7 · Growth pattern
Compare monitoring history at consistent intervals. Align the first material change with patching, installs, deployments, backup jobs, application activity, log rotation, database maintenance, imports, exports, checkpoints, or user activity.
Look for one bounded event: a dump, failed backup staging run, new virtual disk or checkpoint, database growth, installation, export, or runaway log.
Look for retention drift, normal workload growth, missing log rotation, accumulating profiles, backup history, or a volume sized below the workload's trend.
Confirm the monitored object, collection time, agent health, mount point, quota, and whether the alert is delayed or still open after recovery.
8 · Common consumers
Component store, Windows Update data, temporary directories, event logs, crash dumps, installer caches, Recycle Bin, and user profiles.
IIS logs, application logs, exports, caches, monitoring and RMM agent data, and antivirus or EDR quarantine.
SQL Server data files, transaction logs, backup files, and application-owned databases whose file size does not reveal internal free space.
Hyper-V virtual disks and checkpoints, backup-agent caches and staging data, repositories, and Volume Shadow Copy storage.
File-server shares, redirected folders, profile containers, quotas, departmental data, and client-accessible previous versions.
Get-ChildItem -LiteralPath 'C:\' -Directory -Force -ErrorAction SilentlyContinue |
Select-Object FullName, LastWriteTime, AttributesThis one-level inventory identifies known top-level locations without sizing every file. Choose a role-relevant root next. Confirm that the selected root is not an unexpected junction, reparse point, or mount point before recursion.
$Path = 'C:\inetpub\logs\LogFiles'
$Files = Get-ChildItem -LiteralPath $Path -File -Recurse -Force `
-ErrorAction SilentlyContinue
[pscustomobject]@{
Path = $Path
FileCount = $Files.Count
SizeGB = [math]::Round(($Files | Measure-Object Length -Sum).Sum / 1GB, 2)
OldestFile = ($Files | Sort-Object LastWriteTime | Select-Object -First 1).LastWriteTime
NewestFile = ($Files | Sort-Object LastWriteTime -Descending | Select-Object -First 1).LastWriteTime
}This example is read-only but can still produce substantial I/O on a large or busy path. Limit the root, use an appropriate window, monitor impact, avoid following reparse-point or junction targets, and record access-denied paths. Do not start with an unrestricted recursive scan of the entire system drive.
9 · Component store
WinSxS uses hard links, so an Explorer or generic recursive total can overstate its independent disk consumption. Microsoft provides a servicing analysis that reports the component store's actual size and whether cleanup is recommended.
DISM /Online /Cleanup-Image /AnalyzeComponentStoreRun the command from an elevated session. It creates a report; it does not perform cleanup. A recommendation in the report is evidence for a separately authorized maintenance decision, not permission to delete WinSxS content or run cleanup immediately.
10 · Log growth
Review Windows logs and application-owned logs independently. A large circular event log can be correctly configured; a rapidly growing application log can indicate a repeated failure even when its retention is working as designed.
Get-WinEvent -ListLog * -ErrorAction SilentlyContinue |
Where-Object FileSize |
Sort-Object FileSize -Descending |
Select-Object -First 20 LogName, RecordCount, FileSize,
MaximumSizeInBytes, LogMode, LogFilePathGet-WinEvent -ListLog returns event-log configuration objects, including current file size, maximum size, mode, and path when available. Reading some logs can require elevation. Record the largest logs and correlate their timestamps and providers; do not clear them as an investigative shortcut.
11 · Shadow copies and backups
VSS is used by Windows features and many backup products. Shadow storage can be legitimate, can reside on another volume, and can affect previous versions, backup, restore, and application-consistent operations.
vssadmin list shadowstorage
vssadmin list shadowsThese commands list shadow-storage associations and existing shadow copies. Run them from an elevated session. Record the source volume, storage volume, used and maximum allocation, providers, timestamps, and backup ownership. Do not resize storage or delete shadow copies without understanding restore requirements and application dependencies.
12 · Server roles
Escalate storage pressure involving the OS volume, NTDS database or logs, SYSVOL, DFS Replication, DNS, or backup state. Never treat directory-service paths as general file cleanup.
Separate service databases, audit logs, debug logs, backups, and exported configuration from ordinary temporary data. Confirm service ownership before any retention decision.
Database, transaction-log, tempdb, and backup growth require database context. A full transaction log can restrict updates, and shrinking a file does not resolve why log reuse is blocked.
Mailbox databases, transaction logs, transport queues, search data, and backup truncation are application-critical. Escalate through the Exchange and backup owners.
VHDX and AVHDX files belong to virtual-disk chains. Checkpoints can grow and merge operations require working space; never delete virtual-disk files directly.
Shares, quotas, previous versions, redirected folders, profile containers, deduplication, and business retention determine whether apparent growth is expected.
User profiles, profile containers, temporary data, application caches, spool files, and session density can distribute ownership across user, platform, and application teams.
Capacity, retention, immutability, synthetic fulls, staging, deduplication, and catalog dependencies belong to the backup design. Do not remove restore data to silence an alert.
Correlate site logs, failed-request traces, dumps, deployment packages, application logs, caches, and data paths with application ownership and retention.
13 · Evidence correlation
| Observation | What it may indicate | What it does not prove | Safest next investigation step |
|---|---|---|---|
| Free space dropped suddenly. | A bounded event such as a dump, backup stage, checkpoint, database growth, install, export, or runaway log. | Which file is unnecessary or that deletion is safe. | Align the first drop with change, job, application, and modification-time evidence. |
| Free space declined gradually. | Normal workload growth, retention drift, accumulating logs, profiles, backups, or undersized storage. | That the monitoring threshold is wrong. | Calculate the trend and compare it with documented retention and capacity forecasts. |
| Event logs are unusually large. | Configured maximums, high event volume, or a repeated provider condition. | That the logs are disposable or caused the original issue. | Record size, maximum, mode, path, providers, and event timing before involving the service owner. |
| Component-store analysis recommends cleanup. | Windows servicing reports reclaimable component-store content. | That manual deletion is safe or cleanup explains recurring growth. | Preserve the report and route a separate servicing-maintenance decision. |
| SQL transaction logs are large. | Normal allocation, active work, recovery model, missing log backups, replication, availability, or blocked reuse. | That the file can be deleted, truncated, or shrunk safely. | Escalate to the database owner with volume, database, backup, and SQL log-reuse evidence. |
| Hyper-V checkpoints exist. | Planned change protection, backup activity, or an incomplete checkpoint lifecycle. | That AVHDX files are orphaned or can be removed directly. | Match checkpoints to VMs, backup jobs, timestamps, disk chains, and available merge space. |
| Shadow storage consumes substantial space. | Previous versions, backup, restore, or application-consistent snapshot activity. | That shadow copies are stale or unnecessary. | Identify the protected and storage volumes, providers, backup owner, restore need, and configured allocation. |
| Temporary directories contain old files. | An application, installer, update, or job did not remove intermediate data. | That age alone makes the files safe to delete. | Identify file ownership, open handles, creation source, backup need, and supported cleanup path. |
| Backup staging data remains. | An active job, failed cleanup, retry, restore point, or repository workflow. | That the backup is complete or the staging data is expendable. | Correlate the path with job history, catalog state, retention, and the backup vendor or owner. |
| One user profile is unusually large. | Application caches, profile containers, downloads, offline data, or user-owned content. | That the profile is abandoned or unneeded. | Confirm ownership, session state, profile technology, policy, and business retention. |
| Disk use appears normal but the alert persists. | A stale alert, wrong monitored object, agent problem, mount point, quota, or collection delay. | That monitoring can be ignored. | Match the monitor's volume identifier and timestamp to fresh local measurements and agent health. |
| The affected volume is not the system drive. | An application, database, VM, backup, share, or mounted workload volume is constrained. | That operating-system health and service availability are unaffected. | Map the volume to its paths, services, workload owner, backup, and expansion options. |
14 · Escalation
Preserve measurements, timestamps, paths, owners, recent changes, and backup evidence, then escalate through the accountable platform, application, database, virtualization, security, or backup path when any of these conditions appears:
A system volume is critically constrained, services are failing, updates or logging cannot complete, or users are actively affected.
Database or transaction-log growth, Hyper-V checkpoint or virtual-disk concerns, domain-controller storage, or Exchange Server storage is involved.
Backups are missing or unverified, a backup repository is constrained, or shadow-copy ownership and restore dependencies are unclear.
Files are rapidly growing, unexpectedly encrypted, unknown, or associated with possible ransomware, compromise, filesystem errors, or corruption.
The application, data, retention policy, backup job, monitoring source, or responsible team cannot be identified.
Any next step requires deletion, cleanup, resize, migration, retention change, application change, service interruption, or reboot.
15 · Intentionally excluded
Excluded actions include manually deleting WinSxS or Windows Installer content; deleting Windows Update data, databases, transaction logs, Hyper-V checkpoints, virtual disks, shadow copies, backup catalogs, restore data, or active logs; clearing event logs; shrinking shadow storage; removing updates; changing retention; disabling services or security software; moving application data; resizing or extending volumes; running component-store cleanup; modifying the registry; or rebooting the server.
Those actions require separate authorization, verified backups, change control, application ownership, rollback planning, and an environment-specific remediation plan.
16 · Related resources
Learning method
Use the understand, investigate, resolve, and verify sequence while keeping this guide in the investigation phase.
Review the learning pathTopic hub
Place storage evidence alongside Windows Server, Active Directory, DNS, services, event logs, and hybrid dependencies.
Open the Windows & Hybrid hubRelated investigation
Use the domain-health guide when a low-space condition overlaps domain-controller services, replication, time, DNS, or directory evidence.
Open the domain-health guideFocused tool
Use the published read-only DNS tool only when the investigation also requires a bounded name-resolution check.
Open the Test-KTDNS tutorialMicrosoft sources