Issues with RAID Volumes with SLES10 on x4100
I upgraded an x4100 from SLES9 to SLES10 with 4 SAS drives which were configured as 2 RAID-1 volumes in hardware and am having problems with the names that these devices get.
The root file-system was installed on the 1st volume, /dev/sda, and the other volume, /dev/sdb, was mounted at /local.
Even at installation, the 1st volume was named /dev/sdb and the 2nd volume, /dev/sda. I had to pull out the 2nd volume so that the 1st volume would be correctly named and I could proceed the update.
After the update was successful and the system booted with no problems, I tried to insert the 2nd volume set again, but the MPT driver would insist on swapping the device names, leading to a hard freeze after complaining about failure to mount the root file-system.
Is there any way to fix this issue? I tried installing the driver for SLES10 from LSI Logic's website, but the problem persists.
Thank you.
[936 byte] By [
Augustine] at [2007-11-26 11:53:21]

# 1
I'm assuming SLES10 is a 2.6 linux kernel, which now includes the new hardware device naming scheme based upon the UUID (unique unit ID) of the hardware. The scheme is called "udev", and it runs at system startup.
When the system starts, 'udev' looks for the uuid's of resident storage hardware, and assigns and creates a /dev entry for each unique UUID. With this scheme, you could then move a disk from slot 0 to slot3, for example, and it would retain its /dev entry. So, for example, if the disk in slot 0 was named /dev/sda, and it was moved to slot3, it would still be mounted as /dev/sda.
You might want to 'clear' your device names (there is a procedure to do so... check the SUSE docs), then restart the system, verify your raid configuration, then allow the reboot to assign new /dev entries.
# 2
> I'm assuming SLES10 is a 2.6 linux kernel, which now
> includes the new hardware device naming scheme based
> upon the UUID (unique unit ID) of the hardware. The
> scheme is called "udev", and it runs at system
> startup.
I tried using the volume's UUID in /etc/fstab, but it still fails...
> You might want to 'clear' your device names (there is
> a procedure to do so... check the SUSE docs), then
> restart the system, verify your raid configuration,
> then allow the reboot to assign new /dev entries.
I couldn't find anything about clearing device names. Any tips, please?
TIA
Message was edited by:
Augustine
# 3
The /sbin/udev command has a parameter for removing entries. See the man page for the syntax. I haven't tried it myself, and most of the docs talk about adding entries, but it seems that the command "/sbin/udev remove /dev/sda" should remove the entry.
Once the entry is removed, you can do a '/sbin/udev start' to rescan the bus for new device entries.
Sorry I couldn't be of more help, but my time to research this is limited.
# 4
I really appreciate your help.
In the end, I couldn't find /sbin/udev or anywhere else. So I went in another direction: specifying the volumes not by enumerated name but by other means. I tried UUID, ID and labels.
* UUID works fine at the boot prompt and in /etc/fstab, but the swap partition doesn't have an UUID, so it fell short of working.
* ID works great both at the boot prompt and at /etc/fstab for all partitions.
* Labels don't work at the boot prompt, only at /etc/fstab, though all kernel documents out there state that labels should work at the boot prompt. Besides, I had to add labels to all the volumes, and I'll add it as a best practice.
So, I changed the boot prompt to use ID and /etc/fstab, labels and the system now works fine again.
Thanks a bunch.