-   Linux - General (
-   -   Grub: how to recover Boot Record for (hd0,0)? (

fishwombat 04-27-2004 06:15 AM

Grub: how to recover Boot Record for (hd0,0)?

I have Gentoo & RedHat Linux running on my laptop which came installed with Win XP. While doing "emerge world", I found myself having to re-setup grub. Now, I can boot my Linuxes but not XP (yes, I know, "So what's the problem? ;)

The scenario: XP is on /dev/hda1 (NTFS), my boot partition is /dev/hda5 and is set up to be used by RedHat and Gentoo (different kernels in different subdirectories).

What I did at first: while running grub, I confused (hd0) with (hd0,0):
> root (hd0,4)
> setup (hd0,0)
When this didn't work, I did what I actually meant to do (write to MBR):
> root (hd0,4)
> setup (hd0)
After this, grub starts fine when booting, all the Linuxes boot, but when I try to chainload Win XP, it keeps returning to grub (since I accidentally installed it on (hd0,0)).

Is there a way to clean up (hd0,0) without erasing partitions? I know that the Windows programs FDISK and FIXMBR can rewrite the MBR, but I really want to avoid screwing up my data.

Thanks in advance for any help.


PS: Here's the grub.conf, but I'm quite sure it's not the problem since it was working previously.

# grub.conf generated by anaconda
title Red Hat 9.0 (2.4.20-8)
root (hd0,4)
kernel /RedHat/vmlinuz-2.4.20-8 ro root=LABEL=/RH9.0 hdc=ide-scsi pci=biosirq
initrd /RedHat/initrd-2.4.20-8.img

title Gentoo
root (hd0,4)
kernel /Gentoo/bzImage-2.4.25 ro root=/dev/hda7 hdc=ide-scsi pci=biosirq

title Windows XP
rootnoverify (hd0,0)
chainloader +1

zorba4 04-27-2004 09:43 AM

Not sure, but that's what I would try :
1) Boot on the Win XP CD, it will perform a repair install, repairing the MBR and XP will boot.
2) Then boot on the Linux CD, it will repair the LILO config. I am using LILO (and not Grub) on Mandrake but your Linux should not be so different.

All times are GMT -5. The time now is 02:56 PM.