逻辑卷的管理分配与创建

        在企业内,通常需要升级数据库,随着业务的增加,磁盘的容量不满足需求,这个时候,就要增加磁盘来满足日益增加的数据量了,可是增加磁盘。是不是要把磁盘中的数据也要拷贝到新的磁盘中呢?没这个必要,因为在强大的linux下,一切都是so easy!只要几个管理命令就ok了,闲话少说,那就来深入的了解一下吧!

什么是逻辑卷?怎么创建逻辑卷?

      逻辑卷是在物理盘基础上,把多块设备罗织在一起,组成一个可以格式化的系统文件,先创建物理卷,再创建卷组,然后再创建真正的逻辑卷

        首先我们要创建物理卷,用到的命令是:pvcreate /dev/# 后面跟需要指定的设备名称,可以跟多个设备名,需要用空格隔开就行,如:

pvcreate  /dev/sda5  /sda/6

  再用查看命令查看是否创建好,命令:pvdisplay 或pvs ,pvs是简要信息。

   下面我们要创建卷组名,命令:vgcreate gname(卷组名)/dev/# (设备名),可跟的参数有:-s 指定size大小,如:vgcreate  -s  8M myvg (gname) /dev/sda

扩展卷组,用命令:vgextend  gname(卷组名)/dev/# (设备名),如:          vgextend myvg /dev/sda6

   同理,删除的话,用命令reduce就行了,

       reduce  gname(卷组名)/dev/# (设备名)

      不过,一定要记住,在删除之前,要先把这个磁盘的的数据移走,因为你不知道,这个盘是否真的没有重要数据的一部分,那么pvmove就派上用场了,命令格式如下:pvmove  /dev/sda6(所要移除的盘)

好了,做了这些,就该创建逻辑卷了:

命令lvcreate可跟常见参数

-L   指定大小

-n   指定卷名

-p   指定权限

我们来做个例子:

lvcreate  -L 1G  -n  mylv  myvg(不能省略卷组名)
lvs,可以查看创建的逻辑卷

       然后就要格式化逻辑卷了,mke2fs  -j  /dev/myvg/mylv,之后创建一个你需要挂载的目录,mkdir  /mydata 或者直接挂载已存在目录也行,mount  /dev/myvg/mylv  /mydata

扩展lv: 
       使用命令:lvextend 扩展物理边界;resize2fs 扩展逻辑边界 ,要先扩展物理边界,因为逻辑边界是在物理边界基础上的

lvextend -L 3G(+?G) /dev/myvg/lv 只能在当前逻辑组中创建,所以不再跟卷组名
df -lh
可以看出物理边界扩展后,逻辑边界没有扩展
resize2fs /dev/myvg/lv 会自动扩展和物理边界一样大
 缩减:
先卸载文件,umount /dev/myvg/mylv
再检测文件系统:e2fsck -f(强行) /dev/myvg/mylv

       现在就要指定缩减的逻辑卷大小了,与扩展lv相反,先缩减逻辑边界,再缩减物理边界
resize2fs /dev/myvg/mylv 2G  要指定缩减到的大小
lvreduce -L 2G(-1G) /dev/myvg/mylv
mount 挂载至一个目录,查看。
  一个逻辑卷就缩减了成功了,可以到目录里看看数据是否丢失了。

逻辑快照:

为了数据的安全,我们还可以对逻辑卷做快照,也就是创建快照卷,如何创建呢?
也用命令:lvcreate,不过参数有些不同,-s 指定是快照
    lvcreate -L(size) -s -p(权限) -n(name)/dev/(设备名)  如:

lvcreate -L 64M -s -p r -n snap_mylv /dev/myvg/mylv
创建后,建挂载点 mkdir myback, 挂载
mount /dev/myvg/snap_mylv /myback
  创建好后,就可对其备份,命令:tar jcf /tmp/etc.tat.bz2 逻辑快照的数据
  下面就可以移除快照逻辑卷了
  先卸载 umount /myback ,命令:lvremove  指定的快照卷
/dev/myvg/snap_mylv