VMWare Notes

The following was written for VMWare 3.0 on OS X, but applies to Windows and Linux as well.

Virtual Machine Structure

Although a Virtual Machine appears to be a file, it’s actually a folder composed of many files. Expand the table below if you’re interested in learning about them.

For instance, I have a Virtual Machine I called “Windows XP Professional”. It’s stored as a directory called Windows XP Professional.vmwarevm. The VMDK images are:

Windows XP Professional.vmdk  
Windows XP Professional-s001.vmdk  
Windows XP Professional-s002.vmdk  
Windows XP Professional-s003.vmdk  
Windows XP Professional-s004.vmdk  
Windows XP Professional-s005.vmdk  
Windows XP Professional-s006.vmdk  
Windows XP Professional-s007.vmdk  
Windows XP Professional-s008.vmdk  
Windows XP Professional-s009.vmdk  
Windows XP Professional-s010.vmdk  
Windows XP Professional-s011.vmdk

Note: I’m going to call the topmost the ‘primary’ VMDK for the Virtual Machine for the following sections.

So many VMDK’s!

Yep. They’re all in 2GB chunks, presumably to get over the volume size limitations of FAT16, in case you choose to format your Virtual Machine as such.

I want one VMDK to rule them all

Fine. Fire up a terminal (or a “PowerShell” if you dream of Ballmer every night), and navigate to your virtual machine’s folder. There are three things you’ll be doing here:

  1. Move all your fragmented VMDK’s to a temporary folder
  2. Run a program that will ‘stitch’ them to a big file
  3. Move this resultant file to the virtual machine’s folder
  4. Give this big file the same name as your virtual machine folder

Example

cd /Users/tech/Documents/Virtual Machines.localized/Windows XP Professional.vmwarevm  
mkdir ~/temp  
mv *.vmdk ~/temp  
cd ~/temp  
Library/Application\ Support/VMware\ Fusion/vmware-vdiskmanager -r "Windows XP Professional.vmdk" -t 0 "XP Temp Image.vmdk"  
mv "XP Temp Image.vmdk" /Users/tech/Documents/Virtual Machines.localized/Windows XP Professional.vmwarevm/"Windows XP Professional.vmdk"

On Windows, this would be located at C:\Program Files\VMware\VMware Workstation

Sources