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

Linux LVM 根分区扩容实战:从 swap 回收 2GB 空间到 / 的 5 步操作

Linux LVM 根分区扩容实战:从 swap 回收 2GB 空间到 / 的 5 步操作

当服务器运行一段时间后,根分区空间不足成为许多系统管理员面临的常见问题。特别是在使用 LVM(Logical Volume Manager)的环境中,如何安全高效地调整分区结构显得尤为重要。本文将详细介绍如何将 swap 分区的空间回收并扩容至根分区的完整操作流程,同时强调操作中的风险点与回滚预案。

1. 操作前的安全检查与准备

在执行任何分区调整操作前,充分的准备工作是确保系统安全的关键。以下三项检查必须严格执行:

  1. 备份关键数据
    即使是最有经验的管理员也无法保证操作万无一失。建议至少备份以下内容:

    • /etc/fstab文件
    • 当前分区表(使用fdisk -llsblk输出)
    • 重要业务数据
  2. 检查当前 LVM 结构
    使用以下命令查看当前 LVM 配置:

    vgdisplay # 查看卷组信息 lvdisplay # 查看逻辑卷信息 pvs # 查看物理卷信息
  3. 评估 swap 使用情况
    通过free -hswapon --show确认 swap 的实际使用量。如果系统频繁使用 swap,直接移除可能导致性能问题。

注意:如果系统正在使用加密的 swap 或特殊的 swap 配置(如 swap 文件),本文的方法可能不适用。

2. 关闭并释放 swap 空间

确认准备工作完成后,第一步是安全地关闭 swap 分区。以下是详细步骤:

  1. 临时关闭 swap
    执行以下命令立即禁用 swap:

    swapoff -a
  2. 永久移除 swap 配置
    编辑/etc/fstab文件,注释或删除与 swap 相关的行。例如:

    sudo sed -i '/swap/s/^/#/' /etc/fstab
  3. 从 LVM 中移除 swap 逻辑卷
    如果 swap 是 LVM 逻辑卷,可以使用以下命令删除:

    lvremove /dev/vg_name/swap

    如果是独立的物理分区,则需要先将其转换为 LVM 物理卷:

    pvcreate /dev/sdXN # 将 XN 替换为实际的 swap 分区

3. 将释放的空间加入卷组

成功释放 swap 空间后,需要将这些空间加入到现有的卷组中:

  1. 扩展物理卷
    如果 swap 是独立分区,首先将其标记为物理卷:

    pvcreate /dev/sdXN
  2. 扩展卷组
    将新的物理卷空间添加到现有卷组:

    vgextend vg_name /dev/sdXN
  3. 验证可用空间
    使用vgdisplay确认卷组中新增的可用空间:

    vgdisplay vg_name | grep "Free PE"

4. 扩展根分区逻辑卷

现在可以将新增的空间分配给根分区逻辑卷:

  1. 扩展逻辑卷
    使用以下命令扩展根分区逻辑卷:

    lvextend -L +2G /dev/vg_name/root

    提示:可以使用-l +100%FREE参数将所有可用空间分配给根分区。

  2. 调整文件系统大小
    根据根分区使用的文件系统类型,选择相应的命令:

    • 对于 ext2/ext3/ext4:
      resize2fs /dev/vg_name/root
    • 对于 XFS:
      xfs_growfs /
  3. 验证扩容结果
    使用df -h确认根分区已成功扩容。

5. 操作后的验证与优化

完成扩容后,还需要进行一些后续工作:

  1. 系统稳定性测试
    重启系统并验证所有服务正常运行:

    reboot
  2. 内存使用监控
    由于移除了 swap,需要密切监控内存使用情况。可以考虑以下替代方案:

    • 在根分区上创建 swap 文件
    • 添加更多物理内存
  3. 性能基准测试
    比较操作前后的系统性能,特别是 I/O 性能:

    dd if=/dev/zero of=./testfile bs=1G count=1 oflag=direct

下表总结了操作前后的关键变化:

项目操作前操作后
根分区大小例如 10G增加 2G
swap 空间2G0G
卷组可用空间0G0G
系统内存压力依赖 swap完全依赖物理内存

在整个操作过程中,如果遇到任何意外情况,应立即停止操作并考虑以下回滚方案:

  1. 如果扩展文件系统失败,可以使用lvresize缩小逻辑卷
  2. 如果系统无法启动,可能需要使用救援模式恢复/etc/fstab配置
  3. 重要数据应确保有完整备份
http://www.jsqmd.com/news/1155646/

相关文章:

  • TRAE移动端:面向AI原生开发的轻量级移动IDE
  • STM32F103C8T6 水质监测系统:OLED显示、蜂鸣器报警与传感器驱动的4模块整合
  • 2026青海小包团深度游推荐榜:私家定制/小众秘境/省心省力,畅游大西北的灵活之选 - 企业推荐官【官方】
  • 「2026独家」直击Turnitin算法:英文论文AI率97%降至8%的硬核指南
  • 《坦克世界闪击战》二维码举报系统使用指南与游戏环境治理
  • 如何用3步告别网盘下载烦恼?开源工具LinkSwift深度解析
  • 英语
  • AutoDL使用CC-Switch配置本地云端协同Codex
  • Python 模拟 TOY 计算机:5 大部件 1000 单元内存的冯·诺伊曼架构实现
  • 1688店铺运营干货:代运营避坑指南,温州启灵助力源头商家全域破局 - GrowUME
  • okbiye AI 写作|文献综述一键生成神器,彻底告别文献堆砌熬夜难题
  • OpenCV 4.8.0 实战:MeanShift vs CamShift 算法对比,3大场景实测FPS与精度
  • 4/8/16位全加器 Verilog 设计演进:从行为级到超前进位ALU的性能分析
  • 高精度ADC采集系统设计与RISC-V微控制器应用
  • 2026年上海市闵行区配眼镜现状观察:五家门店在设备、防控与服务上的实际差异 - 林州鸿途网络
  • OpenGL 二维几何变换实战:4个关卡代码解析与矩阵堆栈应用
  • GaussianEditor v1.0 复现实战:RTX A5000 单卡 5 分钟完成 3D GS 场景编辑
  • 数据分析实战:从数据清洗到机器学习建模的完整工作流指南
  • 社群 活动评选适用:免费微信投票小程序合集|西瓜评选,腾讯投票参考测评 - 投票小程序
  • FreeRTOS SysTick 复用方案:2种方法实现 us 延时与 3个关键避坑点
  • ADS8665与MKV42F64VLH16高精度数据采集方案解析
  • 计算机毕设全流程实战指南:从选题到答辩的完整解决方案
  • 84_Python Flask Web框架入门
  • Python深入浅出:从入门到工程实践12
  • C++项目头文件路径冲突:重名文件夹问题的根源与CMake工程化解决方案
  • 2026武汉十年老牌黄金回收店,公安备案可查交易全程记录 - 名奢变现站
  • 2026中投华创真实评价:各阶段创业企业适配服务全解析 - 资讯快报
  • FMD FT61EC23-RB SOP14 单片机 I/O 配置实战:3类特殊功能与11条寄存器规则详解
  • Codex 用到什么程度,才有必要升级 Pro?从开发场景看 GPT 版本选择
  • 打破音乐枷锁:用ncmdumpGUI将网易云音乐NCM文件转化为通用格式