Linux分区如何扩容与缩容
导读:Linux 分区扩容与缩容实操指南 一、前置检查与基本原则 确认文件系统类型:ext2/ext3/ext4 支持在线扩容与缩容;XFS 仅支持在线扩容,不支持缩容。缩容前务必确保数据已备份。 确认是否使用 LVM:LVM 能在卷组内灵活调...
Linux 分区扩容与缩容实操指南
一、前置检查与基本原则
- 确认文件系统类型:ext2/ext3/ext4 支持在线扩容与缩容;XFS 仅支持在线扩容,不支持缩容。缩容前务必确保数据已备份。
- 确认是否使用 LVM:LVM 能在卷组内灵活调配空间,非 LVM 受限于相邻未分配空间位置,扩容通常要求未分配空间与目标分区相邻且位于其后。
- 基本流程:扩容时先扩展“分区/逻辑卷”,再扩展“文件系统”;缩容时先缩小“文件系统”,再缩小“分区/逻辑卷”。
- 常用命令:df -hT、lsblk、growpart、parted/fdisk、e2fsck、resize2fs、xfs_growfs、lvextend/lvreduce、vgdisplay。
二、非 LVM 场景
- 扩容步骤(物理盘或云盘已扩容,且新增空间与目标分区相邻)
- 查看磁盘与分区:
- 查看分区表与容量:fdisk -l
- 查看文件系统与挂载:df -hT
- 扩展分区表(适用于 MBR/GPT 的单分区盘):
- 安装工具:yum install -y cloud-utils-growpart
- 扩展第 1 分区:growpart /dev/vdb 1
- 扩展文件系统:
- ext2/ext3/ext4:resize2fs /dev/vdb1
- XFS:xfs_growfs /mount/point(如 xfs_growfs /)
- 验证:df -hT
- 查看磁盘与分区:
- 缩容步骤(仅 ext2/ext3/ext4 支持,且需先卸载)
- 卸载分区:umount /dev/sdXN;若忙,用 fuser -mvki /mount/point 结束占用进程。
- 强制检查:e2fsck -f /dev/sdXN
- 缩小文件系统到目标大小:resize2fs /dev/sdXN < 目标大小> (必须大于已用空间)
- 缩小分区:
- MBR 用 fdisk 删除并重建分区(保持起始扇区不变、调整结束扇区)
- GPT 用 parted 的 resizepart
- 重新挂载并验证:mount /dev/sdXN /mount/point & & df -h
- 重要限制
- XFS 不支持缩容;非 LVM 缩容必须卸载;若未分配空间不在目标分区之后,需先移动分区或备份后重建。
三、LVM 场景
- 扩容步骤
- 扩展逻辑卷(LV):
- 指定大小:lvextend -L 120G /dev/mapper/vg0-lv_home
- 增加容量:lvextend -L +20G /dev/mapper/vg0-lv_home
- 使用全部空闲:lvextend -l +100%FREE /dev/mapper/vg0-lv_root
- 扩展文件系统:
- ext2/ext3/ext4:resize2fs /dev/mapper/vg0-lv_home
- XFS:xfs_growfs /mount/point
- 扩展逻辑卷(LV):
- 缩容步骤(仅 ext2/ext3/ext4 支持)
- 卸载 LV:umount /mount/point;若忙,用 fuser -mvki /mount/point 结束占用进程。
- 强制检查:e2fsck -f /dev/mapper/vg0-lv_home
- 缩小文件系统:resize2fs /dev/mapper/vg0-lv_home < 目标大小> (必须大于已用空间)
- 缩小逻辑卷:lvreduce -L < 目标大小> /dev/mapper/vg0-lv_home
- 重新挂载并验证:mount /mount/point & & df -h
- 重要限制与建议
- XFS 不支持缩容;对根分区缩容通常需要进入救援模式/单用户离线操作;缩容前务必完整备份。
四、云盘与系统盘注意事项
- 云盘在控制台扩容后,实例内可能需要扩展分区表与文件系统:
- 扩展分区表:growpart /dev/vdb 1(MBR/GPT 通用)
- 扩展文件系统:
- ext2/ext3/ext4:resize2fs /dev/vdb1
- XFS:xfs_growfs /mount/point
- 部分云平台/内核在系统盘仅有一个分区且实例重启后,内核可能已自动扩展该分区;若未自动扩展,按上述 growpart + resize2fs/xfs_growfs 流程执行。
- 若需把新增空间做成新分区而非并入旧分区,可在扩容分区表后,用 fdisk/parted 新建分区并格式化挂载。
五、常见排错与建议
- 无法卸载分区:使用 fuser -mvki < 挂载点> 或 lsof < 挂载点> 定位并结束占用进程后再卸载。
- 缩容失败提示需检查:先执行 e2fsck -f,且目标大小必须大于已用空间。
- 扩展后容量未变化:确认已执行对应的文件系统扩展命令(resize2fs/xfs_growfs),并重新挂载。
- 非 LVM 扩容空间不相邻:需移动分区或备份后重建分区表;LVM 可直接在卷组内调配空间,更灵活。
- 风险提示:分区与文件系统操作存在数据丢失风险,务必完整备份、在维护窗口执行,并优先选择扩容而非缩容的方案。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux分区如何扩容与缩容
本文地址: https://pptw.com/jishu/754715.html
