[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

LVM devices and symlinks



Hi,

I'm having an issue (not quite a problem) creating LVM logical
volumes.  It seems that the way device files and symlinks are created
has changed between Squeeze and Wheezy (or I have some bad
configuration).

  Old (working) Behavior
  ----------------------
Performing an `lvcreate -L10G -nLVNAME VGNAME` would create:

1. New device file /dev/dm-N
2. Symlink /dev/mapper/VGNAME-LVNAME -> /dev/dm-N
3. Symlink /dev/VGNAME/LVNAME -> /dev/dm-N

And everything was great.

  New (broken) Behavior
  --------------------
Performing an `lvcreate -L10G -nLVNAME VGNAME` creates:

1. New device file /dev/mapper/VGNAME-LVNAME
(and apparently nothing else)

Then, lvcreate tries to open /dev/VGNAME-LVNAME, which fails because
of no symlink with:
    /dev/VGNAME/LVNAME: not found: device not cleared
    Aborting. Failed to wipe start of new LV.

  Workarounds
  -----------
Here are a few workarounds I've figured out:

1. Give lvcreate the '-Z n' flag.  This does create a usable logical
   volume, but won't work with snapshots.
2. Manually create a symlink 
   '/dev/VGNAME/LVNAME -> /dev/mapper/VGNAME-LVNAME'
   before running lvcreate 
3. Give lvcreate the '--noudevsync' option.  In this case, lvcreate
   makes a symlink for
   '/dev/VGNAME/LVNAME -> /dev/mapper/VGNAME-LVNAME'
   on its own (apparently).

Also, on a reboot of the machine, the device files end up in the
original configuration, with both /dev/mapper/VGNAME-LVNAME and
/dev/VGNAME/LVNAME as symlinks pointing to /dev/dm-N.

While those workarounds are enough to get by, it would be nice to
understand the underlying issue here.  Can anyone shed some light on
this?

Thank you,
-ntd



Reply to: