Environment
Novell SUSE Linux Enterprise Server 9 (SLES9)
Novell Open Enterprise Server (Linux based)
Storage Area Network (SAN)
Novell Open Enterprise Server (Linux based)
Storage Area Network (SAN)
Situation
After installing SLES9, the server is attached to a SAN. When the
server is rebooted, the boot process fails and a kernel panic can
result.
For example, the root partition is installed on /dev/sda. After the install and the SAN is attached with only one LUN defined, we would expect the LUN to be /dev/sdb. However, the LUN is detected first making it /dev/sda and the local root device /dev/sdb. Since the /boot/grub/menu.lst and /etc/fstab both refer to /dev/sda as the root device, the boot process fails.
For example, the root partition is installed on /dev/sda. After the install and the SAN is attached with only one LUN defined, we would expect the LUN to be /dev/sdb. However, the LUN is detected first making it /dev/sda and the local root device /dev/sdb. Since the /boot/grub/menu.lst and /etc/fstab both refer to /dev/sda as the root device, the boot process fails.
Resolution
Make the kernel detect the local device first followed by the SAN
devices. Changing the driver load order is usually the easiest way
to accomplish this task. Assuming the server is in a down state, do
the following to recover:
- Boot Installed System
- Edit /etc/sysconfig/kernel
- Change the INITRD_MODULES variable
- For example, change INITRD_MODULES="megaraid_mbox
qla2300 reiserfs"
- For example, change INITRD_MODULES="megaraid_mbox
qla2300 reiserfs"
- Move the Fibre Card driver to the end of the list
- Change to INITRD_MODULES="megaraid_mbox reiserfs qla2300"
- Save and exit
- Run mkinitrd to make a new ramdisk
- Reboot the server in the normal way