温馨提示×

Ubuntu分区后如何扩展空间

小樊
35
2025-11-16 14:38:07
栏目: 云计算

Ubuntu 分区后扩展空间的实用步骤

一、操作前准备与风险

  • 备份重要数据(扩容涉及分区表与文件系统变更,存在数据丢失风险)。
  • 确认当前磁盘与分区布局:使用命令查看设备与挂载点。
    • 查看块设备与分区:lsblk
    • 查看文件系统与挂载:df -hT
    • 查看详细分区表:sudo parted -l
  • 虚拟机场景需先在虚拟化平台扩展虚拟磁盘容量,再进入系统扩容分区与文件系统。

二、场景一 LVM 根分区扩容(最常见)

  • 适用特征:根分区位于 /dev/mapper/ubuntu–vg-* 或 /dev/ubuntu-vg/*,即使用 LVM
  • 步骤
    1. 扩展底层分区(若底层分区未变大,先扩分区)
      • 查看并调整分区大小:sudo parted /dev/sda
        • 在 parted 中执行:print 查看;resizepart 3 100% 将分区 3 扩展到最大(示例以 sda3 为 LVM 物理卷所在分区)。
    2. 让 LVM 识别新增空间
      • 刷新物理卷:sudo pvresize /dev/sda3
    3. 扩展逻辑卷
      • 将卷组全部空闲空间给根逻辑卷:sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
    4. 扩展文件系统
      • 若是 ext2/ext3/ext4sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
      • 若是 xfssudo xfs_growfs /(以实际挂载点为准)
    5. 验证
      • df -h / 应显示根分区已增大。

三、场景二 非 LVM 的 ext4 分区扩容(传统分区)

  • 适用特征:根分区或数据分区为普通分区(如 /dev/sda2),文件系统为 ext4
  • 步骤
    1. 虚拟机先在平台扩展虚拟磁盘;物理机则新增磁盘或替换更大磁盘。
    2. 扩展分区
      • 推荐工具 growpart(云镜像常见):sudo growpart /dev/sda 2
      • 或使用 partedsudo parted /dev/sdaresizepart 2 100%
    3. 扩展文件系统
      • ext4sudo resize2fs /dev/sda2
    4. 验证
      • df -h 查看分区容量是否已变大。

四、场景三 新增磁盘并入 LVM 卷组

  • 适用特征:新增一块磁盘(如 /dev/vdb),希望并入现有 LVM 卷组以扩容根分区或其他逻辑卷。
  • 步骤
    1. 初始化新磁盘为物理卷:sudo pvcreate /dev/vdb
    2. 扩展卷组:sudo vgextend ubuntu-vg /dev/vdb
    3. 扩展逻辑卷(示例为根分区):sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
    4. 扩展文件系统
      • ext4sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
      • xfssudo xfs_growfs /
    5. 验证:df -hsudo vgdisplay 查看空间变化。

五、常见问题与注意事项

  • 未分配空间必须与目标分区相邻(同一磁盘上、其后方连续),否则需先移动分区,建议用 GParted Live 操作。
  • 扩展分区前请关闭 swap(如 /dev/sda5 为 swap):sudo swapoff -a,调整完再 sudo swapon -a;若调整了 swap 分区或位置,需同步更新 /etc/fstab 中的 UUID
  • 文件系统类型不同,扩容命令不同:ext2/3/4 用 resize2fsxfs 用 xfs_growfs(且以挂载点执行)。
  • 虚拟机扩容务必先在宿主平台完成磁盘扩容,再进入系统执行分区与文件系统调整。
  • 重要数据请先完整备份;对关键业务系统建议在维护窗口操作,并确保有回滚方案。

0