如何在VirtualBox中实现固定磁盘和动态磁盘之间的转换

VirtualBox允许您在创建新的虚拟硬盘文件时选择动态分配或固定大小的磁盘。动态分配的磁盘创建速度更快,并且可以增长到更大的大小。固定大小的磁盘使用起来可能更快,但一旦装满就不能再大了。如果愿意,您可以在两种格式之间转换并调整磁盘大小。

在继续之前,我们建议关闭虚拟机,而不是挂起并保存其状态。VirtualBox应该显示虚拟机已“关闭”。

第一步:找到VBoxManage命令并打开命令提示符

相关:加快虚拟机速度的完整指南

VirtualBox允许您将固定磁盘转换为动态磁盘或将动态磁盘转换为固定磁盘,但此选项不会在其图形界面中显示。相反,您必须使用VBoxManage.exe命令。

找到此命令以继续。在Windows上,您可以在VirtualBox程序目录中找到它,默认情况下该目录为C:\Program Files\Oracle\VirtualBox。如果您将VirtualBox安装到另一个目录,请改为查看那里。

打开命令提示符窗口。要执行此操作,请打开“开始”菜单,键入cmd,然后按Enter键。

在命令提示符下键入cd,后跟VBoxManage命令所在文件夹的路径。您需要用引号将它引起来。

您可以通过在命令提示符窗口中键入cd,然后将文件夹图标从文件管理器的地址栏拖放到命令提示符中来快速完成此操作。

如果您使用的是默认路径,它应该如下所示:

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

注意:这些说明假定您在Windows上使用的是VirtualBox。如果您在MacOS或Linux上使用VirtualBox,您只需打开终端窗口并正常运行vboxmanager命令,就像运行任何其他命令一样。

第二步:找到要转换的磁盘的路径

在命令提示符窗口中运行以下命令,以查看计算机上所有虚拟硬盘的列表:

VBoxManage.exe list hdds

查看列表并确定要转换的虚拟磁盘的文件路径。假设我们想要修改与名为“Windows”的虚拟机相关联的虚拟磁盘。正如我们在下面的输出中看到的,系统上该虚拟磁盘的路径是C:\Users\Chris\VirtualBox VMs\Windows\Windows.vdi。

第三步:转换虚拟磁盘

现在,您可以使用VBoxManage命令将虚拟磁盘从固定磁盘转换为动态磁盘,或从动态磁盘转换为固定磁盘。

要将虚拟磁盘从固定转换为动态,请运行以下命令:

VBoxManage.exe clonemedium disk "C:\path\to\source.vdi" "C:\path\to\destination.vdi" –variant Standard

例如,如果源磁盘位于C:\Users\Chris\VirtualBox VM\Windows\Windows.vdi,并且您要在同一文件夹中创建名为Windows-dynamic ic.vdi的新磁盘,则应运行:

VBoxManage.exe clonemedium disk "C:\Users\chris\VirtualBox VMs\Windows\Windows.vdi" "C:\Users\chris\VirtualBox VMs\Windows\Windows-dynamic.vdi" –variant Standard

要将虚拟磁盘从动态转换为固定,请运行以下命令:

VBoxManage.exe clonemedium disk "C:\path\to\source.vdi" "C:\path\to\destination.vdi" –variant Fixed

例如,如果源磁盘位于C:\Users\Chris\VirtualBox VM\Windows\Windows.vdi,并且您要在同一文件夹中创建名为Windows-fixed.vdi的新磁盘,则应运行:

VBoxManage.exe clonemedium disk "C:\Users\chris\VirtualBox VMs\Windows\Windows.vdi" "C:\Users\chris\VirtualBox VMs\Windows\Windows-fixed.vdi" –variant Fixed

第四步:删除旧虚拟磁盘

上面的命令只克隆现有磁盘。您最终得到了原始磁盘文件和新的磁盘文件。

首先,您需要从VirtualBox中实际删除现有的虚拟磁盘。在VirtualBox中,右键单击使用虚拟磁盘的虚拟机,然后选择“设置”。

选择“存储”查看连接的存储设备。右键单击原始VDI,然后选择“Remove Attach”(删除附件)。之后单击“确定”。

下面的过程将从您的驱动器中删除原始磁盘文件。警告:如果您尚未备份原始磁盘文件,则可能需要备份,以防此过程出现问题。

在命令提示符下,运行以下命令以查看计算机上所有虚拟磁盘的列表:

VBoxManage.exe list hdds

找到要删除的原始磁盘的UUID。您可以将其复制到剪贴板,方法是用鼠标左键选择它,然后右键单击它。

运行以下命令从VirtualBox的注册表中删除原始磁盘并将其删除。可以在命令提示窗口中单击鼠标右键以粘贴UUID。

VBoxManage.exe closemedium UUID --delete

第五步:重命名新磁盘

现在,您应该重命名新磁盘文件,使其与原始磁盘文件同名。只需在文件资源管理器或Windows资源管理器窗口中导航到它。

右键单击VDI文件,选择“重命名”,并将其更改为原始名称。例如,在这里,我们将创建的Windows-fixed.vdi文件重命名为Windows.vdi。

重命名磁盘后,从VirtualBox中删除旧的磁盘名称。单击VirtualBox中的文件>虚拟媒体管理器并找到重命名的磁盘的原始名称-它的左侧将显示一个黄色警告图标。右键单击它并选择“Remove”(删除)。再次单击“删除”确认并关闭“关闭”。

第六步:将磁盘插入VirtualBox

回到VirtualBox,右键单击与虚拟磁盘关联的虚拟机,然后选择“设置”。在“存储”下,右键单击SATA控制器,然后选择“添加硬盘”。

选择“选择现有磁盘”并浏览到您刚刚重命名的文件。

点击“确定”关闭虚拟机器设置窗口。现在您应该能够正常引导虚拟机了。它的磁盘可以是固定磁盘,也可以是动态磁盘-无论您将其转换为哪种磁盘。

相关文章