如何在 VirtualBox 或 VMware 中扩大虚拟机的磁盘

已发表: 2022-08-16
硬盘盘片和臂头。
特纳特/Shutterstock.com

在 VirtualBox 或 VMware 中创建虚拟硬盘时,需要指定最大磁盘大小。 如果您以后想在虚拟机硬盘上有更多空间,则必须扩大虚拟硬盘和分区。

请注意,您可能希望在执行这些操作之前备份您的虚拟硬盘文件——总是有可能出现问题,所以备份总是好的。 然而,这个过程对我们来说很好。

更新:在 VirtualBox 中使用虚拟媒体管理器

VirtualBox 6 添加了用于扩大和调整虚拟磁盘大小的图形选项。 要访问它,请在 VirtualBox 主窗口中单击文件 > 虚拟媒体管理器。

在列表中选择一个虚拟硬盘,然后使用窗口底部的“大小”滑块更改其大小。 完成后单击“应用”。

您仍然必须扩大磁盘上的分区以利用额外的空间。 即使磁盘大小增加,分区仍保持相同大小。 有关扩大分区的更多信息,请参阅以下说明。

使用命令行在 VirtualBox 中扩大虚拟磁盘

要在 VirtualBox 中放大虚拟磁盘,您需要使用命令提示符窗口中的 VBoxManage 命令。 首先,关闭虚拟机——确保其状态设置为 Powered Off,而不是 Saved。

注意:在继续之前,如果您使用 VirtualBox 中的快照功能,您还应该删除与虚拟机关联的所有快照。 这将确保您正在修改正确的虚拟磁盘文件,并且之后一切都会正常工作。

当前安装在示例 PC 上的虚拟机。

其次,从开始菜单打开命令提示符窗口并将目录更改为 VirtualBox 的程序文件文件夹。 运行命令:

 cd "C:\Program Files\Oracle\VirtualBox" 

使用“cd”命令将目录设置到 Virtualbox 文件夹的命令提示符。

以下命令将在位于“C:\Users\Equinox\VirtualBox VMs\Windows 10\Windows 10.vdi”的 VirtualBox 虚拟磁盘上运行。 它会将虚拟磁盘的大小调整为 81920 MB (80 GB)。

 VBoxManage modifyhd "C:\Users\Chris\VirtualBox VMs\Windows 10\Windows 7.vdi" --resize 81920
注意:在上面的命令中调整大小之前使用两个破折号。

将上面命令中的文件路径替换为要调整大小的 VirtualBox 磁盘的位置,并将数字替换为要将图像放大到的大小(以 MB 为单位)。

注意:在 2019 年发布的 VirtualBox 6.0+ 中,您可能需要改用以下命令:
 VBoxManage 修改中盘 "C:\Users\Equinox\VirtualBox VMs\Windows 10\Windows 10.vdi" --resize 81920 

命令提示符命令调整虚拟驱动器的大小。

请注意,此过程不会扩大虚拟硬盘上的分区,因此您将无法访问新空间 - 有关更多信息,请参阅下面的扩大虚拟机的分区部分。

在 VMware 中扩大虚拟磁盘

要在 VMware 中放大虚拟机的硬盘,请关闭虚拟机,右键单击它,然后选择虚拟机设置。

在列表中选择虚拟硬盘设备,单击实用程序按钮,然后单击展开以展开硬盘。

输入更大的最大磁盘大小,然后单击展开按钮。 VMware 将增加您的虚拟磁盘的大小,尽管其分区将保持相同的大小 - 有关扩大分区的信息,请参见下文。

扩大虚拟机的分区

您现在有一个更大的虚拟硬盘。 但是,您的虚拟硬盘上的操作系统分区大小相同,因此您将无法访问该空间中的任何部分。

磁盘管理实用程序将显示虚拟驱动器上可用的新空间。

您现在需要扩展客户操作系统的分区,就像您在物理计算机的真实硬盘上扩展分区一样。 您不能在来宾操作系统运行时扩大分区,就像在计算机上运行 Windows 时不能扩大 C:\ 分区一样。

您可以使用 GParted 实时 CD 来调整虚拟机分区的大小 — 只需在虚拟机中启动 GParted ISO 映像,您就会被带到实时 Linux 环境中的 GParted 分区编辑器。 GParted 将能够扩大虚拟硬盘上的分区。

首先,从这里下载 GParted live CD 的 ISO 文件。

通过进入虚拟机的设置窗口,选择您的虚拟 CD 驱动器,然后浏览到计算机上的 ISO 文件,将 ISO 文件加载到您的虚拟机中。

插入 ISO 映像后启动(或重新启动)您的虚拟机,虚拟机将从 ISO 映像启动。 GParted 的 live CD 会在启动时询问您几个问题——您可以按 Enter 跳过它们以获取默认选项。

启动 GParted 后,查看虚拟驱动器的分区方式。

GParted 将向您展示虚拟驱动器的分区方式。

警告:并非所有操作系统都会产生以这种方式分区的驱动器,但是您很有可能会看到类似的情况。 确保在执行此操作时注意现有分区 - 不小心调整大小、重新格式化或删除分区可能会导致虚拟机无法运行。

分区的布置非常重要。 驱动器上有三个分区,外加 30 GB 的未分配空间。

第一个分区 sda1 是引导扇区或 EFI 系统分区。 第二个分区 sda2 是“主分区”。 它是分配给 Windows 操作系统的空间——也就是我们要扩展的分区。 上图中用红色箭头和红色框标注。

提示:一般来说,您可以通过大小来识别主分区——它将接近您创建的原始虚拟驱动器的总大小。

请务必注意,在您要调整大小的分区和我们之前创建的未分配空间之间直接存在第三个分区 sda3。 sda3 的位置意味着我们不能仅仅将 sda2 扩展到未分配的空间。 第三个分区确实挡住了路,我们必须先移动它。

右键单击 sda3,然后单击“调整大小/移动”。

注意:它可能不适合您。 您只是在寻找主分区和未分配空间之间的任何分区。

将出现一个新窗口,可让您移动分区。

sda3 之后没有多少可用空间。

注意屏幕显示的内容。 msftres 分区后面有 30,722 兆字节的空间。 如果你想让 sda3 不碍事,我们需要将 sda3 一直移动到可用空间的另一边。 单击“Free Space Preceding”框,在字段中输入“30722”,然后单击“Resize/Move”。 它应该如下所示:

现在 sda3 排队等待移动到未分配空间的末尾,我们也可以设置 sda2 调整大小。 右键单击 sda2,然后单击“调整大小/移动”。

在“新尺寸”字段中输入“最大尺寸”后的数字,或将滑块的右侧一直拖到右侧。

在“新尺寸”框中输入“最大尺寸”的值。

如果你做对了,你现在应该在“新尺寸”框中输入“最大尺寸”的值。 单击“调整大小/移动”以完成更改。

单击顶部附近的绿色复选标记按钮以应用您所做的所有更改。 应用更改可能需要几分钟时间,具体取决于您排队的移动或调整大小操作的数量以及计算机的速度。 如果您必须等待一段时间,请不要惊慌。

调整大小操作完成后,重新启动虚拟机并删除 GParted ISO 文件。 Windows 将检查您的虚拟机中的文件系统以确保其正常工作 - 不要中断此检查。

不要跳过 Windows 在调整分区大小后运行的任何修复或 chkdsk 过程。

虚拟机的分区现在将占用整个虚拟硬盘,因此您可以访问额外的空间。


请注意,有更简单的方法可以获得更多存储空间——您可以从虚拟机的设置窗口中添加第二个虚拟硬盘。 您可以在单独的分区上访问另一个硬盘的内容——例如,如果您使用的是 Windows 虚拟机,则可以通过虚拟机内的不同驱动器号访问另一个虚拟硬盘。