Ubuntu 虚拟机容量扩容

作者: adm 分类: linux 发布时间: 2025-04-20

具体操作步骤

第一步:在 VMware Fusion 中扩大虚拟磁盘

关闭 Ubuntu 虚拟机(必须关机)
在 VMware Fusion 菜单:虚拟机 → 设置 → 硬盘(SCSI)
把磁盘大小调整为你想要的大小(比如 100G)
点击 应用,然后启动 Ubuntu
注意:VMware 里显示的是你分配的总大小,如果原先只有 20G,现在改成 100G,实际 Mac 上的 .vmdk 文件也会逐渐变大到 100G。
第二步:在 Ubuntu 中扩展分区(关键步骤)

启动 Ubuntu,在终端执行:

# 1. 查看磁盘分区情况
lsblk
你应该能看到类似这样的输出:

text
nvme0n1     100G
├─nvme0n1p1  952M  /boot/efi
├─nvme0n1p2   19G  /
└─nvme0n1p3   80G  (未使用)

或者只有 nvme0n1p2 是 19G,后面有未分配的空间。

使用图形化工具扩展分区(最简单)

# 安装 GParted(如果没有的话)
sudo apt install gparted -y

# 启动 GParted
sudo gparted

在 GParted 中:

选择 /dev/nvme0n1
找到 /dev/nvme0n1p2(根分区)
右键 → Resize/Move
把滑块拖到最右边,使用所有可用空间
点击 Apply(绿色对勾)
第四步:确认扩容成功

df -h /

现在应该能看到根分区变大了。

如果没有未分配空间(lsblk 只显示一个分区)

如果 lsblk 只显示一个 nvme0n1p2 正好是 20G,说明 VMware 里的磁盘大小没改过,或者改了但 Linux 内核没识别到。

解决方法:

# 重新扫描 SCSI 总线
echo 1 | sudo tee /sys/class/block/nvme0n1/device/rescan

# 查看磁盘实际大小
sudo fdisk -l /dev/nvme0n1

如果 /dev/nvme0n1 显示的大小大于 20G,说明已经扩大了,只是分区没扩大,用上面的 GParted 方法即可。

命令行方式(适合不愿装图形工具的用户)

如果你愿意用命令行,以下是步骤(同样需要 growpart 和 resize2fs):

# 1. 安装 cloud-guest-utils(提供 growpart)
sudo apt update
sudo apt install cloud-guest-utils -y

# 2. 扩展分区表(让 nvme0n1p2 占满剩余空间)
sudo growpart /dev/nvme0n1 2

# 3. 扩展文件系统(让 Ubuntu 认到新空间)
sudo resize2fs /dev/nvme0n1p2

# 4. 检查结果
df -h /
输出示例:

text
/dev/nvme0n1p2  406G  19G  387G  /   # 现在根分区应已超过 400G

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!