lvm让你的设备无限拉伸

来源:互联网 发布:java手写ioc 编辑:程序博客网 时间:2024/05/14 22:21

   当三个人平分两个橘子时,可以将橘子榨成汁,再分给三个人。其实对于设备来说也一样,当每个设备的容量都不够时可以将这些零散的分区整理到一块再重新划分,这也是lvm命令的用途,它可以使设备容量无限拉伸。

   在学之前先认识几个量:

  pv   #物理卷,就如我们榨成汁的橘子

  vg     ## 逻辑卷组,如将所有的果汁倒在一个容器中
  pe    ##物理扩展
  lvm   ##如给每个人分的果汁

  如何用零散的设备建立以上的这些量呢,步骤如下:

  pvcreate /dev/vdb1   #创建物理卷
 vgcreate vg0 /dev/vdb1   #创建物理卷组
 lvcreate -L 100M-n lv0 vg0  #创建逻辑卷

创建成功后还要添加文件系统,和挂载设备:

 mkfs.xfs /dev/vg0/lv0  #格式化设备
 mount /dev/vg0/lv0 /westost #设备挂载投入使用

 例子:

 可以用watch -n 1 'pvs;echo =========;vgs;echo =========;lvs;echo ========;df -h /挂载点'监控,如下图:


 当lvm不够用时,分为两种情况,第一种,vg中的容量足够,那么就可以直接从vg中取出,如下:


 当vg中的容量不够时,就要重新添加设备,如下:


 会拉伸容量也要会缩减文件,但是缩减与拉伸不同,缩减时必须将文件系统格式化为ext4文件系统,在格式化之前一定要注意将设备卸载,具体步骤如下:

 卸载设备后将设备格式化:


  格式化之后对设备进行扫描:


  然后缩减文件系统,将设备挂载后缩减设备:


  拉伸与缩减不一样,首先拉伸设备再拉伸系统文件:


  对卷组缩减时,为了防止数据丢失首先要将vdb1上的数据转移到vdb2上,然后去掉物理券组中的vdb1,再移除vdb1。具体操作如下:



  lvm自带快照功能,可以保护原始数据不被修改 ,具体步骤如下。


  将lvm挂载到目录上后,创建file{1..5}这五个文件,然后将设备卸载:


  创建快照后将快照挂载上将5个文件删除:


  再移除快照:




   重新建立快照之后会发现这5个文件依然在:




   这个实验说明了在修改快照内容时,只是修改的快照的内容,不会修改原始文件,这样就将原始文件保护了起来。


   删除lvm时,要有一定的顺序,先移除lv,再移除vg,再移除pv,最后删除设备,具体步骤如下:


  如果没有将设备从物理券组中移除就删除设备的话会造成如下错误:


  修改命令如下:




   如果从物理券组中移除,而没有从pv中移除就删除设备的话,可以先将设备重新建立出来,再根据顺序移除。


   lvm的用法就是这些了,谢谢观看!


原创粉丝点击