Converting VMware Workstation Thick Disks (VMDKs) to Thin

https://www.vmware.com/support/ws55/doc/ws_disk_manager_examples.html

Examples Using the VMware Virtual Disk Manager

The following examples illustrate how to use the virtual disk manager. You run the virtual disk manager from a command prompt.

Creating a Virtual Disk

To create a new virtual disk, use a command like the following:

vmware-vdiskmanager -c -t 0 -s 40GB -a ide myDisk.vmdk

This creates a 40GB IDE virtual disk named myDisk.vmdk. The virtual disk is contained in a single .vmdk file. The disk space is not preallocated.

Converting a Virtual Disk

To convert a virtual disk from preallocated to growable, use a command like the following:

vmware-vdiskmanager -r sourceDisk.vmdk -t 0 targetDisk.vmdk

This converts the disk from its original preallocated type to a growable virtual disk consisting of a single virtual disk file. The virtual disk space is no longer preallocated, and the virtual disk manager reclaims some disk space in the virtual disk so it is only as large as the data contained within it.

Expand the Size of an Existing Virtual Disk

To expand the size of a virtual disk, use a command like the following:

vmware-vdiskmanager -x 40GB myDisk.vmdk

This increases the maximum capacity of the virtual disk to 40GB.

Renaming a Virtual Disk

To rename a virtual disk, first remove it from any virtual machine that contains the disk (choose VM > Settings > <virtualdisk>, then click Remove).

Then use the following:

vmware-vdiskmanager -n myDisk.vmdk myNewDisk.vmdk

To rename the disk and locate it in a different directory, use:

vmware-vdiskmanager -n myDisk.vmdk ..\<new-path>\myNewDisk.vmdk

Note: The paths used in these examples assume a Windows host.

To locate the disk in a different directory but keep the same name, use:

vmware-vdiskmanager -n myDisk.vmdk ..\<new-path>\myDisk.vmdk

After you rename or relocate the virtual disk, add it back to any virtual machines that use it. Choose VM > Settings, click Add, then follow the wizard to add this existing virtual disk.

Defragmenting a Virtual Disk

To defragment a virtual disk, use a command like the following:

vmware-vdiskmanager -d myDisk.vmdk

Remember, you cannot defragment a virtual disk if you allocated all the disk space when you created the virtual disk. You cannot defragment a physical disk.

See Defragmentation of Disk Drives for a discussion of the performance impact of defragmenting drives.

Preparing a Virtual Disk for Shrinking

Before you can shrink a virtual disk, you must prepare each volume on the disk (C: or D:, for example) for shrinking. To prepare a volume, it must be located on a Windows host. First you must mount the volume. To mount the volume, use the VMware DiskMount Utility, available as a free download from the VMware Web site. For information about downloading and using VMware DiskMount, see the VMware DiskMount user’s manual, available from the VMware Web site at www.vmware.com/pdf/VMwareDiskMount.pdf. The VMware DiskMount Utility is available as a free download.

VMware DiskMount mounts individual volumes of a virtual disk. For the best results when you shrink a virtual disk, you should mount all the volumes and shrink them.

After you mount a virtual disk volume, use the virtual disk manager to prepare the disk for shrinking. To prepare the volume mounted as the M: drive for shrinking, use the following command:

vmware-vdiskmanager -p M:

Once the preparations are complete, unmount the volume. Repeat this process for each volume of the virtual disk. After you prepare all the volumes for shrinking, you can shrink the virtual disk.

Shrinking a Virtual Disk

To shrink a virtual disk, it must be located on a Windows host. Before you can shrink the virtual disk, make sure you prepare all the volumes of the virtual disk for shrinking. Then use a command like the following:

vmware-vdiskmanager -k myDisk.vmdk

Remember, you cannot shrink a virtual disk if you allocated all the disk space when you created the virtual disk. You cannot shrink a physical disk.

If the virtual disk has any snapshots, you cannot shrink the virtual disk. You must delete all snapshots before you shrink the virtual disk.