Content Cleanup Required
Style Cleanup Required
To set up a system that will dual boot XP and Ubuntu and also boot the XP install in a VM without destroying its ability to boot in Native Mode (i.e. outside of the VM) so you will be able to boot the same install of XP in and out of a virtual machine.
Use this help page at your own risk. I have only a working knowledge of Ubuntu, Windows and the VMware forums and was able to figure this out. I have tested it for a day booting in and out of Ubuntu and XP in the VM and out with no errors. I hope this helps some people. Feel free to edit in order to make it more generic / user friendly.
XP is installed on the first partition leaving enough space for Ubuntu installation. In addition, Ubuntu has enough space for a temporary 4.0GB virtual machine.
Instructions for windows set up were obtained through http://www.vmware.com/community/thread.jspa?forumID=19&threadID=6282&messageID=44269#44269.
To do in Ubuntu
Install VMware in Ubuntu as per https://wiki.ubuntu.com/InstallingVMWare
Click Alt+F2 then type gksudo vmware and type the password. You will need this later to gain access to /dev/hda.
- Create a Virtual Machine with XP on it. Set it up as a virtual disk not a raw partition. This partition will only be temporary and will be deleted later.
In the VM, copy c:\windows\system32\hal.dll to a floppy or any other medium by which you will be able to transfer it to the native install (i.e. gmail it to yourself if this is an option). Rename this file halvm.dll.
- Close the VM.
Continuation in Windows
- Reboot into the native windows installation.
Copy the file halvm.dll into c:\windows\system32.
Go to this KB article (http://support.microsoft.com/default.aspx?kbid=314082)) and perform steps 1 to 3, starting from where it states "1. Copy the following information into Notepad . . . ".
Note the typo in 2 where it mentions "...file, or copy...". This should be "...file, and copy...". This is fairly straight foward but vital.
Click the Start menu, Right click My Computer, choose properties from the menu.
Click on the Advanced tab and choose settings under Startup and Recovery, then click edit.
There will be a line that looks similiar to:
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetectCopy this line then paste it right below.
Change Microsoft Windows XP Home Edition to Microsoft Windows XP Home Edition VMWARE and add /HAL=halvm.dll. This should finally look like this:
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Home Edition VMWARE" /noexecute=optin /fastdetect /HAL=halvm.dll
Click File and save.
Click OK in the Startup and Recovery Page.
Click on the Hardware tab and click Hardware Profiles.
Select Profile 1 then click copy. When asked for a name type VMware.
- Shutdown windows normally.
Finish in Ubuntu
- Boot up Ubuntu.
Make a new virtual machine using the Native Partition by selecting Use a Physical disk and entire disk, otherwise, you will receive a grub error 17.
(Also note this machine must be made in Vmware 5.0 or earlier. VMware 5.5 does not let you do this, but once made you can use the virtual machine just fine in subsequent versions of VMware, and it is free to evaluate for 30 days. Better yet, create the machine in a demonstration i.e. 30 day version of vmware then use it on a regualar basis in vmplayer! absolutely free).
Boot into your VM by selecting Microsoft Windows XP Home Edition VMWARE when prompted. Choose VMware when asked for a hardware profile.
- Install VMware tools and reboot the VM.
From now on when you want to boot natively choose the first options when starting up. To boot in the VM choose Microsoft Windows XP Home Edition VMWARE and VMware.
Delete the temporary 4.0 GB VM that you made you only needed one file hal.dll that was created during the install.