First, create a test LV to serve as the "original" LV
# lvcreate -L1G -n original systemvg
Logical volume "original" created
# ls -la /dev/systemvg/original
lrwxrwxrwx 1 root root 29 2007-05-27 09:59 /dev/systemvg/original ->
/dev/mapper/systemvg-original
# ls -la /dev/mapper/systemvg-original
lrwxrwxrwx 1 root root 8 2007-05-27 09:59 /dev/mapper/systemvg-original ->
../dm-21
# mkfs.ext3 /dev/systemvg/original
# mount /dev/systemvg/original /mnt/test
# echo "original" > /mnt/test/what-am-i.txt
# umount /mnt/test
Now, create a snapshot named "duplicate" from the "original" LV
# lvcreate -s -L1G -n duplicate /dev/systemvg/original
Logical volume "duplicate" created
# ls -la /dev/systemvg/duplicate
lrwxrwxrwx 1 root root 30 2007-05-27 10:01 /dev/systemvg/duplicate ->
/dev/mapper/systemvg-duplicate
# ls -la /dev/mapper | grep duplicate
lrwxrwxrwx 1 root root 8 2007-05-27 10:01 systemvg-duplicate-cow ->
../dm-24
# ls -la /dev/mapper | grep original
lrwxrwxrwx 1 root root 8 2007-05-27 10:01 systemvg-original-real ->
../dm-23
At this point, things are very strange: neither the source nor the target
symlinks exist in /dev/mapper.
Checking on the newly create dm-* devices, we find:
# vol_id /dev/dm-21 | grep UUID=
ID_FS_UUID=341cab43-9dc2-4c45-97fd-5b9df09dd748
# vol_id /dev/dm-22 | grep UUID=
ID_FS_UUID=341cab43-9dc2-4c45-97fd-5b9df09dd748
# vol_id /dev/dm-23 | grep UUID=
ID_FS_UUID=341cab43-9dc2-4c45-97fd-5b9df09dd748
# vol_id /dev/dm-24
/dev/dm-24: unknown volume type
So, as I understand it, the mapping is:
dm-21 -> systemvg-original
dm-22 -> ??? (should be "systemvg-duplicate")
dm-23 -> systemvg-original-real (an LVM by-product)
dm-24 -> systemvg-duplicate-cow (an LVM by-product)
The LVM by-product devices are not for general consumption, which leaves
dm-22 as the likely candidate for being the snapshot. (Which is also
supported by the udevmonitor output log -- attached.)
# mount /dev/dm-23 /mnt/test
mount: /dev/dm-23 already mounted or /mnt/test busy
# mount /dev/dm-24 /mnt/test
mount: /dev/dm-24 already mounted or /mnt/test busy
Just to be sure, change the "what-am-i.txt" file:
# mount /dev/dm-22 /mnt/test
# cat /mnt/test/what-am-i.txt
original
# echo "duplicate?" > /mnt/test/what-am-i.txt
# umount /mnt/test
Drop the "duplicate" snapshot:
# lvremove /dev/systemvg/duplicate
Do you really want to remove active logical volume "duplicate"? [y/n]: y
Logical volume "duplicate" successfully removed
Strangely, the source symlinks have returned:
# ls -la /dev/mapper | grep original
lrwxrwxrwx 1 root root 8 2007-05-27 10:07 systemvg-original -> ../dm-21
We verify that the original LV is unchanged:
# mount /dev/systemvg/original /mnt/test
# cat /mnt/test/what-am-i.txt
original
# umount /mnt/test
So, after "lvcreate -s" finishes, the problems are:
1) the source LV symlink has vanished
("systemvg-original" should still exist)
2) the target LV symlink isn't there
("systemvg-duplicate" should exist)
** Attachment added: "udevmonitor log during "lvcreate -s""
http://librarian.launchpad.net/7850658/snapshot.log
--
LVM snapshotting missing symlinks
https://bugs.launchpad.net/bugs/117225
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs