0

(none of the machines mentioned are in production)

Hello, I'm trying to install Centos 5.4, which wants to put the boot loader on either the boot sector of the boot drive (a local SATA mirror, recognized second as sdb) or the mba of a hba-attached SCSI array (recognized first as sda). There's a LILO install already on the mba of sdb, which keeps trying to boot first.

If I zero out the MBA of sdb, would the boot loader at sdb1 be found and booted? I was thinking of that as a plan B, as I was mostly thinking of coaxing CentOS to find the local mirror first and bring that up as sda, but I haven't found info on how to do this anywhere.

1 Answers1

1

First of all, you need to ensure that your BIOS tries to boot from the SATA mirror before the SCSI. To accomplish this, turn off your 'Install SCSI BIOS' option in your SCSI card config. Linux can't control which drive the system BIOS boots first. (It's not EFI)

Go ahead and let CentOS install the boot loader onto sdb, but before you reboot:

  • Edit /boot/grub/device.map so that the SATA mirror shows as hd0
  • Run the grub shell and enter the commands:
    • root (hd0,0) (assuming first partition is /boot)
    • setup (hd00)

You should then be good to go.

To make Linux detect SATA first after reboot, ensure the correct controller is loaded first in /etc/modules.conf and rebuild your initrd. Ensure your partitions in /etc/fstab are correct.

Alternatively, you can skip all this if you can do the install with the SCSI disks detached.

MikeyB
  • 39,291
  • 10
  • 105
  • 189
  • Thanks! I was able to get to a shell prompt and run the grub commands (didn't need to change anything in /boot/grub/device.map), and I was good to go –  Apr 09 '10 at 17:47