Felix Miata wrote:
Once upon a time, OS installed to sole HD as sda would stay sda even when PCI eSATA was both added and powered on at boot time. Not any more:
host gx27b (PCI SiI3512=esata) 13.1 3.12.5 esata=sdb, / on ICH5 sda20 13.2 3.12.1 esata=NA, / on ICH5 sda21 13.2 3.12.1 esata=sda, (/ on ICH5 sdb21 non-existent; dracut emergency shell)
host gx620 (PCI SiI3512=esata) 13.1 3.11.6 esata=sda, / on ICH7 sdb9
host gx745 (PCI SiI3114=esata) 13.1 3.11.6 esata=sda, / on ICH8 sdb9
It's really annoying for device names to vary according to which master boot menu selection one makes, or especially, whether an external device is powered up at boot time, and even more specially, when having an external device powered at boot time causes emergency shell instead of boot success.
In the case of emergency shell example listed above on gx27b 13.2, both root= on cmdline and / mounting in fstab are using LABEL syntax, meaning, device names should be irrelevant in any event, as they apparently are for 13.1 on the other two hosts.
LABEL's are only understood by linux -- so first you have to boot a linux to read the labels -- I found that out the "hard way" when I had to boot to 'S' and there were no labels... Not only no disk labels but the stuff I thought I'd put in the boot disks wasn't available because it was booting off a ram disk. I couldn't figure out a way to put my test code into the early boot sequence to see what was happening (was trying to setup *optional* console redirection to a serial port) -- so I reverted to boot from hard disk and haven't looked back. I've mostly stopped using labels because something has to already be up to populate /dev/disk/by-*/ (i.e. the kernel needs to be booted and udev has to already have been called in the "boot" phase (i.e. /etc/boot.d/(scripts))... Only after the boot phase has done its stuff are "higher level" things like labels available. -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org