Comment 4 for bug 21186

Revision history for this message
Joerg (joerg-archive) wrote :

Please upgrade this bug. It is rather serious. I am unsure if it's really a
bug in GRUB or whether GRUB is a victim of the BIOS. I will do more testing and
will report back more findings, but preliminary stuff follows:

HW Setup.
hda 400GB PATA
hdb 400GB PATA
hdc DVDRW
sda 80GB SATA
sdb 500GB SATA
sdc 400GB SATA
sdd 80GB SATA

I'm booting off of /dev/md0, a RAID1 Mirror of /dev/sda1 and /dev/sdb1, 100MB /boot

During installation, Grub was configured with hd2,0 as the boot device. I'm not
sure whether any of you received the "Error 15" during boot, maybe that's just a
RAID boot problem.

What I believe is happenening is a combination of BIOS renumbering and GRUB
insanity.

SATA appears to behave like SCSI. If you have 2 hard drives, and plug them into
port 1 and port 3, they will show up in linux as /dev/sda and /dev/sdb. If you
now go out and buy another drive and plug it into port 2. The new drive becomes
/dev/sdb and the old /dev/sdb becomes /dev/sdc.

I believe whatever drive, whether hda, sdb, or sdd, the BIOS decides to use as
the boot device, GRUB will see as hd0. After booting, running grub and doing
"find /vmlinuz" will return the hd2,0 again, even though during boot it is hd0,0.

In my setup. Grub insists on using hd2,0 as the boot device. Since I do RAID1,
I created another GRUB entry for hd5,0 so that in case something goes wrong with
/dev/sda, I have an entry that's bootable in menu.lst.

********
I may file this as a seperate bug... but after getting it to boot happily, I
decided to upgrade kernels. Well, in the infinite wisdom of the kernel package,
it wiped out my hd0,0 change as well as the hd5,0 entry I added by hand.
Wankers. :)
********