So as a new user, I can’t embed all the screenshots I took, but hopefully you can follow along with this writeup anyway.
When you increase the Private and System storage in Qube Settings, you increase the amount of space allocated to the virtual drive. For Linux App-VMs Qubes automatically resizes the drives’ partitions and filesystems. For Windows and other HVM guests you have to do that manually.
I’m starting with a new Windows 10 guest with 25GB of System storage and 2GB of Private.
When installing Windows, the System storage shows up as Drive 0, Private is Drive 1, and there is a 10GB Volatile disk that will show up as Drive 2. When installing, just create a new partition on Drive 0.
The Windows installer will automatically create a reserved system partition 1 and a primary partition 2, this is where your C: drive will be. Select partition 2 and Format it.
Windows lies to you here; it also does something else, but we’ll get to that later.
After Windows installs, open Windows Explorer, right click on This PC and go to Manage.
Under Storage, go to Disk Management. When you first go here Windows will prompt you to initialize the other disks in the VM. You can safely cancel if you don’t want to deal with those disks.
To show how those other volumes work in Windows, I’ve initialized them. Select the GPT partition type if you want to use them.
Right-click on the unallocated space of Disk 1 and select New Simple Volume to use the Private storage for the Qube.
Click through the wizard. I labeled the volume Private to identify it. I did the same for Disk 2 and labeled it Volatile.
Going back to Windows Explorer, this is what the drives look like now. Be very careful with saving anything to the Volatile (E:) drive. It will get deleted when Windows is shut down.
I’m going to shut down Windows and resize the Private storage to 5GB and the System storage to 30GB.
When Windows boots back up, only C: and D: are present. The Volatile volume was deleted by Qubes when the VM was shut down.
A fresh Disk 2 is present in Disk management, but because it appears as a brand new drive to Windows it has to be initialized again to be used. It’s probably not very practical to use the Volatile storage, but it’s important to not get it confused with the Private storage.
Now you can see the additional space increased on Disk 0 (System) and Disk 1 (Private). There’s a problem with Disk 0 I’ll come back to.
Normally, resizing a volume is pretty straightforward. You can right-click on the Private (D:) partition, select Extend Volume and click through the wizard.
Once that completes, D: will be at the new size, 5GB.
Resizing C: on the System storage is more complicated. The Windows installer helpfully put a 500MB Recovery partition at the end of the disk. You could create a new volume with the new space we added to the end of Disk 0, but that would just create a small F: drive and not increase the size of C:.
The Disk Management utility will prevent you from deleting the recovery partition.
The recovery partition is used if you want to reset Windows back to the initial install. There isn’t much use for it in Qubes since you can create a new VM if you want a fresh install.
To delete the recovery partition, run “cmd” as Administrator and run the command “diskpart”. It’s a command line tool for managing Windows partitions. You want to be sure you select the correct disk/partition before issuing the delete command, it will wipe out any data on the selected partition, so be sure it’s Recovery.
- list disk
- select disk 0
- list partition
- select partition 3
- delete partition override
Now Disk Management sees the unallocated space contiguous with the C: partition and it can be extended. In addition to the 5GB I added, the 500MB from the deleted Recovery partition is available.
Right-click on C:, Extend the volume, click through the wizard and you have a resized System volume.