Mod your PC for triple boot: a PC for all seasons

Install, configure, and boot Windows XP, Windows Vista, and Ubuntu Linux on a single machine.
The Windows XP logo, the Windows logo, and the Ubuntu logo.
Triple boot it, baby.

Lucky you; you just received a brand new shiny PC for your [fill in the occasion: birthday, anniversary, graduation, holiday]. Unfortunately, your new rig almost certainly came preinstalled with Windows Vista, and you’ve got a ton of legacy software that requires an older 32-bit Windows OS for operation. What’s a poor Vista PC to do?

Simple: install Windows XP which, with a little love, can coexist peacefully with your Vista install. Plus, while you’re at it, why not install one of the many Linux distros that are available for Intel-based PCs for added compatibility and power. In other words, mod your PC into a triple boot super PC. Before we begin, however, this important word of caution:

Warning: Most of these new PCs that are preinstalled with Windows Vista Home Basic or Premium do not come with Windows Vista installation discs. Therefore, if you make a mistake during this triple boot procedure, you could lose your Windows Vista installation.


  • Time: 4 hours
  • Difficulty: moderate
  • PC used: Sony VGN-NR160E Vaio notebook


1. Make recovery disc(s). Before you begin this project, follow the PC manufacturer’s instructions for making a set of recovery discs. Please note, these recovery discs are not Windows Vista installation discs. They only enable you to boot/recover a PC that will not boot.

2. Make new partitions. Launch Computer Management inside Vista’s Administrative Tools control panel. Start Disk Management, located under the Storage component of the management console. Right-click on the Vista (C:) drive and select the Shrink volume… option.

You will need to repeat this volume shrinkage three times and make three new partitions: the Linux boot partition, the Linux “swap” partition, and the Windows XP partition. For example, select 6 to 10GB for your Linux boot partition, 1 to 4GB for your Linux swap partition, and 32GB for your Windows XP partition.

“Oops, I’m missing approximately 5 to 10GB worth of hard disk space. Where did it go?” It’s all there, just hidden from your view. Most preinstalled Windows Vista PCs have a hidden “restore” partition built into the hard drive. If you’re an advanced user, you can try to use various partition tools, like ptedit32.exe, for exposing this hidden partition.

Defragmenting your disk may also help free up some space for shrinking, as certain system files can often be scattered throughout a drive’s empty space.

3. Install Linux. Ubuntu is a popular and user-friendly Linux flavor that can be downloaded free from and burned to a disc (inexpensive install DVDs are also available).

Install Ubuntu in the two Linux partitions that you created in Step 2, and when it’s finished, reboot your PC. During boot, the Linux boot loader, Grub, should be launched. Grub displays a menu for selecting which OS to boot (you may have to hit the escape key right after your computer restarts to access this menu). Grub’s list should contain both Ubuntu and Windows Vista/Longhorn. Select both options and make sure that both OSes boot properly. Note that your new Linux partitions will not be visible in Windows Vista.

As you’ll see later on, we’ll have to install Linux again after Windows XP. This initial install is to make sure the Grub bootloader is there pre-XP, and to insure that your Linux partitions are correctly formatted.

The drives available on a Windows Vista computer.
The two Ubuntu partitions are not visible on Windows Vista. Also, the Windows XP partition is named “DOS” in my example. Dave Prochnow

4. Install Windows XP and locate SATA drivers if necessary. Most new computers ship with serial ATA (SATA) hard drives, the current standard for maximum speed and efficiency. Being an older OS, Windows XP does not recognize these newer SATA drives by default. In this case, we must locate and install XP-compatible SATA drivers.

Upon installing from your XP CD, if you receive a blue screen during setup with the warning: “Setup did not find any hard disk drives installed in your computer,” then you must manually load SATA drivers for your computer.

Some computers might have a BIOS setting that can be toggled for configuring your SATA ports. Lacking a BIOS setting, however, the best and easiest method for loading SATA drivers is via a good old-fashioned floppy disk drive setup.

While some have managed to install SATA drivers via CD, the methods for doing so are far more complicated than simply biting the bullet and buying (or borrowing) a cheap external floppy drive. One suitable low-cost option is the external USB LaCie Pocket Floppy Disk Drive, which will run you $25 and will install Windows XP drivers on a Sony Vaio.

Using our Vaio PC example, search for your SATA driver at Intel. Our Sony Vaio uses the Intel ICH8M SATA AHCI controller. These links will help you find the correct driver for your particular machine, if necessary:

Help, my floppy drive is a B, not an A: Using an external USB floppy disk drive can sometimes result in a disk drive being labeled B instead of A, which can throw off some BIOS software. If this happens to you, try remapping a floppy disk drive letter assignment with this simple Windows Registry modification:

  • Start Regedit and find: My ComputerHKEY_LOCAL_MACHINESYSTEMMountedDevices

Inside that entry look for DosDevicesA. Right-click this entry and select the rename option. Change the “A” to a much higher letter, like “Z”. Now locate the DosDevicesB entry. Once again, select the rename option, but this time change the “B” to “A”. Save, exit Regedit, and reboot your PC. The B drive has now become the A drive.

5. Install Windows XP. Load the Windows XP installation disc, connect the USB floppy disk drive, restart your PC, and boot from the installation disc. At the opening Setup “blue screen,” press F6. This will enable you to manually load the Intel drivers from your floppy disk later in the setup process.

Setup will pause and prompt you to install extra drivers. Load the Intel driver diskette into the floppy disk drive and select the name of your PC SATA controller. Beware that Setup might try to guess which driver to load. Go ahead and try this suggestion. If it doesn’t work, just restart your PC and try another driver.

Also, watch for partition names, not drive letters during the installation of Windows XP. For example, Windows Vista labeled our future Windows XP partition with the drive letter “G:”. The Windows XP installer named this same partition with the drive letter “D:”.

6. Rebuild Windows Vista BCD. Selfishly, Windows XP will overwrite your Vista Boot Configuration Data (BCD) and Grub. Drat!

This dilemma is fixed with VistaBootPRO. You will also need to install Microsoft .Net 2.0 Framework inside Windows XP prior to using VistaBootPRO.

Inside VistaBootPRO, select Manage OS Entries and add Windows XP. Then select Uninstall Legacy Bootloader to add support for Windows Vista and specify the C: drive as an install option. Finally, click Install Bootloader and restart your PC.

The Windows Bootloader selection screen should appear with choices for Windows Vista and Windows XP. Be forewarned, Windows XP will not boot, yet. We will have to fix it in Step 8. Now it’s time to recover your Ubuntu installation.

VistaBootPRO inside Windows Vista.
Fix your Vista Boot Configuration Data with VistaBootPRO. Dave Prochnow

7. Edit Grub. Insert the Ubuntu bootable CD or DVD and restart your PC. Press F4 and select your video option, then select the option Start or install Ubuntu. Be very patient with this step. It could take several minutes before the Linux desktop appears on the screen.

Double-click the install drive icon. Following the instructions for re-installing Ubuntu over the exact same two partitions that you created in Step 3. Reboot your PC and select the Unbuntu OS from Grub for booting.

Inside Ubuntu, launch Terminal (go to the Applications menu, under Accessories, and select Terminal) and type: sudo gedit /boot/grub/menu.lst before pressing Enter.

Now edit the bottom entry that reads “Windows Vista/Longhorn.” Change it to read something like: “Windows OSes”. Save the menu.lst file. Inside Terminal, type sudo update-grub before continuing.

Press Enter, exit Unbuntu, and restart your PC. Grub should now allow you to jump to the Windows boot menu where Windows Vista and Windows XP are available for launching. Try the Windows XP option.

8. Recover NTLDR. More than likely, the Windows XP bootloader has become corrupt or missing. This AWOL feature can be easily corrected by booting with Windows Vista. In Vista, insert the Windows XP installation disc and copy the files: NTLDR and NTDETECT.COM from inside the i386 folder on this disc to the root folder of your Windows XP partition. Remove the disc and reboot your PC.

Ta-da. Now upon starting your PC, you should see Grub with Ubuntu listed and an entry for Windows OSes. Select the Windows OSes entry and you are whisked to another boot menu that lists Windows Vista and Windows XP. Go ahead, punk, make your day; select an OS, any OS. You now have three to choose from—all on the same PC. Ain’t choices wonderful?

The final triple boot menu screens on a Windows PC running Windows Vista, Ubuntu, and Windows XP.
The final triple boot menu screens (from top to bottom): Grub unedited, Grub edited, Windows boot menu. Selecting “Windows OSes” from the Grub menu will take you to the Windows boot menu. Dave Prochnow