* LVM 的用途:能整虚拟分区出来,分区大小可调,这样不用担心分区时给 / 的是不是少了。

  * LVM 的全称:Logical Volumn Manager
  * LVM 的术语
  PV:Physical Volumn,物理卷,可以理解为磁盘分区
  PE:Physical Extent, 物理块,可以理解为磁盘块(多个连续扇区)
  LV:Logical Volumn, 逻辑卷,在其上的文件系统看到的“磁盘分区”
  LE:Logical Extent, 逻辑块,在其上的文件系统看到的“磁盘块”,LVM 中 PE 和 LE 的大小一致。
    VG: Volumn Group,卷组,可以理解为存储池,它和上面几个东西的关系如下:
  一个 PV 分成多个 PE,一个 LV 分成多个 LE;
  一个 VG 由一个或多个 PV 组成;
  一个 LE 从 VG 中分配出来,这个 LE 就是 mkfs 看到的分区,类似于通常情况下的物理分区 /dev/hda1 这样的东西。
    pv查看命令 pvdisplay
    vg查看命令 vgdisplay
    lv查看命令 lvdisplay
 
  *  创建 PV
  将整个磁盘创建为一个 PV: pvcreate /dev/hda
  将单个分区创建为一个 PV: fdisk 修改这个分区类型为 0x8E(Linux LVM)
  *  创建 VG
  vgcreate vg1 /dev/hda /dev/hdb   #将hda,hdb二个磁盘创建一个vg1
  *  向已有 VG 中添加 PV
  vgextend vg1 /dev/hdc
   *  在现有VG 中删除已存在 PV
    vgreduce vg1 /dev/hdc
   
  *  创建 LV
  查看 PE 大小: vgdisplay vg1
  假设 PE 大小是 20G,创建一个 20000 MB 的 LV:
  lvcreate -L 20G -n lv1 vg1
    *  创建ext3文件系统
    mkfs -t ext3 /dev/vg1/lv1或者mkfs.ext3 /dev/vg1/lv1
    *  增大一个文件系统容量 将/data1分区扩大20G的容量.
    lvextend -L +20G /dev/vg1/lv1  扩大lv(逻辑卷)容量
    resize2fs /dev/vg1/lv1         扩大文件系统容量
    *  减小一个文件系统容量  将/data1分区减小到20G
    umount /data2    减小文件系统不支持在线回缩,所以先要卸载文件系统
    resize2fs /dev/vg1/lv003 20G
    Please run 'e2fsck -f /dev/vg1/lv1' first.请运行e2fsck 检测文件系统
    e2fsck -f /dev/vg1/lv1 
    resize2fs /dev/vg1/lv003 20G
    lvreduce -L20G /dev/vg1/lv1  回缩文件系统到20G
    mount -t ext3 /dev/vg1/lv1 /data1 挂载文件系统到/data1分区
    扩展lv使用vg剩余的所有空间 将/data1使用vg1剩余的所有空间
         lvextend -l +100%FREE /dev/vg1/lv1   注意这里是小写的l
    *  将vg1剩余的所有空间创建为一个lv
        lvcreate -l 100%FREE -n lv2 vg1      注意这里是小写的l
取消挂载的分区
[root@linux tmp]# umount /tmp/lvm/
删除LV
[root@linux tmp]# lvremove /dev/vg1/lv1
Do you really want to remove active logical volume "lv1"? [y/n]: y
  Logical volume "lv1" successfully removed
删除VG
[root@linux tmp]# vgremove vg1
  Volume group "vg1" successfully removed
删除PV
[root@linux tmp]# pvremove /dev/hda5 /dev/hda7
  Labels on physical volume "/dev/hda5" successfully wiped
  Labels on physical volume "/dev/hda7" successfully wiped