快照卷是一种特定类型的卷,代表当快照创建时卷上的所有数据。当我们备份进行时,不用担心数据被更改,同时也不需要离线数据系统。
快照卷可以大或者小,但是必须足够容纳快照生命周期中所有有的针对原始卷的改变。
原始卷
root@king:/# lvdisplay /dev/my_volume_group/kinglv
--- Logical volume ---
LV Path /dev/my_volume_group/kinglv
LV Name kinglv
VG Name my_volume_group
LV UUID lAT5Te-obE1-Q3dY-pU4r-YYDt-rSRu-hgmKQP
LV Write Access read/write
LV Creation host, time king, 2014-07-27 14:43:41 +0800
LV snapshot status source of
dbbackup [active]
dbbackup2 [active]
LV Status available
# open 1
LV Size 100.00 MiB
Current LE 25
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:0
root@king:/# lvcreate -L150 -s -n dbbackup /dev/my_volume_group/kinglv
Rounding up size to full physical extent 152.00 MiB
Logical volume "dbbackup" created
#创建一个小于原始的快照卷
root@king:/# lvcreate -L40 -s -n dbbackup2 /dev/my_volume_group/kinglv
Logical volume "dbbackup2" created
#创建的两个快照卷
--- Logical volume ---
LV Path /dev/my_volume_group/dbbackup
LV Name dbbackup
VG Name my_volume_group
LV UUID oj21n8-0h3J-jhI6-e3xm-2zqK-xgTU-1bAf67
LV Write Access read/write
LV Creation host, time king, 2014-07-27 22:52:35 +0800
LV snapshot status active destination for kinglv
LV Status available
# open 0
LV Size 100.00 MiB
Current LE 25
COW-table size 152.00 MiB
COW-table LE 38
Allocated to snapshot 0.01%
Snapshot chunk size 4.00 KiB
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1
--- Logical volume ---
LV Path /dev/my_volume_group/dbbackup2
LV Name dbbackup2
VG Name my_volume_group
LV UUID P1IwY2-Rhyi-CwPU-Hmpw-Qk8c-rKXO-o49wgu
LV Write Access read/write
LV Creation host, time king, 2014-07-27 22:55:04 +0800
LV snapshot status active destination for kinglv
LV Status available
# open 0
LV Size 100.00 MiB
Current LE 25
COW-table size 40.00 MiB
COW-table LE 10
Allocated to snapshot 0.03%
Snapshot chunk size 4.00 KiB
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:4
#卷大小等同于原始卷,但是COW表大小是指定的,当快照满是将被丢弃。
#挂载快照卷
root@king:/# mount /dev/my_volume_group/dbbackup /dbbackup/
root@king:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 5.8G 963M 4.6G 18% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 492M 4.0K 492M 1% /dev
tmpfs 101M 428K 100M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 501M 0 501M 0% /run/shm
none 100M 0 100M 0% /run/user
/dev/mapper/my_volume_group-kinglv 93M 1.6M 85M 2% /mnt
/dev/mapper/my_volume_group-dbbackup 93M 1.6M 85M 2% /dbbackup
# 移除快照,先卸载文件系统。
root@king:/# umount /dev/my_volume_group/dbbackup
root@king:/# lvremove /dev/my_volume_group/dbbackup
Do you really want to remove and DISCARD active logical volume dbbackup? [y/n]: y
Logical volume "dbbackup" successfully removed