LVM(逻辑卷)管理系统能够将多个物理磁盘组装为一个大的逻辑磁盘进行使用,尤为是管理大文件时很是方便。LVM能够减小多个磁盘的部分空间闲置的状况,集中使用提升磁盘利用率。LVM的卷能够动态伸缩,方便使用。app
LVM由PV(物理卷)、VG(卷组)、LV(逻辑卷)组成,其中PV对应到物理磁盘的一个物理分区,LV至关于一个逻辑分区,VG创建起逻辑卷和物理卷之间的对应关系。工具
df -h
若是要将物理分区/dev/sdb2转为物理卷:操作系统
sudo pvcreate /dev/sdb2
将把LVM的标志符写入到磁盘之中。code
sudo pvs
以上面添加的第一个物理盘为基础,建立逻辑卷组ip
vgcreate vgdata /dev/sdb2
在被激活以前,VG与LV是没法访问的,这时可用命令:io
sudo vgchange -a y vgdata
激活所要使用的卷组。test
当再也不使用VG时,可用vgchange使之再也不可用。基础
sudo vgchange -a n vgdata
语法以下:扩展
lvcreate [options] -n 逻辑卷名 卷组名 [PV1 ... ]
其中的经常使用可选项有:map
若是须要LV使用整个VG,可首先用vgdisplay 查找 Total PE 值,而后在运行lvcreate时指定,如:
# sudo vgdisplay vgdata | grep "Total PE" Total PE 10230 # sudo lvcreate -l 10230 vgdata -n data
这时建立了一个逻辑卷,名称为data。
建立出的逻辑卷至关于系统的一个“裸磁盘分区”,须要进一步建立文件系统和进行格式化。
sudo mke2fs /dev/vgdata/data
为逻辑卷增长容量可用使用lvextend,便可以指定要增长的尺寸也能够指定扩容后的尺寸,如
# lvextend -L12G /dev/vgdata/data lvextend -- extending logical volume "/dev/testvg/testlv" to 12 GB lvextend -- doing automatic backup of volume group "testvg" lvextend -- logical volume "/dev/testvg/testlv" successfully extended
将扩大逻辑卷data的容量为12GB。
# lvextend -L+1G /dev/testvg/testlv lvextend -- extending logical volume "/dev/testvg/testlv" to 13 GB lvextend -- doing automatic backup of volume group "testvg" lvextend -- logical volume "/dev/testvg/testlv" successfully extended
将为LV testlv再增大容量1GB至13GB。
为LV扩容的一个前提是:LV所在的VG有足够的空闲存储空间可用。 在为LV扩容以后,应同时为LV之上的文件系统扩容,使两者相匹配。对不一样的文件系统有相对应的扩容方法。
# umount /dev/testvg/testlv # resize2fs /dev/testvg/testlv # mount /dev/testvg/testlv /home
这里假设testlv安装点为/home。在es2fsprogs-1.19或以上版本中包含resize2fs命令。
在LVM发行包中有一个称为e2fsadm的工具,它同时包含了lvextend与resize2fs的功能,如:
# e2fsadm -L+1G /dev/testvg/testlv
等价于下面两条命令:
# lvextend -L+1G /dev/testvg/testlv # resize2fs /dev/testvg/testlv
但用户仍需首先卸载文件系统。
# resize_reiserfs -f /dev/testvg/testvl
# xfs_growfs /home
此时,操做系统中应该已经能够看到这个逻辑卷了,与普通磁盘没有任何区别。
按照普通磁盘格式化方法,进行格式化、赋予卷标,就能够正常使用了。
当卷组空间不足时,能够加入新的物理卷来扩大容量,这时可用命令vgextend,如:
# vgextend vgdata /dev/sdb2
其中/dev/sdb2是新的PV(物理卷,使用pvcreate从物理盘建立)。
须要如下几个步骤(/dev/sdb2是须要加入的物理磁盘,经过df -h获取磁盘标识):
sudo pvcreate /dev/sdb2
输入sudo pvs
能够看到建立的物理卷。
sudo vgextend vgdata /dev/sdb2
输入sudo vgs
能够看到vg中的物理卷列表。
#476899为增长的空闲空间,经过vgdisplay命令显示的Free PE值来肯定。 lvextend -l+476899 /dev/vgdata/appdata
再执行sudo vgs
能够看到空闲空间被分配到了vgdata中,但这时文件系统中仍然没法使用。
df -h
查看逻辑卷的名称,而后调用resize2fs。sudo resize2fs /dev/mapper/vgdata-appdata #将所有的剩余空间赋给虚拟卷appdata的文件系统。
这时候在操做系统中,点击文件夹的“属性”,能够看到整个磁盘空间已经扩大了。
为使系统启动时可自动激活并使用LVM,可将如下几行添加到启动 rc 脚本中:
/sbin/vgscan /sbin/vgchange -a y
这些行将浏览全部可用的卷组并激活它们。要注意的是,它们应在安装卷组上的文件系统操做以前被执行,不然将没法正常安装文件系统。
在系统关机时,要关闭LVM,这可将如下这行添加到关机 rc 脚本中,并确保它在卸装了全部文件系统后执行:
/sbin/vgchange -a n