当前位置: 首页 > news >正文

Rocky Linux 9.2:从 /home 分区释放 10G 空间扩容到 / 根分区

在日常运维中,常见的问题之一就是安装的软件过多,导致根分区(/)空间不足,而其他分区(例如 /home)却有大量闲置空间。本文将演示如何在 Rocky Linux 9.2 上,通过 LVM(Logical Volume Manager) 技术,把 /home 分区的部分空间释放出来,再扩容到 / 根分区。

1. 环境说明

通过 df -h 查看当前磁盘空间:

# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rl-root     70G   26G   45G  37% /
/dev/mapper/rl-home     45G  1.8G   43G   4% /home
/dev/sda2             1014M  246M  769M  25% /boot
/dev/sda1              599M  7.0M  592M   2% /boot/efi

可以看到:

  • / 根分区:70G(未来可能不足)

  • /home:45G,其中使用仅 1.8G,有大量富余空间

目标:/home 分区释放 10G,扩容给 / 根分区

2. 核心思路

  1. 备份 /home 数据(安全起见)。

  2. 缩小 /home 的逻辑卷大小(减少 10G)。

  3. 把释放出来的空间重新分配给 / 的逻辑卷。

  4. 在线扩容 / 文件系统。

由于系统采用的是 LVM 管理,所以可以动态调整分区大小,操作较为灵活。

3. 操作步骤

3.1 备份 /home 数据

虽然缩容是安全操作,但存在风险,建议提前备份:

rsync -avx /home/ /root/backup_home/

3.2 卸载 /home

缩小分区之前需要卸载挂载点:

umount /home

如果提示 “busy”,可以强制卸载:

umount -l /home

3.3 检查文件系统并缩小 /home

先运行文件系统一致性检查(XFS 不支持缩容,通常 Rocky Linux 的 /home 用的是 XFS 文件系统,所以必须先删除再重建,这里假设你的 /homeXFS):

lvremove /dev/rl/home

⚠️ 注意:此操作会删除 /home 分区,之前的备份就派上用场了。

3.4 释放空间并扩容 /

确认 rl 卷组有空闲空间:

vgdisplay rl | grep "Free"

将空闲空间(含刚释放的 45G)中的10G加给 / 根分区:

lvextend -L +10G /dev/rl/root

如果你想把 所有空闲空间都给根分区

lvextend -l +100%FREE /dev/rl/root

扩展文件系统(XFS):

xfs_growfs /

3.5 重新创建 /home

/home 分配一个较小的逻辑卷,比如 35G:

lvcreate -L 35G -n home rl
mkfs.xfs /dev/rl/home
mount /dev/rl/home /home

3.6 恢复数据

将之前备份的数据恢复到新的 /home

rsync -avx /root/backup_home/ /home/

4. 验证

再次df -h查看分区情况:

期望结果:

/dev/mapper/rl-root   80G   26G   54G  33% /
/dev/mapper/rl-home   35G  1.8G   33G   6% /home

可以看到 / 根分区增加了 10G,而 /home 减少了 10G。


5. 注意事项

  1. 文件系统类型很关键

    • XFS 不支持在线缩容,只能删除 LV 再重建。

    • EXT4 可以用 resize2fs 在线缩小。

  2. 务必做好备份

    • 特别是缩容和删除 LV 前,必须备份 /home 数据。

  3. 分配策略

    • 如果 /home 空间基本闲置,可以考虑只留 10~20G,剩余全部分配给 /

6. 总结

通过 LVM 的动态分区管理,我们可以很方便地调整 Rocky Linux 的磁盘空间分配。本文展示了如何 /home 分区释放 10G 空间并扩容 / 根分区 的完整流程:

  • 备份数据

  • 删除 /home LV

  • 扩容 /

  • 重建 /home

这种方式不仅解决了根分区不足的问题,也充分利用了磁盘资源。

http://www.dtcms.com/a/334346.html

相关文章:

  • AI可行性分析:数据×算法×反馈=成功
  • 【P40 6-3】OpenCV Python——图像融合(两张相同属性的图片按比例叠加),addWeighted()
  • 软考 系统架构设计师系列知识点之杂项集萃(124)
  • 池式结构之连接池
  • pwn定时器,ARM定时delay 外部中断用函数指针(统一)day55,56
  • 数据结构:满二叉树 (Full Binary Tree) 和 完全二叉树 (Complete Binary Tree)
  • 安卓定制开机动画的bootanimation.zip的注意点
  • (论文阅读)FedViT:边缘视觉转换器的联邦持续学习
  • 美国服务器环境下Windows容器工作负载基于指标的自动扩缩
  • Java驾驭金融风暴:大数据+机器学习重塑资产配置与风险平衡
  • CPP多线程3:async和future、promise
  • 【八股】计网-计算机网络-秋招
  • 让数据库交互更优雅:MyBatis核心机制深度解析(附实战视频教程)
  • 【DL学习笔记】常用数据集总结
  • 详解flink java基础(二)
  • 使用nvm查看/安装node版本
  • Spring AI 进阶之路01:三步将 AI 整合进 Spring Boot
  • 【科研绘图系列】R语言绘制雷达图
  • MySQL 配置性能优化赛技术指南
  • MySQL 配置性能优化赛技术文章
  • 从 MySQL 5.7 迁移到 8.0:别让 SQL 文件 “坑” 了你
  • 【笔记】动手学Ollma 第一章 Ollama介绍
  • 玉米及淀粉深加工产业展|2026中国(济南)国际玉米及淀粉深加工产业展览会
  • 数据清洗处理
  • 系统思考—啤酒游戏经营决策沙盘认证
  • 如何用 BCG 矩阵与生命周期模型联合做产品组合管理
  • GTSAM中iSAM2 实时优化后做全局 LM/GN 优化时如何检测并剔除错误(outlier)因子约束详解和工程应用
  • MySQL深度理解-Innodb底层原理
  • 设计模式之【快速通道模式】,享受VIP的待遇
  • Java基础 8.16