[dm-devel] Determine partition prefix used for mpath devices

Hannes Reinecke hare at suse.de
Wed Mar 17 16:08:53 UTC 2010


David Huffman wrote:
> In a script, I need to somehow determine what prefix is being used for
> partitions as set by UDEV. It seems that the naming convention is in
> flux and could change frequently. When using user_friendly_names the
> prefix is set using kpartx within udev rules. My problem is I need to
> know what the prefix is so my scripts know what device naming convention
> to look for.
> 
> Here are the different iterations of naming schemes:
> 
> mpath0p1
> mpath0-part1
> mpathap1
> mpatha-part1
> 
> Is there a way other than grepping through the udev rules to determine
> what the prefix is? The partitions may not exist so I cannot just look
> to see what they are. I need to know BEFORE I create partitions. I know
> this is a strange request, but I am working with a lot of code that was
> designed before multipath was available and using the sys naming is not
> an option (i.e. /disk/by-id/wwid).
> 
I wouldn't rely on the device-mapper table names, as they could be pretty
much everything.

To handle this situation I've patches up multipath and kpartx to provide
UUID prefixes, which normally can't be influenced from userspace.
Multipath devices carry the prefix 'mpath-', kpartx generated devices
carry the prefix 'part<num>-'.
So by checking the prefix you pretty much know which program generated
this particular device.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare at suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)




More information about the dm-devel mailing list