How to Extend a Disk Volume in Windows Server 2019/2022/2025

Learn how to extend disk volume in Windows Server with Disk Management or PowerShell, verify the new capacity, and fix greyed-out options safely.
A glowing storage drive expands beside a Windows server rack on a dark blue background.

To extend disk volume in Windows Server, first make sure unallocated space exists immediately after the target partition, then use Disk Management or PowerShell to claim it. The operation usually takes a few minutes and expands a data volume or the system drive without reinstalling Windows.

Prerequisites

  • Windows Server 2019, Windows Server 2022, or Windows Server 2025, running either Desktop Experience or Server Core.
  • An active RDP session, VPS console, or local console with a local administrator or delegated storage-management account.
  • A recent backup or VPS snapshot, especially when changing the system volume or working on a production server.
  • Extra capacity already assigned to the same virtual or physical disk. An empty second disk is not the same as free space directly after the volume you want to grow.
  • If you need a Windows environment for this task, VPSLake Windows RDP hosting provides a remote Windows server environment.

Step 1: Inspect the disk layout

You need to identify the correct disk, volume letter, and location of the unallocated space before changing a partition.

On Desktop Experience, open Server Manager → Tools → Computer Management → Storage → Disk Management. You can also press Windows key + R, enter diskmgmt.msc, and select OK.

Look for the target volume, such as C:, followed immediately by a black Unallocated region on the same disk. The unallocated region must be to the right of the volume in Disk Management; free space elsewhere cannot be added by the built-in Extend Volume wizard.

On Server Core, or when you want an exact inventory, open an elevated PowerShell window and run:

Get-Disk | Format-Table Number,FriendlyName,OperationalStatus,PartitionStyle,Size
Get-Partition | Sort-Object DiskNumber,PartitionNumber | Format-Table DiskNumber,PartitionNumber,DriveLetter,Type,Size
Get-Volume | Format-Table DriveLetter,FileSystemLabel,FileSystem,HealthStatus,Size,SizeRemaining

Your output will vary, but a healthy target should resemble this:

DriveLetter FileSystem HealthStatus Size         SizeRemaining
----------- ---------- ------------ ----         -------------
C           NTFS       Healthy      107374182400 21474836480

Record the drive letter and confirm its size matches the volume you intend to enlarge. Do not select a small EFI, MSR, recovery, or boot partition.

Step 2: Make the new capacity visible to Windows

Windows cannot extend a volume until the operating system sees the larger disk and reports the new area as unallocated.

If you expanded a VPS disk in the VPS control panel, return to Disk Management and select Action → Rescan Disks. If you attached a new disk, check that it appears with the expected size; do not initialize or format it if it contains data.

For a physical server, confirm that the RAID controller or storage array has finished its own expansion before asking Windows to rescan. A disk that still reports its old size needs to be expanded at the storage layer first; repeating the Windows volume command will not create capacity.

Refresh Disk Management and inspect the target disk again. The desired layout is:

[ C: NTFS ] [ Unallocated ]

If the unallocated region is on a different disk, stop here. Windows cannot combine ordinary partitions from separate disks into one basic volume with this procedure.

Step 3: Extend the volume with Disk Management

The graphical wizard is the safest choice when you want to review the selected partition and amount of space before committing the change.

  1. In Disk Management, right-click the target volume, such as C:, and select Extend Volume….
  2. On Welcome to the Extend Volume Wizard, select Next.
  3. In Select Disks, leave the correct disk selected and review the available space. Enter a smaller value in Select the amount of space in MB if you want to leave some unallocated capacity for another partition; otherwise keep the maximum value.
  4. Select Next → Finish.

The volume should immediately display a larger capacity. On a healthy NTFS volume, Windows normally performs this online, so an ordinary data application does not need to be stopped. Do not delete a recovery partition just to make the button available; fix the partition layout or use a planned storage migration instead.

Microsoft documents the same workflow in its Extend a basic volume guide.

Step 4: Extend the volume with PowerShell

PowerShell is useful on Server Core and makes the maximum supported size visible before resizing the partition.

Open Windows PowerShell → Run as administrator. Replace C with the target drive letter only after checking Step 1:

$DriveLetter = "C"
$SupportedSize = Get-PartitionSupportedSize -DriveLetter $DriveLetter
$SupportedSize | Format-Table SizeMin,SizeMax
Resize-Partition -DriveLetter $DriveLetter -Size $SupportedSize.SizeMax

Get-PartitionSupportedSize calculates the smallest and largest sizes Windows can use for that partition. Passing SizeMax consumes the contiguous unallocated space; to grow by a chosen amount, replace it with a byte value that falls between SizeMin and SizeMax.

A successful resize normally returns no error. The following command, documented in Microsoft’s Resize-Partition reference, shows the resulting partition size:

Get-Partition -DriveLetter $DriveLetter | Format-Table DiskNumber,PartitionNumber,DriveLetter,Size,Type

Do not use a guessed disk number or partition number in a Resize-Partition command. Selecting by drive letter after confirming the layout reduces the chance of changing the wrong volume.

Verify the extended volume

Check both the partition and the filesystem so you know Windows expanded the usable volume, not only the underlying disk.

Run this in elevated PowerShell, changing C if necessary:

$DriveLetter = "C"
Get-Partition -DriveLetter $DriveLetter | Format-Table DiskNumber,PartitionNumber,DriveLetter,Size
Get-Volume -DriveLetter $DriveLetter | Format-Table DriveLetter,FileSystem,HealthStatus,Size,SizeRemaining

The Size value should now be larger than it was in Step 1, FileSystem should normally be NTFS, and HealthStatus should be Healthy:

DriveLetter FileSystem HealthStatus Size         SizeRemaining
----------- ---------- ------------ ----         -------------
C           NTFS       Healthy      214748364800 128849018368

You can also reopen Disk Management and confirm that the target volume fills the former unallocated region. If the server hosts a database, application, or backup repository, check that the application sees the additional free space before scheduling the next job.

Troubleshooting

“Extend Volume…” is greyed out

The unallocated space is probably not directly to the right of the target partition, is on another disk, or is separated by a recovery or data partition. Confirm the order in Disk Management. If another partition is in the way, do not delete it blindly; back up the data and plan a supported partition move or create a separate volume.

Resize-Partition reports that the requested size is invalid

The requested value is outside the range Windows calculated, or the free space is not contiguous. Run Get-PartitionSupportedSize -DriveLetter C again and use the returned SizeMax; if SizeMax equals the current size, resolve the disk layout before retrying.

Windows still shows the old disk size after the VPS expansion

The guest operating system has not detected the larger virtual disk, or the provider-side expansion has not completed. In Disk Management, select Action → Rescan Disks, then refresh the view. If the disk remains unchanged, use the VPS control panel’s console to check the virtual disk size and contact the provider before modifying partitions.

“Access is denied” or the PowerShell cmdlet is not recognized

Storage changes require an elevated PowerShell session, and older or restricted environments may not have the Storage module loaded. Reopen PowerShell with Run as administrator and check Get-Command Get-PartitionSupportedSize; use Disk Management on Desktop Experience if the cmdlet is unavailable. Do not run a partition change from a standard RDP prompt.

Hardening after the resize

  • Keep a backup or snapshot until the application has written and read data successfully from the enlarged volume.
  • Set monitoring alerts for free space instead of waiting for the disk to reach 0 bytes available.
  • Leave EFI, MSR, and recovery partitions intact; they are not ordinary data volumes.
  • If the server uses BitLocker, keep the recovery key available and confirm the volume’s protection status after storage maintenance.

FAQ

Can I extend the C: drive without restarting Windows?

Usually, yes. Windows Server can generally extend an online NTFS partition, including the system volume, when the underlying disk has contiguous unallocated space. A provider-side disk expansion or storage-array operation may still require its own maintenance window.

Why does Windows show free space but not let me extend the volume?

“Free space” inside a volume is different from “Unallocated” space outside a partition. Extend Volume needs unallocated space immediately after the target partition on the same disk; deleting or shrinking an unrelated partition can leave the space in the wrong position.

Can I merge an empty D: drive into C:?

Not with the normal Windows wizard when D: sits between C: and the unallocated area. Back up any needed data, decide whether D: can be removed, and plan the change carefully because deleting a partition destroys its contents.

Does extending a volume delete files?

The built-in wizard and Resize-Partition are designed to enlarge the selected partition while preserving its existing files. A backup is still important because storage, hardware, and operator errors can affect recovery options even when the normal operation is non-destructive.

Samrat Ghosh
Written by

Samrat Ghosh

Founder & Infrastructure Engineer

Samrat Ghosh is the founder of VPSLake, where he builds and runs the remote desktop and VPS hosting infrastructure the company is built on. He writes hands-on guides about RDP, Windows Server, VPS management and secure remote access - the practical documentation he wishes had…

Previous Article

How to Enable IPv6 on Windows Server

Write a Comment

Leave a Comment

Your email address will not be published. Required fields are marked *

Subscribe to our Newsletter

Subscribe to our email newsletter to get the latest posts delivered right to your email.
Pure inspiration, zero spam ✨