[dm-devel] What is the deal with the partition separator?
Curtis Gedak
gedakc at gmail.com
Wed Feb 16 17:19:59 UTC 2011
On 11-02-16 12:38 AM, Hannes Reinecke wrote:
> On 02/16/2011 04:21 AM, Phillip Susi wrote:
>> It used to be that partitions device names just had a digit added on to
>> the base disk device name. It seems that this became problematic at
>> some point with device mapper and oddly named disks, and there have been
>> several responses to it:
>>
>> 1) dmraid and (lib)parted now always add a 'p' between the base name
>> and the partition number
Only newer versions of (lib)parted which link with the dmraid library
work this way with dmraid devices. In this situation it is the dmraid
library that is coming up with the device names. For all other devices,
(lib)parted uses the "linux scheme since the dawn of time" mentioned
below. Older versions of (lib)parted follow the "linux scheme since the
dawn of time".
>> 2) kpartx from multipath-tools adds the 'p' only if the base name ends
>> in a digit
kpartx follows the "linux scheme since the dawn of time" mentioned below.
>> 4) gparted now explicitly tells dmraid to not use any character so that
>> it behaves like older versions and is therefore compatible with the
>> kpartx method that gparted has adopted, at least when the base name does
>> not end with a digit.
>>
GParted uses (lib)parted to come up with device names, except in the
case of dmraid devices. Because dmraid does not follow the "linux
scheme since the dawn of time", gparted calls dmraid directly to create
names following the old dmraid standard (only append partition number to
device name). If kpartx is available, then GParted will call kpartx to
ensure that dmraid device names follow the "linux scheme since the dawn
of time". This behaviour enables GParted to work with all versions of
dmraid, and maintain compatibility with (lib)parted versions 1.7.1 and
higher.
>> Each of these components needs to agree on what the correct name is or
>> chaos ensues. I would like to discuss the merits of each and try to
>> decide on a standard.
>>
>> Having thought about it for a moment, it seems to me that deciding on
>> always adding the 'p' is the way to go, since the 'art' just makes
>> things longer for no good reason, and if you only sometimes add the 'p'
>> then you can't tell if a device name that ends in a digit that does not
>> follow a 'p' is a whole disk, or a partition.
>>
> No.
>
> The linux scheme since the dawn of time is to
> a) Add the partition number to the device node name
> b) If last letter of the device node name is a number, insert a 'p'
> between device node name and partition number
>
> with the advent of persistent device names (via udev) the partition
> separator (for persistent links only!) is '-part'.
>
> So you have
>
> /dev/sda
> /dev/sda1
> /dev/disk/by-id/scsi-0WhatAStupidName
> /dev/disk/by-id/scsi-0WhatAStupidName-part1
>
> persistent device names are longish anyway, so we can as well use
> something readable for partitions.
>
>
My thoughts are that if possible, tools should try to create partition
names using the "linux scheme since the dawn of time", unless there are
good reasons to not do this.
Regards,
Curtis Gedak
(Maintainer of GParted)
More information about the pkg-lvm-maintainers
mailing list