1. Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Help on triple boot: Ubuntu, Win 7, XP.

Discussion in 'Linux / BSD / Mac OS X' started by GoFigureItOut, May 26, 2012.

  1. GoFigureItOut

    Joined:
    Dec 13, 2011
    Messages:
    193 (0.18/day)
    Thanks Received:
    9
    I'm trying to triple boot my laptop for the first time. I started off with just Windows 7, and I installed Ubuntu 11.04. All went well from the dual-booting aspect. After installing Windows XP, I had to use Boot Repair, so grub will be the default boot loader. The only way I can boot into XP is selecting Windows 7 from the grub menu, then choose XP from Windows 7 boot manager. How can I add XP to Ubuntu boot menu? I've tried editing /etc/default/grub and using os-prober to no avail. Basically, I want to be able to use XP without going through Windows 7. I read some where that you can manually add entries, but I have no idea as to where. It goes something like this:

    title Windows XP
    root (hd0,1)
    makeactive
    chainloader +1

    Any help is greatly appreciated!
     
  2. newtekie1

    newtekie1 Semi-Retired Folder

    Joined:
    Nov 22, 2005
    Messages:
    20,029 (6.15/day)
    Thanks Received:
    6,094
    You can't, AFAIK, you have to select Win7, which initiates the Windows boot loader and then select between the different versions of Windows from there.
     
    Crunching for Team TPU 50 Million points folded for TPU
  3. temp02 New Member

    Joined:
    Mar 18, 2009
    Messages:
    493 (0.24/day)
    Thanks Received:
    166
    AFAIK
    Code:
    sudo update-grub
    should pick both windows versions, as long as they reside on different partitions.

    BTW, can you post the result of
    Code:
    sudo os-prober
    ?
     
  4. GoFigureItOut

    Joined:
    Dec 13, 2011
    Messages:
    193 (0.18/day)
    Thanks Received:
    9

    Here's the results from os-prober.

    /dev/sda1:Windows 7: (loader):Windows:chain

    update-grub finds only Linux and Windows 7; Windows XP resides on /dev/sda2
     
  5. temp02 New Member

    Joined:
    Mar 18, 2009
    Messages:
    493 (0.24/day)
    Thanks Received:
    166
    Since os-prober doesn't pick it up you can always add it to 40_custom and it will be added to grub.cfg every time update-grub is executed (these manual entries will be added after the entries found by os-prober during the update-grub process).

    So
    Code:
    cd /etc/grub.d/
    sudo gedit 40_custom
    and paste the following on the end of the file (don't delete the top content of the file, also this is based on XP being on NTFS sda2)
    Code:
    menuentry "Windows XP" --class windows --class os {
    	set root=(hd0,2)
    	insmod ntfs
    	chainloader +1
    }
    save and close GEdit.
    After that, run
    Code:
    sudo update-grub
    reboot and see if it works.
    Good luck.
     
  6. GoFigureItOut

    Joined:
    Dec 13, 2011
    Messages:
    193 (0.18/day)
    Thanks Received:
    9
    I followed your steps and successfully created the "Windows XP" entry on grub boot menu, but when booting from grub, I get NTLDR is missing error. However, when I select XP from Windows boot manager; it works. I'm assuming it has been overwritten by Windows 7. Does it matter in which particular order you install the OS'es? I installed in this order: Win 7, Unbutu, XP.
     
    Last edited: May 27, 2012
  7. temp02 New Member

    Joined:
    Mar 18, 2009
    Messages:
    493 (0.24/day)
    Thanks Received:
    166
    It errors at "missing NTLDR" because Windows XP boot loader wasn't installed on the partition with XP itself, so it relies on the Windows 7 loader. You might wanna do this:
    • Boot Ubuntu;
    • Run
      Code:
      sudo apt-get install gparted
      then run it
      Code:
      sudo gparted
    • And you should see that the Windows 7 partition has a flag indicating that it is a boot partition, remove that flag;
    • Reinstall Windows XP on sda2 (now XP should install its loader on sda2 too);
    • Test if XP boots from GRUB;
    • After this restore the boot flag on the 7 partition and test all OSs;
    I remember doing something like this long time ago (Longhorn/Vista early days), but it was with two different HDDs so it was "kinda" easier.
    Good luck.
     
    GoFigureItOut says thanks.
  8. GoFigureItOut

    Joined:
    Dec 13, 2011
    Messages:
    193 (0.18/day)
    Thanks Received:
    9
    I did exactly what you said and came up with the same results. It doesn't really matter, though. It's just a slight inconvenience that I can overlook. However, I will remember the steps and commands your provided me for future reference. I appreciate your time and effort in helping me with this matter. One last question. Is it possible to have the following OS'es: Windows XP, Windows 7, and Windows Home Server, all without conflicts?
     

Currently Active Users Viewing This Thread: 1 (0 members and 1 guest)

Share This Page