LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小。

  创建LVM(在VMware中)

确保已经创建好2个8e类型的分区,如下sdb3,sdb5

 Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1         523     4200966   83  Linux

/dev/sdb2             524        1046     4200997+  83  Linux

/dev/sdb3            1047        1569     4200997+  8e  Linux LVM

/dev/sdb4            1570        2610     8361832+   5  Extended

/dev/sdb5            1570        1831     2104483+  8e  Linux LVM

  1. 创建物理卷

pvcreate /dev/sdb{3,5} 

结果提示如下错误

Device /dev/sdb3 not found (or ignored by filtering).

Device /dev/sdb5 not found (or ignored by filtering).

解决办法是分别执行两次如下命令

kpartx -af /dev/sdb

partx -a /dev/sdb

再次执行pvcreate /dev/sdb{3,5},创建成功

[root@localhost mnt]# pvcreate /dev/sdb{3,5}

  Physical volume "/dev/sdb3" successfully created

  Physical volume "/dev/sdb5" successfully created

使用pvs可以查看当前pv情况,使用pvdisplay /dev/sdb3 查看详细情况。

2.创建物理卷组

创建myvg

[root@localhost mnt]# vgcreate myvg /dev/sdb3

  Volume group "myvg" successfully created

将sdb5加入到myvg中

[root@localhost mnt]# vgextend myvg /dev/sdb5

  Volume group "myvg" successfully extended

使用vgs查看一下

[root@localhost mnt]# vgs

  VG   #PV #LV #SN Attr   VSize VFree

  myvg   2   0   0 wz--n- 6.01g 6.01g

3.创建逻辑卷

在myvg上创建逻辑卷,大小1G,名字mylv.

[root@localhost mnt]# lvcreate -L 1G -n mylv myvg

  Logical volume "mylv" created

lvs查看一下

[root@localhost mnt]# lvs

  LV   VG   Attr       LSize Pool Origin Data%  Move Log Cpy%Sync Convert

  mylv myvg -wi-a----- 1.00g 

4.创建完成之后格式化并挂载就可以使用了