This probably seems like a simple question, but hear me out. Here's the scenario that caused me to ask this question, as this is not so much a "how to" question but a "why" question:
I was trying to kickstart a CentOS box. The box has 8 drives: 6 are 1TB to be used for data, and 2 are 200GB to be used for mirroring the OS and some other directories.The kickstart failed because of the bootloader portion of the config file which specified drive order of sda, sdb, etc. I decided to install from DVD (GUI, not text) and use the resulting Anaconda file to create a new kickstart file. The storage devices were listed in the order of sda,sdb,sdc, etc., but sda and sdc were the 200GB drives, not sda and sdb as I'd expected.
I set up software RAID 1 for sda1 and sdc1, joining them under md0. At the screen for installing the bootloader it asked it saw the mbr as being on sdd. I changed the drive order in the dialogue box there to use sda and sdc as the boot devices, and chose sda as the location to put the bootloader. Reboot, and no joy. Just a blinking cursor. I tried this several times, including on a different box (same hardware), and at times sda was automatically recognized as having the mbr, but it never booted.
I was advised eventually to go into the BIOS and change the boot order there. Indeed I saw that my two 200GB drives were listed as number 5 and 6 in boot order, which is why even though I was specifying sda it wasn't working. sda wasn't the first drive the BIOS was booting up. I now have a working system, but it seems I can't kickstart the remaining systems without first going into the BIOS on each one and manually changing this order.
What is it that determines drive boot order as per the BIOS? In old-school IDE desktops it's the order on the ribbon; what controls it with SAS? I had expected that the drive order/boot order would follow the numbering of the drive slots on the chassis (i.e. slot 0 would be sda, slot 1 would be sdb, and so on).
Then, once the boot process has booted drives in a specific order, how do the drives get labeled (the sd* portion)? I'm confused as to how my 2x200GB drives were numbers 5 and 6 respectively in the BIOS, but labeled as sda and sdc during the CentOS setup process.
Is the only way to work around an issue like this really to manually edit the BIOS on each machine?
Thanks in advance for your thoughts/explanations.