LVM全称为Logical Volume Manager 逻辑卷管理器,LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。其中
-
PV:Physical Volume 物理卷
-
VG:volume Group 卷组
-
LV:Logincal Volume 逻辑卷
一、LVM逻辑卷的创建
我们要创建逻辑卷,首先要创建物理卷PV,之后创建卷组VG,最后才创建逻辑卷LV,下面是逻辑卷创建的详细过程:
1、首先通过fdisk –l 查看系统上所有硬盘和分区的使用情况,或者可用lsblk命令来查看
如果没有查找到我们新加的磁盘,那么需要重新扫描磁盘把新加的磁盘加载进来
-
查看主机总线号: ls /sys/class/scsi_host/
-
重新扫描SCSI总线添加设备
-
echo "- - -" > /sys/class/scsi_host/host0/scan
-
echo "- - -" > /sys/class/scsi_host/host1/scan
-
echo "- - -" > /sys/class/scsi_host/host2/scan
-
-
注意:有几个总线就扫描几个
-
-
发现新添加的磁盘出现,即为磁盘添加成功
-
2、创建LVM分区,运行fdisk /dev/sdd,然后输入字母‘l’
可以看到LVM分区格式为8e
3、继续输入命令:n -> p -> 1 -> 回车 -> +200G -> p ->t ->8e -> p
4、按以上命令操作完成以后,按wq保存退出
5、创建逻辑卷组以及逻辑卷等
-
创建物理卷:pvcreate /dev/sdd1
-
创建逻辑卷组:vgcreate ms /dev/sdb1 (组名ms可以自定义)
-
激活逻辑卷组:vgchange -ay ms
-
查看逻辑卷组所有PE:vgdisplay ms | grep "Total PE"
-
创建逻辑卷,卷名可以自定义:lvcreate -l 5119 -n mslg1 ms (mslg1卷名可以自定义,5119对应PE)
格式化逻辑卷
-
mkfs.ext4 /dev/ms/mslg1 (ms为逻辑卷组,mslg1为逻辑卷名)
设置自动挂载,并查看分区
-
echo '/dev/ms/mslg1 /www ext4 defaults 0 0' >> /etc/fstab
-
手动挂载 mount /dev/ms/mslg1 /wwwroot
-
查看分区情况:df -lh
二、LVM逻辑卷的扩容
LVM逻辑卷组的扩容
1.首先将新的磁盘按照创建逻辑卷的1,2,3,4步骤创建LVM分区
2.创建物理卷,重新规定/dev/ms/mslg1的大小
-
创建物理卷,并加入卷组:pvcreate /dev/sdb1
-
将新硬盘加入卷组:vgextend ms /dev/sdb1
-
查看PE:vgdisplay ms | grep "Total PE"
-
重新规定大小:lvresize -l 34975 /dev/ms/mslg1 (34795为PE值)
-
重新规定大小:resize2fs /dev/ms/mslg1
-
查看磁盘使用情况:df -h
逻辑卷的扩容:
首先要确定扩展多大,并确定当前逻辑卷所在卷组有足够的空间可用,扩展时要先扩展物理边界,再扩展逻辑边界
-
lvextend -L 8G /dev/ms/mslg1
-
lvs查看一下
-
重新规定大小:resize2fs /dev/ms/mslg1
三、缩减逻辑卷
确定要缩减为多大?至少能容纳原有的所有数据,逻辑卷缩减有风险,所以要卸载并强行检测文件系统 缩减逻辑卷空间的步骤如下: 1.先卸载逻辑卷/dev/ms/mslg1 2.然后通过e2fsck命令检测逻辑卷上空余的空间 3.使用resize2fs将文件系统减少到3G 4.再使用lvreduce命令将逻辑卷减少到3G 注意,文件系统大小和逻辑卷大小一定要保持一致才行,如果逻辑卷大于文件系统,由于部分区域未格式化成文件系统会造成空间的浪费,如果逻辑卷小于文件系统,那数据就出问题了
四、缩减逻辑卷组
首先要确定移除的逻辑卷,将此物理卷上的数据转移至其他的物理卷,然后从卷组中将此物理卷移除;
-
pvmove /dev/ms/mslg1
-
vgreduce ms /dev/ms
-
vgs命令查看一下
五、删除逻辑卷以及卷组和物理卷
-
卸载:umount /wwwroot
-
删除逻辑卷:lvremove /dev/ms/mslg1
-
移除逻辑组:vgremove ms
-
lvs:查看一下
-
vgs:查看一下
-
pvs:查看一下
-
移除物理卷:pvremove /dev/sdd1
-
pvs:查看一下
-