2 Comments

Getting More Space in Your VMware Fusion Windows Virtual Machine

If you’ve used VMware Fusion to run Windows on your Mac for any length of time, this is probably a familiar sight:

A snip from the Windows Explorer "This PC" view. Local Disk (C:) has only 4.68 GB free and the space indicator bar is dangerously red.

Fusion only gives your Windows virtual machine 60 gigabytes of space, which may seem like plenty at first—but it rapidly fills up. Thankfully, there’s a relatively easy way to expand your space, as long as your Mac has headroom.

Understanding Your Storage Situation

Storage on a personal computer is relatively easy to understand. Your computer comes with a certain number of gigabytes of disk, which contains your operating system, installed software, and any files you store there. If you need more space and don’t want to (or can’t) split it between two disks, you’ll need to copy all of your files onto a bigger disk.

Virtual storage is a little more complicated, but it’s also more flexible. Because virtual disks are stored as files on the host computer, having more storage just means fitting a bigger virtual disk file on the host.

Additionally, by default, they’re stored sparsely. While they start out occupying almost no space, they grow as you write, right up to the virtual disk’s actual size.

As long as you expect to have enough space on your Mac to expand your virtual disk, you can very easily treat your virtual Windows machine to an upgrade.

Upgrading to Something a Little Roomier

Asking VMware to give you a bigger disk is straightforward. Just shut down your virtual machine, press Command-E to open its settings dialog, and open up the Hard Disk option.

The VMware Fusion Hard Disk settings dialog. It shows a Disk size slider set to 60.00 GB.

From here, you can make your Windows virtual disk as big as you want. You can even make it bigger than the free space on your Mac, since it won’t actually take up the space until Windows uses it! (Beware, though: You can’t easily shrink it again, and if you start running out of space on your Mac, you’ll be in trouble. Keep it reasonable. You can always make it bigger later.)

When VMware is done doing its thing, you’ll effectively have a new, bigger disk with the contents of your old disk right up front. But then you’ll see this curious dialog:

A VMware Fusion dialog saying "Virtual disk resized successfully. Use the disk maintenance tools in your guest operating system to resize or create partitions to fill the available space."

Giving Windows Permission to Move In

When you boot Windows again, you’ll find that you haven’t solved anything yet—your disk is just as full. Although there’s plenty of space on the virtual disk, the Windows volume on the disk is still only configured to fill 60 gigabytes.

The good news is that this is easy to fix. You just need to extend the volume, and Windows 10 already comes with the tool you need.

Click the Windows 10 start menu, and search for Create and format hard disk partitions. Start it, and you’ll see a window like this:

The Windows Disk Management tool. It shows Disk 0 with a 200 MB EFI volume, a 59.68 GB NTFS volume, and 190.00 GB of unallocated space.

If your disk layout looks like mine (and it should, if you let VMware Fusion install Windows for you), you can just right-click your NTFS volume and select Extend Volume. Page through the wizard; it should offer to add as much space as it can from “Disk 0.” Once the wizard is complete, you’re done! Enjoy your new, much larger disk!

What If It Doesn’t Work?

There are a number of reasons that last step might not work for you. The most common is that there’s not space directly to the right of your main volume in Disk Management. If you run into a case like this, there’s still hope.

But first, make sure you have a backup of your virtual machine, in case anything goes wrong! Making a Time Machine backup of your virtual machine directory (by default, Virtual Machines in your Documents folder) is a good way to safeguard your machine against data destruction or becoming unbootable.

GParted is a Linux tool designed to rearrange and resize partitions of all kinds on your disks, including your Windows volume. Go to the Live CD download page, and get the GParted Live CD/USB/HD/PXE Bootable Image. The image I downloaded was named gparted-live-0.33.0-1-amd64.iso.

Once you have the file downloaded, booting it works like this:

  1. From the Virtual Machine menu, choose CD/DVD, then Choose Disc or Disc Image….
  2. Select the GParted CD image file you downloaded.
  3. From the Virtual Machine menu, choose CD/DVD, then Connect CD/DVD.
  4. In Windows, search for Change advanced startup options, then click Restart now under Advanced startup.
  5. When the Choose an option screen appears, select Use a device, then the CD drive (in my case, it was called EFI VMware Virtual SATA CDROM Drive (1.0)).
  6. VMware will reboot and start the live image. Keep pressing Return whenever you’re asked a question, and eventually you’ll end up with a Linux desktop in your virtual machine.
  7. Double-click the GParted icon to start.

From here, you can move and rearrange partitions however you need to take advantage of the full virtual disk. Just remember—you can’t make a partition bigger unless it has space to the right, but you should be able to move other partitions over to make space for it. Click Apply when you’re done, close GParted, and double-click the Exit icon and choose Reboot to get back into Windows.

I hope this helped you out with your space predicament. Of course, none of this can make your MacBook’s internal disk bigger, but we can dream…can’t we?