The question is mostly in the title already.
mdadm and /proc/mdstat insist on listing md members by their "traditional" /dev/sdX names. What I want is for them to use the newer udev device names (e.g. /dev/disk/by-path and by-id).
I already changed /etc/mdadm/mdadm.conf from
DEVICE partitions
to
DEVICE /dev/disk/by-path/*
But this seems to have no effect at all.
Also the arrays were cerated using the by-path device names.
This is on Ubuntu 11.10.
Current /proc/mdstat:
~# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md1 : active raid5 sdi[4] sde[2] sdh[1] sdd[0]
2929651200 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
[=>...................] recovery = 7.0% (69242720/976550400) finish=632.8min speed=23893K/sec
md0 : active raid5 sdb[0] sdg[4] sdc[2] sdf[1]
2197228032 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
[===>.................] recovery = 19.8% (145510552/732409344) finish=242.7min speed=40288K/sec
unused devices: <none>
ls -l /dev/disk/by-path:
~# ll /dev/disk/by-path/
total 0
lrwxrwxrwx 1 root root 9 2012-04-11 01:15 pci-0000:00:1f.1-scsi-0:0:0:0 -> ../../sr0
lrwxrwxrwx 1 root root 9 2012-04-11 01:15 pci-0000:00:1f.2-scsi-1:0:0:0 -> ../../sda
lrwxrwxrwx 1 root root 10 2012-04-11 01:15 pci-0000:00:1f.2-scsi-1:0:0:0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 2012-04-11 01:15 pci-0000:00:1f.2-scsi-1:0:0:0-part2 -> ../../sda2
lrwxrwxrwx 1 root root 9 2012-04-11 01:19 pci-0000:0e:00.0-scsi-0:0:0:0 -> ../../sdb
lrwxrwxrwx 1 root root 9 2012-04-11 01:19 pci-0000:0e:00.0-scsi-0:0:1:0 -> ../../sdc
lrwxrwxrwx 1 root root 9 2012-04-11 01:15 pci-0000:0e:00.0-scsi-0:0:2:0 -> ../../sdd
lrwxrwxrwx 1 root root 9 2012-04-11 01:26 pci-0000:0e:00.0-scsi-0:0:3:0 -> ../../sde
lrwxrwxrwx 1 root root 9 2012-04-11 01:15 pci-0000:0e:00.0-scsi-0:0:4:0 -> ../../sdf
lrwxrwxrwx 1 root root 9 2012-04-11 01:15 pci-0000:0e:00.0-scsi-0:0:5:0 -> ../../sdg
lrwxrwxrwx 1 root root 9 2012-04-11 01:26 pci-0000:0e:00.0-scsi-0:0:6:0 -> ../../sdh
lrwxrwxrwx 1 root root 9 2012-04-11 01:26 pci-0000:0e:00.0-scsi-0:0:7:0 -> ../../sdi
Not possible. Those symlinks (created by
udev
) are convenient for userspace, andmdadm
can use them when it's communicating to the kernel… which will look at the block to find the real device. There's no mechanism for informing the kernel of aliases or new names, and it's the kernel producing these messages, using its internal canonical names.There were several attempts to get
/sys/block/<disk>/alias_name
into the Linux kernel and update output to use the alias name, but the most recent attempt was rejected.