1860 字
4 分钟

CentOS 7中调整LVM分区大小的详细指南

文章摘要
DeepSeek R1
在CentOS 7中调整分区大小,需先查看分区和文件系统类型。对于xfs格式的/home分区,需卸载后使用lvreduce命令减小其大小以扩大根分区,注意操作可能破坏数据,建议备份后谨慎执行。

在安装CentOS 7系统后,默认的分区大小可能不符合实际需求,例如根分区(/)空间不足而/home分区空间过剩。此时,需要手动调整分区大小。本文将详细介绍在CentOS 7中调整LVM分区大小的步骤。

1. 查看当前分区情况

使用df -h命令查看磁盘使用情况,确定需要调整的分区。例如,可能发现根分区(/)只有42G,而/home分区有241G,目标是将/home的部分空间分配给根分区。

分区情况示意图

2. 确认文件系统类型

调整分区前,必须确认文件系统类型,因为不同文件系统使用的调整命令不同。通过mount命令查看:

mount | grep root
mount | grep home

如果输出显示为xfsext2/ext3/ext4,则可进行相应调整。

3. 不同文件系统的调整命令

  • ext2/ext3/ext4文件系统:使用resize2fs命令(支持增大和减小)。
    lvextend -L 120G /dev/mapper/centos-home   # 增大至120G
    lvreduce -L 50G /dev/mapper/centos-home    # 减小至50G
    resize2fs /dev/mapper/centos-home          # 执行调整
    
  • xfs文件系统:使用xfs_growfs命令(仅支持增大)。若要减小xfs分区,需先卸载分区,使用lvreduce减小逻辑卷,然后重新格式化(注意:这会破坏数据,需提前备份)。
    lvextend -L 120G /dev/mapper/centos-home   # 增大至120G
    xfs_growfs /dev/mapper/centos-home         # 执行调整
    

4. 调整步骤(以xfs文件系统为例)

由于xfs_growfs不支持减小,减小/home分区并扩大根分区需按以下步骤操作:

4.1 卸载/home分区

首先卸载/home分区。如果提示设备忙,使用fuser命令终止相关进程。

umount /home
# 若提示忙,先执行:
fuser -km /home
umount /home

4.2 减小/home分区大小

使用lvreduce命令将/home分区减小到目标大小(例如41G)。系统会警告此操作可能破坏数据,确认后执行。

lvreduce -L 41G /dev/mapper/centos-home

4.3 扩展根分区(/)

将释放的空间分配给根分区。首先查看可用的物理卷空间,然后使用lvextend扩展根分区逻辑卷,最后用xfs_growfs调整文件系统。

# 查看卷组空闲空间
vgdisplay
# 扩展根分区逻辑卷
lvextend -L +200G /dev/mapper/centos-root
# 调整文件系统大小
xfs_growfs /dev/mapper/centos-root

4.4 重新挂载/home分区

如果/home分区仍需使用,需重新格式化并挂载(因为减小xfs分区会破坏数据,需重新创建文件系统)。

# 格式化/home分区为xfs
mkfs.xfs /dev/mapper/centos-home
# 挂载/home分区
mount /dev/mapper/centos-home /home

5. 注意事项

  1. 数据备份:调整分区大小有数据丢失风险,操作前务必备份重要数据。
  2. 文件系统类型:确认分区文件系统类型,选择正确的调整命令。
  3. 操作顺序:严格按照步骤进行,避免误操作导致系统无法启动。
  4. 测试环境:建议先在测试环境中练习,熟悉流程后再在生产环境操作。

通过以上步骤,可以安全地调整CentOS 7中的分区大小,优化磁盘空间分配。

Firefly
Firefly
Hello, I'm Firefly.
公告
欢迎体验 Firefly 主题复刻版,壁纸与布局已全面同步。
查看文档