Local disk device renamed causing failed boot after attaching SAN

  • 3009586
  • 05-Jun-2006
  • 30-Apr-2012

Environment

Novell SUSE Linux Enterprise Server 9 (SLES9)
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.

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:
  1. Boot Installed System
  2. Edit /etc/sysconfig/kernel
    1. Change the INITRD_MODULES variable
      1. For example, change INITRD_MODULES="megaraid_mbox qla2300 reiserfs"
    2. Move the Fibre Card driver to the end of the list
      1. Change to INITRD_MODULES="megaraid_mbox reiserfs qla2300"
    3. Save and exit
  3. Run mkinitrd to make a new ramdisk
  4. Reboot the server in the normal way
If this process fails, you will need to use the persistent devices created with udev.