Dual Boot XP and Linux
Dual Boot XP and Linux
id=1360&mode=print
How to dual boot Linux and Windows XP (Linux installed first) -- the step-by-step guide with screenshots
James Bannan 03 March 2009, 8:00 PM
Related how-tos:
How to dual-boot Windows XP and Linux. (Now updated for Ubuntu 9.04.)
Page 1 - Intro
Updated 2 March 2009 - now uses Ubuntu 9.04 as the Linux distribution Scenario: You want to install XP on your machine alongside your existing Linux installation on the same physical drive which already has Ubuntu 9.04 installed. Tutorial Summary: We'll create space on the Linux partition to install Windows XP. XP bootloader is fairly clumsy when it comes to dualbooting and will overwrite GRUB completely. We'll reinstall GRUB to the MBR and configure it to dualboot both Ubuntu and XP. This tutorial has been tested on a Sun Virtualbox 2.1.2 virtual machine. Regardless of which bootloader you end up using, it's a very good move to first back up the GRUB bootloader. It's easy to lose it and unless you know how to re-write it from scratch then you're generally facing a full reinstallation of Ubuntu. Firstly, boot into Ubuntu and go to Applications --> Accessories --> Terminal. Then, type in sudo gedit /boot/grub /menu.lst.
1 of 6
6/23/2012 10:50 PM
http://apcmag.com/print.aspx?id=1360&mode=print
This text file contains all the information GRUB uses to configure various boot options. Scroll down and the entries between "## ## End Default Options ##" and "### END DEBIAN AUTOMATIC KERNELS LIST" are the Linux boot options. Make a backup of the file by going to File, Save As and selecting a different location. Or take a full copy of the contents and place it into a new text file. If you can, create the backup on a removable disk or networked location. Now we need to create space on the hard drive for XP, so this will involve resizing the main Ubuntu partition. Restart the system using the Ubuntu Live CD as this gives you access to GNOME Partition Editor. When the CD loads, select "Try Ubuntu without any change to your computer". Once the CD loads, go to System, Administration, Partition Editor.
Right-click on the main data partition which has been formatted with ext3 - it should be /dev/sda1 - and select "Resize/Move".
2 of 6
6/23/2012 10:50 PM
http://apcmag.com/print.aspx?id=1360&mode=print
Move the slider from the right to shrink the ext3 partition and create free space on the hard drive, which will take the NTFS XP partition. Make sure that the free space is sufficient to hold XP (at least 2GB - preferably 5GB). Then click "Resize/Move" to confirm the selection, and "Apply" back in the main screen to carry out the pending change.
Restart the system with the Windows XP CD and boot into the install program. Unfortunately XP isn't so adaptive at handling existing partitions during installation. It detects the two Ubuntu partitions and marks then C: and E: accordingly. The remaining unpartitioned space which is available for XP will be marked as F:.
3 of 6
6/23/2012 10:50 PM
http://apcmag.com/print.aspx?id=1360&mode=print
For the operating system and the vast majority of Windows applications which have properly-coded installation scripts, this is not a problem. Some older applications will assume that C: is the system partition and may bring up errors. There are ways of changing the drive letter assignation of the system partition, but in this scenario it's strongly discouraged. To insult to injury, XP detects the Linux partition as an active system partition and won't install unless it marks this partition as inactive.
Once XP has been installed, it will boot happily into XP but there's no sign of Ubuntu. To reinstate GRUB as the system bootloader it needs to be reinstalled into the MBR. Boot the system from the Ubuntu Live CD and select "Try Ubuntu without any change to your computer". Open a Terminal session - Applications, Accessories, Terminal
4 of 6
6/23/2012 10:50 PM
http://apcmag.com/print.aspx?id=1360&mode=print
To enter the GRUB configuration mode, type in "sudo grub" and press Enter. Then type in the following commands in sequence: - root (hd0,0) NOTE - if you moved the ext3 partition to the right, then use (hd0,1) - setup (hd0) - quit - exit
Reboot the system. You'll get the GRUB bootloader but XP won't be an option - we need to add this to the boot options.
5 of 6
6/23/2012 10:50 PM
http://apcmag.com/print.aspx?id=1360&mode=print
Boot into Ubuntu and open up another Terminal session. Then, type in sudo gedit /boot/grub/menu.lst
Scroll down to the bottom of the file and type in the following text strings: title Windows XP root (hd0,1) (or (hd0,0) if Ubuntu is on the (hd0,1) partition) makeactive chainloader +1 Save the file and reboot. When the GRUB loader launches hit ESC for the boot menu. Windows XP is the last option - select it and XP will load. If you want to make the GRUB menu always available, boot back into Ubuntu and edit the MENU.LST file. Find the hiddenmenu text string and change it to #hiddenmenu. To increase the menu timeout, change the default timeout 3 to something more appropriate.
Related stories
How to dual-boot Vista with Linux (with Linux installed first) -- the step-by-step guide with screenshots How to dual-boot Vista with Linux (Vista installed first) -- the step-by-step guide with screenshots Install Linux... from Windows? How to dual boot Windows XP and Linux (XP installed first) -- the step-by-step guide with screenshots SUPERGUIDE: The Open Source Challenge. How to replace Windows completely with Ubuntu.
6 of 6
6/23/2012 10:50 PM