cow技术 copy on write 实现快照 [root@xiaochen ~]# lvscan ACTIVE '/dev/vg1/lv1' [12.00 GiB] inherit [root@xiaochen ~]# lvs LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert lv1 vg1 -wi-ao--- 12.00g [root@xiaochen ~]# lvcreate -s -L 100M -n lv01-snap /dev/vg01/lv01 //-s是快照 注:100M:快照卷所使用的空间是和原卷是同一卷组的空间,原卷没有空间的话做不了快照卷 [root@xiaochen ~]# lvscan ACTIVE Original '/dev/vg1/lv1' [12.00 GiB] inherit ACTIVE Snapshot '/dev/vg1/lv1-snap' [104.00 MiB] inherit [root@xiaochen ~]# mkdir /mnt/lv01-snap [root@xiaochen ~]# mount /dev/vg01/lv01-snap /mnt/lv01-snap [root@xiaochen ~]# df -ThP //T类型,P在一行显示 文件系统 类型 容量 已用 可用 已用%% 挂载点 /dev/mapper/vg1-lv1 ext4 12G 954M 11G 9% /mnt/lv01 /dev/mapper/vg1-lv1--snap ext4 12G 954M 11G 9% /mnt/lv01-snap [root@xiaochen ~]# ls /mnt/lv01 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 lost+found [root@xiaochen ~]# [root@xiaochen ~]# ls /mnt/lv01-snap/ 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 lost+found 快照原理: [root@xiaochen ~]# lvscan ACTIVE Original '/dev/vg1/lv1' [12.00 GiB] inherit ACTIVE Snapshot '/dev/vg1/lv1-snap' [104.00 MiB] inherit [root@xiaochen ~]# ll /dev/mapper/vg1-lv1* lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1 -> ../dm-2 lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1-real -> ../dm-5 lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1--snap -> ../dm-4 lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1--snap-cow -> ../dm-6 [root@xiaochen ~]# dmsetup ls --tree vg01-lv01 (253:2) └─vg1-lv01-real (253:5) ├─ (252:48) └─ (252:32) vg01-lv01--snap (253:4) ├─vg01-lv01--snap-cow (253:6) │ └─ (252:48) └─vg01-lv01-real (253:5) ├─ (252:48) └─ (252:32) 注意事项: 1. 快照卷和原卷使用同一VG空间 2. 快照卷大小问题 (快照卷空间使用完将自动失效) a. 根据数据变化速率 b. 设置初始大小,自动增长 [root@xiaochen ~]# vim /etc/lvm/lvm.conf snapshot_autoextend_threshold = 70 //快照自动增长的阈值 snapshot_autoextend_percent = 20 //达到之后自动增长原来的百分之20 [root@xiaochen ~]# service lvm2-monitor start [root@xiaochen ~]# chkconfig lvm2-monitor on 删除LV,VG: 1. 停止应用程序对该相应文件系统的访问 2. 卸载文件系统,包括/etc/fstab 3. lvremove 4. vgremove 5. pvremove 处于不激活的状态能直接删掉,处于激活的状态会询问你是否确实删除 [root@xiaochen ~]# umount /dev/vg01/lv01 [root@xiaochen ~]# lvremove /dev/vg01/lv01 [root@xiaochen ~]# lvremove -f /dev/vg01/lv01 [root@xiaochen ~]# vgremove vg01 [root@xiaochen ~]# pvremove /dev/sdb{1,2,3,5}