Force a downsize of a vmdk disk

Solution 1:

You can always create a new virtual disk, mount both on your guest, copy the files over, mount the new smaller disk in place of the old larger disk. Once you are happy everything is right, delete the old larger disk.

Solution 2:

If you're running any recent version of esx(i) you can do a storage vmotion and convert it from thick to thin as it goes.

If you're on 4.x this is built in to the gui, if it's a previous version it either involves getting a plug-in or using powershell.

You will need two datastores with the second at least large enough to store the entire vmdk plus associated files (swap, nvram, etc). But you could move it right back after you're done.

This is a completely supported way of doing things and is safe.