如何使用 VBoxManage 更改 VirtualBox 中 VDI 映像的路径

如何使用 VBoxManage 更改 VirtualBox 中 VDI 映像的路径

我将整个 VirtualBox(版本 5.1.38)VM 目录从本地计算机复制到远程计算机。问题是 VM 中配置的硬盘仍然指向本地计算机上的目录路径。当我尝试再次将其添加为新硬盘时,出现以下错误 -

$ VBoxManage modifyvm "Ubuntu 18.04.3" --hda /new/path.vdi
VBoxManage: error: Cannot register the hard disk '/new/path.vdi' {fb872a9f-bf14-4119-a5a4-22b2f823fafc} because a hard disk '/old/path.vdi' with UUID {fb872a9f-bf14-4119-a5a4-22b2f823fafc} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBoxWrap, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 179 of file VBoxManageDisk.cpp

我搜索了手册,但找不到删除/取消注册旧硬盘或更新其路径的方法。如何更改硬盘的路径以指向新位置(或删除旧位置的条目并注册新位置)?

编辑:我无法访问远程机器上的 VirtualBox GUI。

答案1

在虚拟机存储设置中,删除旧磁盘,然后添加位于新位置的磁盘。

答案2

“问题是虚拟机中配置的硬盘仍然指向我本地机器上的目录路径”

  1. 编辑 .vbox 文件以包含虚拟机和虚拟机硬盘的新完整路径

  2. 根据情况使用 VBoxManage HDD 新路径进行编辑。

例子:

[root@afk base]# VBoxManage modifymedium disk 2a635efd-968e-4950-b826-7b9b64fd9c7a --setlocation=/VMs/base/alma8/alma8.vdi
Set new location of medium with UUID 2a635efd-968e-4950-b826-7b9b64fd9c7a finished
[root@afk base]#

相关内容