linux lvm 系统快照,Linux学习—LVM快照功能

LVM快照功能--我们知道LVM能够通过增减PE的数量来弹性调整文件系统的大小,除此之外,LVM还有另外一个重要的功能,LV磁盘快照,就是通过快照的功能将此时的文件系统信息记录下来,以后对该文件系统操作的时候,当该文件系统的数据变化的时候,我们可以利用快照将文件系统恢复至当时的状态。

目录LV的快照原理

创建快照

利用快照恢复系统

一、LV的快照(snapshot)原理

2b417babd5799b2a856607c72145ffe3.png

左边的图表示,LVM会在VG上预留一定的区域作为快照区,原本lv中存放着数据,同时快照区存放着lv中元数据,因此快照区大小不需要和原始lv一样的大小。在刚创建snapshot的时候,快照区中并不会真实地拷贝原始lv中的数据,只是记录了整个原始lv中的元数据,所以这个时间点快照区和原始lv共享文件系统的数据,即两边的数据一样。

右边的图表示,当原始lv中的数据发生改变的时候,原始lv中的发生变化的PE的数据更新之前,会将数据真实地备份至快照区的一个PE中,如图中,A->new A之前,先将A备份至快照区的一个PE,然后lv中A才更新为new A,这样快照区会保存lv中PE发生变化之前的数据,这时候我们再访问快照区的内容仍然为创建snapshot那个时间点的时候lv中的数据,因此我们可以利用快照区进行备份和恢复。

需要注意的是,由于快照区也有容量的限制,所以呢,当原始lv中发生变化的PE的数量超过快照区的PE的数量的时候,该快照就会立即失效。

我们在创建快照区的时候,要考虑将来lv数据的变化量,以此来指定快照区的大小,一种解决办法是刚创建完快照之后,立即把快照区中的内容进行备份,这样就不用时刻考虑快照区会失效了,因为我们已经把他的数据备份走了。还有一种简单粗暴的方法就是创建一个和原始lv一样大小的快照区,这样就不用担心数据变化量的因素了。

二、创建快照

操作流程:

原始lv为/dev/vg1/lv1,创建lv的快照为lv1snap,容量为100个PE

①查看vg1的信息中的可用PE的数量

58743c60ed9545b9cdeeabee08b12cee.png

②创建lv快照

[root@CentOS-6 ~]# lvcreate -s -l 100 -n lv1snap /dev/vg1/lv1

Logical volume "lv1snap" created.

-s    关键选项,创建快照snap的意思

-l    后面跟快照包含多少个PE的数量

-n    后面跟创建的快照的名字

-p r  由于快照大多为只读,改选项为为修改权限位只读(r)

命令最后记得加创建的快照的原始lv名称

③ 查看新创建的快照区

14cdc82d170182798f4980f83a5bf7e1.png

③挂载原始lv和lv的快照[root@CentOS-6 ~]# mount /dev/vg1/lv1 /mnt/lvm/

[root@CentOS-6 ~]# mount /dev/vg1/lv1snap /mnt/snap/

7d31b8a38516c261b12c346079a5774a.png之前我在/mnt/lvm中导入了一些数据,我们发现原始lv和lv快照挂载之后容量信息一模一样

三、利用快照恢复系统

当利用快照恢复系统的时候,不能使得要复原的数据量大于快照区所能承受的最大范围

①修改原始lvm中的内容

[root@CentOS-6 ~]# dd if=/dev/zero of=/mnt/lvm/test bs=1M count=500

500+0 records in

500+0 records out

524288000 bytes (524 MB) copied, 5.31399 s, 98.7 MB/s

两个目录的使用率发生变化

c7304899bf6c9b3defbcb941425e3eb3.png

②对快照区的数据进行打包压缩并备份

[root@CentOS-6 snap]# tar -jcv -f /backups/lvm.tar.bz2 * #-j 支持bzip2解压文件 -c 创建新的备份文件 -f 指定备份文件

tmp

[root@CentOS-6 snap]# echo $?

0

卸载原始lv重新格式化,再挂载之后df查看

de6879f6a4774fec5c0352e5e716fce3.png

③对原始lv进行数据恢复[root@CentOS-6 ~]# tar -jxv -f /backups/lvm.tar.bz2 -C /mnt/lvm/  #-C 解压至指定目录

原始lv恢复至原来的14%

9479c2ee124a47173d708b4bc64e4b56.png

我在这是用的打包压缩的方式进行备份还原,当然用cp命令的方式也一样

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值