linux下使用PE创建LVM快照详细步骤

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下使用PE创建LVM快照详细步骤相关的知识,希望对你有一定的参考价值。

参考技术A   1.首先将硬盘sdb分4个区每个区大小200M,分别是sdb5,6,7,8。后将四个分区建立pv
  
  
  2.之后把pv加入vg此处引入PE的概念。
  由于vg是多个PE(块)组成的,而且每个vg块的PE最大数量是65534。默认每个PE的大小是4m
  也就是说默认的每个vg最大也就是4m乘65534=256G,因此PE块的大小决定了最终vg的大小。
  此处我们定义PE块的大小为16m。由于每个pv的大小是200m总共800m因此总共的pv个数是48。
  建立命令如下vgcreate
-s
16M
lvm_vg
/dev/sdb5,6,7,8。
  
  3.接下来我们利用PE块的数量来创建lv由于每个pv能划分出的PE是12个因此要创建一个600M的需要36个PE。命令如下lvcreate
-l
36
-n
lvm_lv
lvm_vg将建立的lv格式化并挂载到/mnt/lvm下。并且在其中建立了三个文件夹aaa
bbb
ccc。
  
  
  4.接下来我们利用vg中剩下的PE来建立快照lvm_lv这个卷的快照。
  由于剩下的PE有12个我们全部用来做快照。
  
  命令如下lvcreate
-l
12
-s
-n
lvm_ss
lvm_ss
/dev/lvm_vg/lvm_lv
快照建立完成后我们将其挂载到/mnt/snapshot下
  等我们到该目录下即可看到原来aaa
bbb
ccc三个目录。
  
  
  快照建立的关键命令是lvcreate加上-s的参数。而且如果要更新快照内容只需将其卸载并删除卷再从新建立即可。
小编推荐:  怎么用U盘安装Linux系统?

Linux学习—LVM快照功能

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



目录

  • LV的快照原理

  • 创建快照

  • 利用快照恢复系统



一、LV的快照(snapshot)原理 

技术分享图片

    左边的图表示,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的数量

技术分享图片

②创建lv快照

[[email protected] ~]# lvcreate -s -l 100 -n lv1snap /dev/vg1/lv1 
Logical volume "lv1snap" created.

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

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

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

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

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

③ 查看新创建的快照区

技术分享图片

③挂载原始lv和lv的快照 

[[email protected] ~]# mount /dev/vg1/lv1 /mnt/lvm/
[[email protected] ~]# mount /dev/vg1/lv1snap /mnt/snap/

技术分享图片   
之前我在/mnt/lvm中导入了一些数据,我们发现原始lv和lv快照挂载之后容量信息一模一样


三、利用快照恢复系统

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

①修改原始lvm中的内容

[[email protected] ~]# 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

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

 技术分享图片

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

[[email protected] snap]# tar -jcv -f /backups/lvm.tar.bz2 * #-j 支持bzip2解压文件 -c 创建新的备份文件 -f 指定备份文件
tmp
[[email protected] snap]# echo $?
0

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

技术分享图片

③对原始lv进行数据恢复

[[email protected] ~]# tar -jxv -f /backups/lvm.tar.bz2 -C /mnt/lvm/  #-C 解压至指定目录

原始lv恢复至原来的14%

技术分享图片

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



以上是关于linux下使用PE创建LVM快照详细步骤的主要内容,如果未能解决你的问题,请参考以下文章

创建LVM逻辑卷步骤(详细)

创建LVM逻辑卷步骤(详细)

Linux的LVM管理

Linux学习—LVM快照功能

怎么装linux 请详细说明安装步骤和方法!!!!谢谢

Linux LVM的PV操作