Thursday, 16 June 2011

How to migrate your OEM XP license to a VM

I wanted to switch my Toshiba Tecra laptop from XP to Ubuntu Linux but I wanted to retain my Windows XP environment in a VM running under Ubuntu on the same laptop because I still needed to use XP for a few things. I backed up the original XP install and installed Ubuntu. When I came to reinstall XP into a VM, the Toshiba OEM XP CD refused to install in the VM - it simply stalled when installing mup.sys from the CD. This is because many OEM XP CDs have extra checks to ensure that they can only be used on the hardware with which they were sold. I wanted to run XP on the same hardware but in a VM under Linux. If you want to do the same, read on.

If your XP system is still running, it is best to identify the type of CD being used before reinstalling. This is stored in a registry key. At a DOS prompt, enter the following command:-

C:\> REG QUERY HKEY_LOCAL_MACHINE\System\Setup\PID

or if you're happer with a GUI

Start –> Run –> regedit.exe

and navigate to the above key.

The Product ID code tells Windows if the cd-key you’re entering is associated with that particular product, ie Windows XP OEM, Retail, etc. Write down the value (e.g. 55274OEM). Backup your system and install the new OS with VirtualBox / VMware etc, ready to reinstall Windows in a VM.

If you've already removed your Windows install and don't know the Product ID code, all is not lost, but you will need to know what type of XP OEM CD you have. A list of Product IDs can be obtained from http://wiki.lunarsoft.net/wiki/Product_IDs. I have no idea if this is a complete list. Choose the PID that matches the OEM CD that you own. Your CD key will only work if you set the PID to the value that matches your original CD.

To install Windows into a VM, we will not use your original OEM Windows CD. Instead, download an XP Retail CD image that matches the Windows product that you have (e.g. XP Home) from the net. Choose a version that matches your CD; don't get Windows XP Pro if you have XP Home, for example, and get an image that matches the language of your original CD. Take care as some sites carry bogus downloads with viruses. It is important to download a Retail CD image, as these do not have OEM-specific checks which can break the install procedure in a VM environment and are probably the reason you found this blog in the first place. Ignore any CD keys that are usually posted with these images - they will give you a pirated copy of Windows which won't install software updates. We are not pirating software here - we are installing a valid copy of Windows in a VM on the same system as the original install. We will be using your original CD key to activate Windows.

Using your favourite VM tools, install Windows from the downloaded CD image into a VM. This will ask you for a CD key during the install procedure. Skip that step for now. Windows will give you 30 days to activate the install.

Once Windows is fully installed in the VM and you have the usual displays on screen, go to:

Start –> Run –> regedit.exe

Navigate to: HKEY_LOCAL_MACHINE\System\Setup\PID

Enter the PID value that you either obtained from your original install or from the online information described above. Exit the registry editor.

Now activate Windows. Enter your original CD key. It should accept the key. Reboot and verify it no longer asks you to activate Windows. Run Microsoft Update to update the system software. If your install is good, you should be able to update successfully. You now have a Windows VM using your original license!

If for some reason, the CD key you enter is not accepted, check the key value - it is easy to mistype it. If you are sure the key is correct, try a different PID value in the registry. If it still won't work, you'll either need to buy a legitimate Retail Windows CD or install Windows as the host OS again. You did backup your original install, didn't you? ;-)