当Linux系统中使用LVM(逻辑卷管理)的分卷(如逻辑卷/dev/mapper/centos-root)空间不足时,可通过扩展逻辑卷解决。以下是详细步骤(以常见的xfs/ext4文件系统为例):
首先,使用以下命令查看磁盘使用情况和LVM配置:
df -h # 查看分卷挂载点及使用率(确认哪个分卷空间不足)
lvdisplay # 查看逻辑卷(LV)的大小及所属卷组(VG)
vgdisplay # 查看卷组(VG)的剩余空间(Free PE/Size)
若卷组有剩余空间(Free PE不为0),可直接扩展逻辑卷;若无剩余空间,需先通过添加新磁盘或缩小其他逻辑卷腾出空间(详见下文“扩展卷组”部分)。
若卷组有剩余空间,使用lvextend命令扩展逻辑卷。以下为两种常见场景:
lvextend -L +10G /dev/mapper/centos-root # 将root逻辑卷增加10G
lvextend -l +100%FREE /dev/mapper/centos-root # 使用卷组所有剩余空间扩展
扩展逻辑卷后,需同步调整文件系统大小。根据文件系统类型选择对应命令:
xfs_growfs /dev/mapper/centos-root # 在线扩展xfs文件系统(无需卸载)
resize2fs /dev/mapper/centos-root # 扩展ext4文件系统(需卸载分区,生产环境建议先备份)
若卷组没有剩余空间,需先通过添加新磁盘或缩小其他逻辑卷腾出空间:
/dev/sdb),并分区(用fdisk /dev/sdb创建新分区,类型设为8e(LVM));pvcreate /dev/sdb1 # 将新分区初始化为物理卷
vgextend centos /dev/sdb1 # 将新物理卷加入目标卷组(卷组名通过`vgdisplay`查看)
/dev/mapper/centos-home)有剩余空间,可先缩小它,再将空间扩展给目标逻辑卷:lvreduce -L -5G /dev/mapper/centos-home # 缩小home逻辑卷5G(需卸载分区)
lvextend -L +5G /dev/mapper/centos-root # 扩展root逻辑卷5G
最后,使用df -h命令查看分卷大小,确认扩展成功:
df -h | grep /dev/mapper/centos-root # 检查root分卷是否已扩容
df -Th),xfs和ext4的扩展命令不同;growpart(扩展分区)+resize2fs(扩展文件系统)解决,流程更复杂(详见growpart命令文档)。通过以上步骤,可快速解决Linux分卷空间不足的问题。