前言

当 Ubuntu 虚拟机的磁盘空间不足时,只需两步:扩展 VDI 磁盘文件,再调整分区和文件系统。本教程提供两种 VDI 扩容方案及详细操作步骤,助你快速解决空间不足问题。

一、VDI 扩容(两种方案)

方案1:通过克隆创建新 VDI(兼容性强)

1
2
3
4
5
6
7
8
9
10
11
# 进入VirtualBox安装目录(Windows)
cd 'C:\Program Files\Oracle\VirtualBox'

# 创建新VDI(目标大小为 200GB)
.\VBoxManage.exe createhd -filename "D:\NewUbuntu\new_ubuntu.vdi" -size 204800 -format VDI -variant Standard

# 克隆原VDI到新VDI(前面为原来的VDI,后面为扩大size的VDI)
.\VBoxManage.exe clonehd 'D:\原路径\ubuntu.vdi' 'D:\NewUbuntu\new_ubuntu.vdi' --existing

# 扩容新VDI(调整至目标大小)
.\VBoxManage.exe modifyhd 'D:\NewUbuntu\new_ubuntu.vdi' --resize 204800

virtualbox
操作后步骤:

  1. 在 VirtualBox 中卸载原 VDI,挂载新 VDI(设置→存储→移除旧盘→添加新盘)
  2. 启动 Ubuntu 验证数据完整性

方案2:直接扩容原 VDI(更快捷)

仅适用于动态分配的 VDI:

1
2
# 关闭虚拟机后执行(Windows)
.\VBoxManage.exe modifyhd "D:\原路径\ubuntu.vdi" --resize 204800

✅ 说明:动态分配的 VDI 支持直接扩容;固定分配需用方案1克隆转换

二、Ubuntu 分区调整(GParted 操作)

步骤1:安装 GParted

1
2
sudo apt update
sudo apt install gparted -y

步骤2:调整分区(重点!)

1
sudo gparted  # 启动图形工具
  1. 定位分区:
    virtualbox
  • /dev/sda1:系统主分区(需扩展),是我们原来的大小
  • linux-swap:交换分区(通常为 sda2/sda5)
  • unallocated:扩容后未分配的空间
  1. 删除交换分区:
  • 右键 /dev/sda5 分区 → Swapoff
    virtualbox
  • 删除 /dev/sda2
    virtualbox
  1. 扩展主分区:
  • 右键 /dev/sda1 → Resize/Move
  • 拖动滑块将 unallocated 空间合并到 sda1
  • 关键设置:
    • Align to 选择 MiB(解决无法拖动问题)
    • 保留约 1GB 空间给新交换分区(非强制)
      virtualbox
      virtualbox

      New size就是新的磁盘大小,Free space就是剩下的给交换空间的,这里给了1g(可能点不了resize,需要点一下Align to选MiB)

  1. 重建交换分区:
  • 右键剩余 unallocated → New → 分区类型选 Extended Partition
    virtualbox
  • 在新扩展分区上创建 linux-swap(文件系统选 linux-swap)
    virtualbox
  1. 应用变更:
  • 点击✅ → Apply(等待操作完成)
    virtualbox

步骤3:验证扩容

1
2
df -h      # 查看根分区容量是否增加
free -h # 检查交换分区是否生效

三、注意事项及常见问题

  • 必备操作:
  1. 所有 VDI 操作前关闭虚拟机
  2. 扩容前备份重要数据(防操作失误)
  3. Windows下需以管理员身份运行命令提示符
  • 常见错误:

  • UUID 冲突:克隆 VDI 后需在 VirtualBox 中卸载原盘(防冲突)

  • 分区无法调整:检查是否关闭交换分区(Swapoff)

  • 文件系统未扩展:扩容分区后需执行 sudo resize2fs /dev/sda1(ext4分区)

  • 替代方案:
    若GParted操作复杂,可使用终端扩展分区:

    1
    2
    3
    4
    5
    6
    sudo parted /dev/sda
    resizepart 1 # 1为主分区号
    Yes
    200GB # 输入目标大小
    quit
    sudo resize2fs /dev/sda1 # 扩展文件系统

四、结论

通过 VDI 扩容 + 分区调整,可高效解决 Ubuntu 虚拟机磁盘不足问题:

  1. VDI扩容优先选直接扩容(方案2),动态分配磁盘首选
  2. 固定分配磁盘必须克隆转换(方案1)
  3. 分区调整推荐 GParted 图形化操作,注意删除交换分区后再扩展主分区

📌 终极建议:创建虚拟机时选择 动态分配 并预留充足空间(如 200GB),避免频繁扩容!


©2018 - Felicx 使用 Stellar 创建
总访问 113701 次 | 本页访问 326
共发表 93 篇Blog · 总计 134.9k 字