Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We have two similar SLES10SP2 servers both using multipath on the same devices from the same storage array.

On one server, the /dev/disk/by-id/scsi-* devices properly point at the multipath devices:

server1:/dev/disk/by-id # ls -l scsi-* | awk '{print $9,$10,$11;}'
scsi-3600a0b80005047d80000050c4933f22c -> ../../dm-1
scsi-3600a0b80005047d80000050c4933f22c-part1 -> ../../dm-2
scsi-3600a0b80005047d80000050c4933f22c-part2 -> ../../dm-3
scsi-3600a0b80005047d80000b0a14dbb20e4 -> ../../dm-0

On the other, the /dev/disk/by-id/scsi-* disk devices are pointing at one of the paths instead of the multipath dm device:

server2:/dev/disk/by-id # ls -l scsi-* | awk '{print $9,$10,$11;}'
scsi-3600a0b80005047d80000a3464a07f6ee -> ../../dm-1
scsi-3600a0b8000505008000004f84933e183 -> ../../sda
scsi-3600a0b8000505008000004f84933e183-part1 -> ../../dm-4
scsi-3600a0b8000505008000004f84933e183-part2 -> ../../dm-5
scsi-3600a0b80005050080000057749352a81 -> ../../sdd
scsi-3600a0b80005050080000057749352a81-part1 -> ../../dm-6
scsi-3600a0b80005050080000a7cd4dbb2498 -> ../../sdg

This causes a problem as some of the disks are configured to use the entire disk as a pv.

What do we need to change on server2 to have the system set up all of the scsi-* links to point to the multipath devices instead of a single path?

share|improve this question

From the documentation:

In SUSE Linux Enterprise Server 10, the kpartx software is used in the /etc/init.d/boot.multipath to add symlinks to the /dev/dm-* line in the multipath.conf configuration file for any newly created partitions without requiring a reboot. This triggers udevd to fill in the /dev/disk/by-* symlinks.

So, I would

  1. Check whether boot.multipath was run on the second server
  2. Check that udev is configured identically on both servers
  3. Check that udevd is running on the second server

If all of that is true, you could try running kpartx -a on the multipath devices to see if the entries in /dev/disk/by-id/ are updated.

After you straighten this out, you still need to edit lvm.conf. Again, from the documentation:

By default, LVM2 does not recognize multipathed devices. To make LVM2 recognize the multipathed devices as possible physical volumes, you must modify /etc/lvm/lvm.conf. It is important to modify it so that it does not scan and use the physical paths, but only accesses the multipath I/O storage through the multipath I/O layer. If you are using user-friendly names, make sure to specify the path so that it scans only the device mapper names for the device (/dev/disk/by-id/dm-uuid-.-mpath-.) after multipathing is configured.

share|improve this answer
All of these good ideas - however not applicable in my case. Already been done. Awarding you the bounty as it does make a good reference for people to check. – MikeyB May 12 '11 at 18:32
up vote 1 down vote accepted

As it turns out, this is a known issue in SLES10SP2.

It's fixed in SLES10SP3 with package udev-085-

share|improve this answer

I would setup a filter rule in lvm.conf

filter =[ "a|/dev/dm|", "a|^/dev/sda2$|", "r|/dev/sd|"]

In this example, lvm uses all /dev/md* /dev/sda2 and removes all other /dev/sd* devices.

share|improve this answer
Presumably you mean /dev/dm... yes it's a workaround for this specific case, but doesn't actually fix the problem. – MikeyB May 7 '11 at 17:47

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.