逻辑卷:

1、什么是LVM?
     LVM(Logical Volume Manager),逻辑卷管理器,用来扩展或者缩减分区边界并且不会影响磁盘中原有的数据,解决分区不够用或者分区空间太大的问题。
2、逻辑卷?
     它是一种逻辑设备,将几个磁盘分区或者块设备组织起来,在此基础上再提供一个管理层次,该管理层次可以在不损伤数据的情况下继续扩展整个可用空间。
3、逻辑卷的层次?
     1)PV层,即磁盘设备或者块设备的组合层,此时需要将磁盘的ID号设置为8e的,才能做成一个pv(逻辑卷)。每个pv的大小可以不相同。
     2)将众多pv整合成一个大的可用空间,此空间不能直接使用,该层称为vg(卷组)层;vg的大小取决于底层物理设备的大小和;
     3)vg划分成数个逻辑空间,即lv(逻辑卷)的产生,它们可以被格式化成不同的文件系统,以实现挂载使用。lv的大小总和取决于vg的大小。
4、逻辑卷缩减的风险大于逻辑卷扩展的风险,不在万不得已的情况下,尽量不要缩减逻辑卷的大小。
5、快照:
       1)工作原理:快照保存的是某一时间点上数据状态的路径,如果某一数据在快照之后又发生改变,则该数据在改变之前要被保存在快照卷里面,所以快照卷的大小取决于两方面的因素:
              1、数据变化的频度;
              2、快照存活的时间长度;
              两者的乘积即为快照的大小。
       2)作用:用来保存某一时间点上的数据状态,以实现数据备份,备份完成后即可以删除快照卷。
6、如何创建pv?
例如:在/dev/sda下创建一个大小为2G的pv:
     # echo '
     >n
     >
     >+2G
     >t
     >5
     >8e
     >w'|fdisk /dev/sda
     #partprobe /dev/sda (无论是创建逻辑分区还是删除逻辑分区,都需要通知/proc/partitions文件,以让内核知道)
     #pvs (查看已经创建的pv)
     #pvdisplay(查看pv的详细信息,包括:PV Name、VG Name、PV Size、Allocation、PE、Total PE、Free PE、PV UUID)
7、如何创建和删除VG?
# vgcreate VG_NAME PV_NAME
例如:# vgcreate myvg /dev/sda5
      # vgs (查看已经创建的VG)
      # vgdisplay (查看VG的详细信息)
      # vgcreate -s PE_SISE(K|M|G|T) (指定PE的大小)
      # vgremove -f VG_NAME (强行删除VG)
8、如何扩展VG?
# vgextend -t VG_NAME PV_NAME (测试能否扩展VG)
# vgextend VG_NAME PV_NAME (扩展VG)
9、如何缩减VG?
# pvmove PV_NAME (移动PV上面的数据到其他的PV上面)
# pvreduce -t VG_NAME PV_NAME (测试是否可以移除VG下面的pv)
# pvreduce VG_NAME PV_NAME (移除VG下面的PV)
10、如何创建和删除逻辑卷?
1)创建:
# lvcreate -L (K|M|G|T) 指定逻辑卷的大小;
           -n 指定逻辑卷的名字,必须指定的;
           -p r|rw 指定只读或者读写的;
例如,创建大小为1G的lv:
# lvcreate -L 1G -p rw -n mylv myvg (创建完lv之后,就可以格式化,并挂载使用lv了。)
2)删除:# lvremove /dev/myvg/mylv
11、如何扩展LV?
边界分为:物理边界和逻辑边界,当扩展lv的时候,要先扩展物理边界,再扩展逻辑边界。如果只扩展了物理边界,而没有扩展逻辑边界,物理和逻辑会显示不一致,此时用# df -lh即可以查看到。
扩展lv的大小是不会影响到磁盘里面的数据。
例如:
# lvextend -L 2G /dev/myvg/mylv (扩展mylv的物理边界到2G大小)
# resize2fs /dev/myvg/mylv (扩展mylv的逻辑边界与物理边界相符)
12、如何缩减lv?
缩减lv 的时候,要先缩减逻辑边界,再缩减物理边界,缩减的时候,一定要小心,因为里面有数据存放。
步骤如下:
    1)卸载:
    # umount /dev/myvg/mylv
    2)做文件系统的强制检测:
    # e2fsck -f /dev/myvg/mylv
    3)缩减逻辑边界到1G:
    # resize2fs /dev/myvg/mylv 1G
    4)缩减逻辑边界到1G;
    # lvreduce -L 1G /dev/myvg/mylv
    5)挂载逻辑卷到目录/mydata/data:
    # mount /dev/myvg/mylv /mydata/data
    6)使用如下命令查看lv的大小:
    # df -lh
13、如何创建快照卷?
例如,为/dev/myvg/mylv创建一个大小为128M的快照卷snap_mylv:
# lvcreate -L 128M -s -p r -n snap_mylv /dev/myvg/mylv
# mount /dev/myvg/snap_mylv /snap (为某一个lv创建的快照卷一定存放在该lv的卷组中)
# tar -jcf /tmp/tar.gz ./*(为数据做备份)
# umount /dev/myvg/snap_mylv (快照卷使命完成,卸载快照卷)