Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
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 device.map 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 ntdetect.com 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
appreciated.
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)
makeactive
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.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.