VMware Communities
vr8ce
Enthusiast
Enthusiast
Jump to solution

Shrunken partition still showing same size

Fusion 3.0 running Win7 Pro guest on SL 10.6.2 Host.

I created the initial VMware hard disk as 40GB pre-allocated. After running a week, I decided that was a mistake – it was far too big (16GB is more than enough). So, I shutdown the VM, unchecked the pre-allocated checkbox on Hard Disk Settings, applied it, re-started the VM, ran VMWare Tools, chose "Shrink Partition", and it did so. The physical .vmdk file is now 10.5GB instead of the previous 40GB. So far, so good.

However, VMWare Settings doesn't know it's shrunk, i.e. Hard Disk Settings still shows 40GB, and it won't let the slider be moved any further to the left. Going into Win7's Disk Manager, it doesn't know it's shrunk, either, i.e. it still shows 40GB. I told DM to shrink the partition (it showed 28GB free), but it told me it could only shrink 8GB. I went ahead and did so, and now DM shows three partitions: the System Reserved 100MB one, the 32GB used partition, and now a 8GB Unallocated one.

How do I get everything (VMWare Settings, Win7 DM, etc.) to agree on the size, where the size is the actual size, e.g. 10.5GB? Or, alternatively, having everything agree on 16GB (and increasing the size of the physical .vmdk to 16GB) is fine, too.

I've Googled here and on the web in general, and the half-dozen documents I've found so far all have the above steps, but little else related to shrinking. Let me know if I've missed one.

Thanks for your help.

0 Kudos
1 Solution

Accepted Solutions
rcardona2k
Immortal
Immortal
Jump to solution

Without using the pre-allocated, you'll never get all your disk numbers to "agree" unless your disk is at 100% capacity. There are at least three numbers to contend with and understand. Virtual disk capacity: 40 GB (think of this as the real size of the disk), logical file system partition size: usually matches virtual disk (-minus overhead), e.g. 39 GB, and allocated space: 10.5 GB (how much space you've actually used). On the latter, Fusion does not show you this value in the UI.

As you've seen, you can shrink some filesystems thereby putting a "cap" on the upper limit of how large the virtual vmdk will get on the host. The unallocated space should not be concerning, it's just reflecting a gap that will never be used. Think your virtual disk capacity as a credit limit but you say I'm never going to have a balance of more than 500 dollars ever. It doesn't matter if the limit is raised or doubled, etc. You've set your own limit, e.g. your virtual disk capacity could be 40, 60, 100 GB but you've already sized your filesystem to never consume more than 20 GB. The positive thing is if you ever need to grow, all you do is resize the filesystem, of course if you need more than current virtual disk capacity, you'll also have to up the virtual disk size with the slider. Unallocated space in a dynamically allocated file is practically free.

If you're still not content with having so much virtual disk capacity potential, you can rebuild the virtual disk with a smaller capacity. There is no tool to resize the capacity down in place. There used to be options (on ESX) but it's fairly dangerous for most users, e.g. if you don't shrink the filesystem first you can lose data. So it's better to force users to migrate their data to a new disk, either with a disk cloning tools like Ghost or Clonezilla (free), or VMware's Converter which rebuilds a new machine from the old.

View solution in original post

0 Kudos
3 Replies
WoodyZ
Immortal
Immortal
Jump to solution

You can only change the size downward via Fusion GUI if no OS is installed! You can change the size of the logical partition that Windows occupies with a third party utility so it doesn't take up any more space then you want even thought it would still have the 40 GB capacity if you needed to increase the logical volume at a later date.

The other option is to use a product like Ghost and image the drive to a new smaller drive or use VMware vCenter Converter to create a new virtual hard drive from the existing one.

0 Kudos
rcardona2k
Immortal
Immortal
Jump to solution

Without using the pre-allocated, you'll never get all your disk numbers to "agree" unless your disk is at 100% capacity. There are at least three numbers to contend with and understand. Virtual disk capacity: 40 GB (think of this as the real size of the disk), logical file system partition size: usually matches virtual disk (-minus overhead), e.g. 39 GB, and allocated space: 10.5 GB (how much space you've actually used). On the latter, Fusion does not show you this value in the UI.

As you've seen, you can shrink some filesystems thereby putting a "cap" on the upper limit of how large the virtual vmdk will get on the host. The unallocated space should not be concerning, it's just reflecting a gap that will never be used. Think your virtual disk capacity as a credit limit but you say I'm never going to have a balance of more than 500 dollars ever. It doesn't matter if the limit is raised or doubled, etc. You've set your own limit, e.g. your virtual disk capacity could be 40, 60, 100 GB but you've already sized your filesystem to never consume more than 20 GB. The positive thing is if you ever need to grow, all you do is resize the filesystem, of course if you need more than current virtual disk capacity, you'll also have to up the virtual disk size with the slider. Unallocated space in a dynamically allocated file is practically free.

If you're still not content with having so much virtual disk capacity potential, you can rebuild the virtual disk with a smaller capacity. There is no tool to resize the capacity down in place. There used to be options (on ESX) but it's fairly dangerous for most users, e.g. if you don't shrink the filesystem first you can lose data. So it's better to force users to migrate their data to a new disk, either with a disk cloning tools like Ghost or Clonezilla (free), or VMware's Converter which rebuilds a new machine from the old.

0 Kudos
vr8ce
Enthusiast
Enthusiast
Jump to solution

Right, my expectation was that once I shrunk the physical file, I could then shrink the Hard Disk partition size in Fusion. Or, alternatively, that if I shrunk the partition size in Win7 itself, I could then shrink the partition size in Fusion. Neither proved to be true. And from your explanation that's because Fusion doesn't allow the partition to be shrunk after the fact. Which seems … odd. But, it is what it is. Smiley Happy

That makes the fact that Windows would shrink the Windows partition by 8GB (and only 8GB, when there's 28GB free on the disk) even more odd, but I've given up trying to figure out Windows' weirdness, so I'll leave it alone, too.

rcardona2k, thanks for the explanation!

0 Kudos