Monthly Archives: April 2009

I needed to convert a physical Windows XP Professional machine running ZENworks into a VMware virtual machine, but only after removing the unique identifiers like the Windows’ SID and ZENworks’ GUID, so that I could later make multiple copies of the VM without them all writing to the same ZENworks object. After weighing my options, I decided that it wouldn’t be practical to hot clone the physical machine. The best method would be to unregister the ZENworks object, uninstall the Adaptive Agent, pull it off the network, reinstall the Adaptive Agent, and then sysprep -reseal -shutdown the machine. This would leave me with a hard drive with a XP installation ready to generate new IDs the next time it was powered on. But as you well know, the VMware vCenter Converter Standalone app can only perform P2V hot cloning. Cold cloning requires the VMware Cold Clone Boot ISO, which is only available to VMware Converter Enterprise license-holders.

After some Googling around, I came across this thing called MOA, Multi-Operating system Administration. Basically, it creates a LiveCD that runs the free VMware Converter on top of a Windows Server 2003 kernel. It’s very, very nice and developed by an obvious super-genius. Just how cool is it? How about the ability to boot a physical box and start the originally installed system as a virtual machine?

Here are the steps I took to build my free cold clone boot CD.

Creating the cold clone boot CD

This builds a LiveCD using Windows Server 2003 that can then run VMware vCenter Converter Standalone 3.0.3 (previously known as VMware Converter Starter Edition) in order to cold clone a hard drive.

Caveats

The version of Windows running in the LiveCD should be the same as, or later than, the version of the Windows machine you want to convert to a VM.

VMware recommends, when cold cloning using their boot CD, that the source physical machine have 364MB of memory, with a minimum of 264MB. MOA recommends, for the Bandit version ISO, that the physical machine have at least 512MB and preferably 1GB or more.

Required files

Download moa241-setup.exe (2.7MB) from
http://sanbarrow.com/phpBB2/viewtopic.php?t=1544
You will need to sign up at the forums to gain access to the download.

Download X13-05665.img (596MB) (Windows Server 2003) from
http://download.microsoft.com/download/E/5/C/E5C2CA69-28C9-492A-8F57-BDA0010616E5/X13-05665.img

Download VMware-converter-3.0.3-89816.exe (30.1MB) from
http://download3.vmware.com/software/converter/VMware-converter-3.0.3-89816.exe

Put all three files in the same folder (with no spaces in the folder name) on a NTFS-formatted disk. MOA will refer to this as the ‘building directory’.

Assemble the ISO

Run moa241-setup.exe.
In the application menu, click moa -> create MOA core.

If you have put the X13-05665.img file into the root of the building directory, MOA will extract the files automatically. If the X13-05665.img file is in a different location or if you are using a different OS to build the LiveCD, MOA setup asks for the location of your Windows-sources. This must be a 32-bit OS, like XP or Server 2003. If you have the files on a CD or mounted using Daemon-tools, just select the drive letter; if you have them extracted somewhere on your hard disk, point to the directory one level higher than the I386 directory.

The MOA setup app asks a few questions about the environment you want to build. Answer these very quickly, as they appear to have a default answer which will be selected automatically after a very short timeout (maybe like 10 seconds).

The MOA setup runs a nifty little DOS app that downloads another 20.34MB of core files. It will ask if you want to download drivers, which is another 17MB download. After another few questions, it runs PE Builder v3.1.10a.

The MOA setup then asks if you want to install VMware Converter 3.0.3 (the default is no, so quickly click yes). After which, it asks you if you want the converter to autostart (default is no, which is fine).

A standard image ISO is created automatically. You can also create a Bandit image ISO, which seems to be what most people use. In my case, the standard image is 374,622KB, while the Bandit image is 296,810KB. The Bandit version should also be faster than the standard version.

The ISO files are saved to iso-out. Burn to CD or DVD using whatever method you prefer.

Booting from the LiveCD

When booting from the Bandit image, you will get the following message, “can’t find vmware – starting plan B”, which makes it seem like something is wrong.

An Open File dialogue box then opens in the ramdisk vm folder and displays “can’t find vmware files in default location – please select a different path”. It’s looking for a Workstation or VMware Player installation here, not the Converter. Just click Cancel.

Another Open File dialogue box will open, stating “still can’t find VMware – you may want to mount a wim”. Click Cancel again.

After a few more seconds, MOA will be finished booting up and the GUI will minimize. Click the taskbar button to open it back up, then right-click the button with the image of the desktop PC with the VMware logo on the screen and select “start converter” from the menu. A Browse for Folder dialogue box will open. Browse to X:/moahome/vm/converter/ and click OK. VMware Converter will launch.

If things are not going as expected, the developer has made a video tutorial showing a boot into MOA followed by a cold cloning operation, located at http://sanbarrow.com/moa23/coldclone-howto/coldclone-howto.html

I saved my new virtual machine to a second physical disk, then put that drive into another machine with VMware Server 1.0.9 already installed and copied over the three vm files.

I started VMware Server and clicked Open Existing Virtual Machine, but when I tried to add the new vm to the inventory, VMware Server Console popped up an error: Unable to add virtual machine “D:Virtual Machinescoldclonetestcoldclonetest.vmx” to the inventory. Configuration file was created by a VMware product with more features than this version.

Some quick Googling led to the fix:

Open the virtual machine’s two ~1 KB configuration files in a text editor.

In the *.vmx file, change

virtualHW.version = "6"
to
virtualHW.version = "4"

In the *.vmdk file, change

ddb.virtualHWVersion = "6"
to
ddb.virtualHWVersion = "4"

After I made those changes, the virtual machine powered on and booted into XP, running all the expected install scripts and generating unique Windows and ZENworks identifiers. I’ve also successfully cold cloned a Windows 2000 machine using the same boot CD.

MOA on a bootable USB drive

If you would prefer to use a bootable USB drive instead of a LiveCD, here are some tips for getting MOA onto a USB drive: http://sanbarrow.com/phpBB2/viewtopic.php?t=1250

I’ve finally opened a Twitter account, so you can follow me at http://twitter.com/ardamis. As a social experiment, it’s interesting to watch and discuss, but I haven’t really participated much. On the other hand, I’m very interested in the phenomenon of URL shortening. So, without too much trouble, I put together yet another URL shortening service: Minifi.de (‘minified’, in the jargon). It does pretty much the same thing as tinyurl.com, bit.ly and is.gd – you enter a long URL and it returns a shorter one. I’m about 50% done with the API (it works, so long as the URL valid), so if anyone knows of any clients that allow the user to specify a shortening service, I’d like to test that functionality. I have plans to make it account-based, so that you can track usage statistics and such, but that will only happen after I’m confident that the thing will survive in the wild.

So, feel free to give it a whirl, but know that it’s still in development and that I’ll probably have to wipe the database a few more times before I get it just right.