码迷,mamicode.com
首页 > 系统相关 > 详细

Linux基础(18)LVM以及应用

时间:2016-07-20 23:10:13      阅读:303      评论:0      收藏:0      [点我收藏+]

标签:linux   lvm   快照   

  1. LVM是什么?

    LVM为逻辑卷管理器,可以将多个物理分区整合起来,让其看起来好像是一个大磁盘,LVM最大的用处为弹性地调整文件系统的容量。

    与LVM相关的几个概念

    PV 物理卷 位于LVM最底层,通过pvcreate命令将磁盘分区(分区的SystemID需要实现转换成8e,通过fdisk命令实现)转换而成

    VG 卷用户组 由多个PV整合而成,也就是上面说的大磁盘,其大小取决于PE的大小和个数。默认VG最大可以包含65536个PE(一个PE大小默认为4MB),即256GB。

    PE 物理扩展块,是LVM的最小存储块,类似与文件系统的block

    LV 逻辑卷 由LV切分而成,是可以被格式化文件系统的类似的分区。LV的设备名格式/dev/vgname/lvname

   LVM 是通过交换PE来实现弹性调整文件系统的容量的。

   实现的流程:创建PV----创建VG-----创建LV----格式化LV-----挂载使用。

2.如何实现创建LV?

  创建PV

  首先创建4个分区,并且将systemid改为8e

  技术分享

  创建PV  pvcreate /dev/sda{9,10,11,12}

  技术分享

  创建VG

  使用vgcreate命令,-s用来指定PE的大小

  技术分享

  如果需要增减VG的容量,使用vgextend命令 格式为vgextend vgname /dev/sda#

  划分LV

  使用lvcreate命令

  格式为lvcreate [options]  vgname

  -l  通过PE的数量指定LV的大小

  -L  通过容量来指定LV的大小 单位可以G,M,T

  -n  指定LV的名字

   技术分享

  格式化LV并且挂载

  技术分享

  3.增加LV的容量

  五步走

  使用fdisk创建分区---创建PV---使用vgextend加入新的PV扩展VG---利用lvresize将新的PV内的PE加入到LV中----使用e2fsck检查文件系统----使用resize2fs扩大文件系统的容量

  pvcreate /dev/sda13  #新建PV

  vgextend myvg /dev/sda13  #扩展VG

  lvresize -L +100M /dev/myvg/mylv #扩展LV

  e2fsck -f /dev/myvg/mylv #注意,应该是强行检车,没有-f是不行的  

  resize2fs /dev/myvg/mylv #将LV的容量扩展到整个文件系统

  最重要的使用lvresize命令

  lvresize -l 或者-L选项 通过+来扩展LV的容量

  具体格式为lvresize -L +... /dev/vgname/lvname

  技术分享

  4.减少LV的容量

  步骤

  umount /dev/myvg/mylv #LVM不支持在线缩小,但是放大可以,所以应该先卸载

  e2fsck -f /dev/myvg/mylv #强行进行磁盘检查

  resize2fs /dev/myvg/mylv 400M   #降低文件系统的容量,原来是500M,现在减小到400M

  lvresize -L -100M /dev/myvg/mylv #降低LV的容量

  pvdisplay #将某个PV抽离VG的时候,必须要确定里面的PE不被使用才可以,所以使用pvdisplay查看哪个PV的PE是没有使用的,将要抽离的PV中的含有数据的PE移动到该PV里

  pvmove /dev/sda9 /dev/sda13  #转移PE

  vgreduce myvg /dev/sda9将/dev/sda#抽离出VG

  pvremove /dev/sda9

  技术分享

  

  5.LVM的重要应用,快照 snapshot,可以用来备份数据

  快照的原理:将系统信息记录下来,如果有数据改动了,就将原来的数据移到快照区,没有改动的区域由文件系统和快照区共享。

  创建快照区

  pvcreate /dev/sda9

  vgextend myvg /dev/sda9

  lvcreate -L 100M -s -n mysnapshot /dev/myvg/mylv #最重要的是-s选项,意思是创建快照区,最后的/dev/myvg/mylv 是"被快照"的文件系统

  技术分享

  接下来挂载快照区

  mkdir /mnt/snapshot

  mount /dev/myvg/mysnapshot /mnt/snapshot

  df #查看是否挂载成功  

  技术分享

  可以看到快照区就像是LV的一面镜子,一样一样的。也就是我们在挂载/dev/myvg/mylv 与/dev/myvg/mysnapshot后里面看到的数据是一样的。

  快照的重要的作用就是可以用来复原文件系统

  cd /mydata

  rm -rf *  #搞破坏

  lvdisplay /dev/myvg/mysnapshot #发现确实被占用了一部分空间

  mkdir -p /backups

  cd /mnt/snapshot

  tar -jcf /backups/mylv.tar.bz2 * #备份

  umount /mnt/snapshot

  lvremove /dev/myvg/mysnapshot

  mke2fs -j /dev/myvg/mylv

  mount /dev/myvg/mylv /mydata

  cd /mydata

  tar xf /backups/mylv.tar.bz2 #还原







本文出自 “厚积薄发” 博客,请务必保留此出处http://joedlut.blog.51cto.com/6570198/1828212

Linux基础(18)LVM以及应用

标签:linux   lvm   快照   

原文地址:http://joedlut.blog.51cto.com/6570198/1828212

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!