Dual-boot GRUB problems
I'm in the process of installing the Fedora Core 5 on my computer. I have
two harddrives, and I'm dual-booting Windows and Linux. Window XP is
installed on the first one (/dev/hda) and I just installed Fedora Core 5
on the second one (/dev/hdb). (I had Red Hat 9 running there before).
When I start up my computer, it hangs with the letters "LI" on the screen.
I guess it is trying to run LILO, but something is wrong.
From googling this problem, I find that Fedora Core 5 uses "GRUB" instead
of "LILO". By default, during the installation, it created a /boot partition on /dev/hdb1. So I tried to install GRUB by running the below command using
the Linux Rescue disk
> /sbin/grub-install /dev/hdb1
But then I get the error:
/dev/hdb1 does not have any corresponding BIOS drive
Do any of you have any ideas what I am doing wrong? I would appreciate any
advice you could give me.
Fixing this problem is pretty straightforward, provided you can handle a few command line options. What is happening here is that FC5 has probably installed grub to the boot sector of hdb, and hda (where WindowsXP resides) still has LILO installed - lilo falls over easy if you change things.
What you need to do is install Grub on the boot sector of hda. Here's how, as step-by-step as I can make it. Dont be scared of this, as I said, it's pretty straightforward; it only looks long because I've given a fair bit of detail.
1. boot up off the rescue disk, or use disk 1 (or the DVD) of the FC5 installer and boot with the 'linux rescue' command. When it starts it'll ask to scan for your previous system, you can do this or mount it yourself if you know which partitions it uses.
2. Mount your system, if it's not already been detected and mounted. There'll be a directory in /mnt that is named sysrescue or system or something like that - the name isn't important, it's just a mount point. I dont know what partitions you've got assingned on hdb, but you can list them here with 'fdisk -l /dev/hdb'.
To mount your old system, you need (as a minimum) the / partition mounted and /boot, if you have a seperate boot partition (this is a good idea - it speeds up booting). Lets say your /boot partition is /dev/hdb1 and your / is /dev/hdb2, and the mount point is /mnt/sysrescue (you can change the names here to suit your system). Use this, the order is important, mount root first, then boot second (if you have no separate boot partition, then you only need to mount root):
3. Go live with your installation using chroot, dont forget to use your mount point's real directory name if it's different:
mount /dev/hdb2 /mnt/sysrescue
mount /dev/hdb1 /mnt/sysrescue/boot
4. Check that there is a bootup option for windows in the grub config, there should be, FC5 should have detected it and given you an option, even if it's only titled 'other'.
Edit /boot/grub/grub.conf, and make sure there is an entry that looks like this at the end of the file. If there isn't one, then add this:
5. Install Grub using the command line tool:
title Windows XP
6. Reboot and you should have options to boot to both systems; test them both out, one at a time.