Recovered from the older tannerjc.net wiki snapshot dated January 23, 2016.

Striping

  • pvcreate /dev/hdb
  • pvcreate /dev/hdc
  • pvcreate /dev/hdd
  • vgcreate VG-STRIPE /dev/hdb /dev/hdc /dev/hdd
  • lvcreate -i3 -I4 -L100M -n LV-STRIPE VG-STRIPE
[root@localhost ~]# lvs -o +devices
  LV        VG        Attr   LSize   Origin Snap%  Move Log Copy%  Convert Devices
  LV-STRIPE VG-STRIPE -wi-a- 108.00M                                       /dev/hdb(0),/dev/hdc(0),/dev/hdd(0)
  rootvol   system    -wi-ao   2.19G                                       /dev/hda2(0)
  swap      system    -wi-ao 288.00M                                       /dev/hda2(70)
[root@localhost ~]# dmsetup table
VG--STRIPE-LV--STRIPE: 0 221184 striped 3 8 3:64 384 22:0 384 22:64 384
system-swap: 0 589824 linear 3:2 4587904
system-rootvol: 0 4587520 linear 3:2 384

Snapshots

[root@localhost ~]# mkdir /mnt/version1
[root@localhost ~]# mount /dev/mapper/VG--STRIPE-LV--STRIPE /mnt/version1
[root@localhost ~]# echo version 1  /mnt/version1/file
[root@localhost ~]# lvcreate -L200M -s -n stripesnap /dev/VG-STRIPE/LV-STRIPE
  Logical volume stripesnap created
[root@localhost ~]# dmsetup ls
VG--STRIPE-LV--STRIPE	(253, 2)
VG--STRIPE-stripesnap	(253, 3)
system-swap	(253, 1)
VG--STRIPE-stripesnap-cow	(253, 5)
system-rootvol	(253, 0)
VG--STRIPE-LV--STRIPE-real	(253, 4)

[root@localhost ~]# dmsetup table
VG--STRIPE-LV--STRIPE: 0 221184 snapshot-origin 253:4
VG--STRIPE-stripesnap: 0 221184 snapshot 253:4 253:5 P 8
system-swap: 0 589824 linear 3:2 4587904
VG--STRIPE-stripesnap-cow: 0 409600 linear 3:64 74112
system-rootvol: 0 4587520 linear 3:2 384
VG--STRIPE-LV--STRIPE-real: 0 221184 striped 3 8 3:64 384 22:0 384 22:64 384
[root@localhost ~]# echo modified  /mnt/version1/file
[root@localhost ~]# mkdir /mnt/version2
[root@localhost ~]# mount /dev/VG-STRIPE/
LV-STRIPE   stripesnap
[root@localhost ~]# mount /dev/VG-STRIPE/stripesnap /mnt/version2/
[root@localhost ~]# cat /mnt/version2/file
version 1
[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/system-rootvol
                      2.2G 1021M  1.1G  50% /
/dev/hda1             494M   17M  452M   4% /boot
tmpfs                 250M     0  250M   0% /dev/shm
/dev/mapper/VG--STRIPE-LV--STRIPE
                      105M  5.6M   94M   6% /mnt/version1
/dev/mapper/VG--STRIPE-stripesnap
                      105M  5.6M   94M   6% /mnt/version2
[root@localhost ~]# lvs -v
    Finding all logical volumes
  LV         VG        #Seg Attr   LSize   Maj Min KMaj KMin Origin    Snap%  Move Copy%  Log Convert LV UUID
  LV-STRIPE  VG-STRIPE    1 owi-ao 108.00M  -1  -1 253  2                                             fsWiXK-zovT-3BVr-JhnU-HbIj-s6AQ-qv8Ydv
  stripesnap VG-STRIPE    1 swi-ao 200.00M  -1  -1 253  3    LV-STRIPE   0.02                         Q13AZS-oqIF-WBes-dFet-1f9C-qwl9-8rnwty
  rootvol    system       1 -wi-ao   2.19G  -1  -1 253  0                                             zqD93Y-hdtI-V83E-hH11-tl97-lCAv-4ney1N
  swap       system       1 -wi-ao 288.00M  -1  -1 253  1                                             hXqAiA-wipD-CYpo-3Ohb-1c6W-VaKU-qQf1Hl

Removal

[root@farina ~]# lvs | grep server102
  server102      vg_farina owi-a-  20.00g
  server102-snap vg_farina swi-a-   5.00g server102   5.36

disable the source LV before removing the Snapshot. Otherwise lvremove will complain that the LV is open.

[root@farina ~]# lvchange -an vg_farina/server102
[root@farina ~]# lvremove vg_farina/server102-snap
  Logical volume server102-snap successfully removed
You have new mail in /var/spool/mail/root
[root@farina ~]#