-   Linux - Software (
-   -   Dual boot Machine: Can't boot XP with grub (

joao.m.esteves 01-14-2007 05:11 PM

Dual boot Machine: Can't boot XP with grub

I have a dual boot PC, with XP and Fedora 6. Recently I had to format the Windows partiton and do a XP fresh install. I have 3 disks, 1 sata (sda) where XP is installed, and 2 pata (hdg, which has Fedora, and hdh) and it is possible to boot to Fedora with the hdg drive in the bios, but I can't, at the same time, boot to windows. To go to XP, booting must be made with the sata drive, which doesn't have grub. The error I get when trying to boot to XP with the pata disk is

"NTLDR is missing. Press ctrl+alt+delete to reboot".

I used Fedora to install grub on hdg with

"grub-install /dev/hdg"

It gave an ok message and the listing of generated by anaconda:

sda is hdo
hdg is hd1

Now comes the odd part. In grub boot menu, Fedora appears in (hd0,1) and it boots OK (there is a boot partition) and XP appears in (hd1,0). Changing this by hand to (hd0,0) gives the same error.
I'm quite sure that ntldr and are on sda C:

I also tried to install grub in the sata driver, but then it gave error 22, and had to fix the master boot record with "fixmbr" of XP cd.

Perhaps I'm missing something obvious here. Some help is highly


bigrigdriver 01-15-2007 04:55 AM

The important thing to note here is that you are causing your owm problems by switching the BIOS back and forth between the two drives. It is impossible to get grub into a consistent, sane state if you keep changing the BIOS.

Edit the BIOS one last time, and never more. Set it up as it was when you installed Fedora (since you have Fedora installed and grub in the MBR of that drive). Fedora will then be consistent with the grub.conf (/boot is in (hd0,0), / [root] is in (hd0,1)), and xp in in (hd1,0).

Do that now, and verify that Fedora will boot.

And, from this point on, LEAVE THE BIOS ALONE. It is not necessary to keep changing drive order, and just confuses matters.

On successful re-boot, edit /boot/grub/grub.conf to make the xp entry look like this:

title Windows XP
root (hd1,0)
map (hd1,0) (hd0,0)
map (hd0,0) hd1,0)
chainloader +1

Windows will refuse to boot if it isn't in the first partition of the first drive. So, we tell windows a little white lie to make it think it's there (the map lines above will remap the drive numbers for windows).

Note: in future, when you re-install xp, it will probably break grub. Just boot Fedora from the cd, and run grub-install again to fix grub.

joao.m.esteves 01-15-2007 05:25 AM

Ok I understand, I will do that.



joao.m.esteves 01-15-2007 06:58 AM

Ok it worked! I can now boot Fedora and XP from hdg with grub.

One last question: the file still says that hd0 is sda and hd1 is hdg. Isn't this going to make some troubles? Should I change it?



bigrigdriver 01-15-2007 10:27 AM

Perhaps this will answer your question:

All times are GMT -5. The time now is 07:05 PM.