VirtualBox 无法注册已存在的硬盘

我创建了一个虚拟磁盘文件 VM _ 1 _ Ubuntu. vdi。然后我把它放到另一个文件夹里。我尝试更新 VM 设置(右键单击虚拟机-> 设置-> 存储-> Controller SATA 选项卡,VM _ 1 _ Ubuntu. vdi路径)。我想开辟一条新的道路。

它说 无法注册已存在的硬盘
148304 次浏览

我找到了解决办法

文件-> 虚拟媒体管理器-> 删除现有的图像(注意,我只从注册表中删除了它们)。

我按照这些步骤。

http://www.webdesignblog.asia/software/virtualbox-moving-vdi-file-re-linking-guest/#sthash.1QOHeiw5.dpbs

之后,我可以更新 VM 设置中的路径。

可以使用以下命令更改 VDI 文件上的 UUID:

 VBoxManage internalcommands sethduuid <file.vdi>

这个命令似乎为文件分配了一个新的“随机”UUID。

在某些情况下,首先您需要发布,然后删除和重新添加通过虚拟媒体管理器

如果不能使用 Virtual Media Manager (在我的例子中)删除或更改硬盘文件的路径,那么:

  1. 在任何文本编辑器中打开‘ 。 vbox’和’.vbox-prev’(如果存在)文件。
  2. 将元素‘ HardDisk’的‘ location’属性编辑到您的路径中,例如: “ d:/VM/VirtualBox/Win10/Win10.vmdk”(截图)。
  1. 从 VirtualBox 管理器中选择“文件”
  2. 虚拟媒体管理器
  3. 从“硬盘”选项卡中删除文件(突出显示的黄色)。

1-打开文件。还有。Vbox-prev’(如果存在)文件,并替换 HardDisk uuid 的第一个字符(注意在步骤6中恢复此更改)

例子: nano /home/virtualbox/WindowsServer/WindowsServer.vbox

改变:

<HardDisks>
<HardDisk uuid="{3ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

致:

<HardDisks>
<HardDisk uuid="{2ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

2-重新启动机器

4-停止虚拟机(如果启动)

5-终点站:

su vbox
cd /home/virtualbox/WindowsServer/
VBoxManage modifyhd WindowsServer.vdi --resize SIZE
exit
exit

更改以兆字节为单位的数字的大小,例如80000(80GB)

重新打开文件。还有。Vbox-prev’(如果存在)文件,并将 HardDisk uuid 的第一个字符替换为原始值

例子: nano /home/virtualbox/WindowsServer/WindowsServer.vbox

改变:

<HardDisks>
<HardDisk uuid="{2ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

致:

<HardDisks>
<HardDisk uuid="{3ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

7-重启机器

我真的很感谢这里的建议。穿刺者和奥列格的意见帮助我把我的解决方案拼凑在一起。

使用 VBoxManageCLI。

我建议打开 VBox GUI (在 VM VirtualBox Manager 6.0上) < br > - 选择“ Virtual Media Manager”(我使用了文件菜单) < br > - 选择磁盘的“信息”按钮,给出这个错误 < br > - 复制 UUID < br > 注意: 在下一步之前,我从“ Storage”设置中删除了控制器 - 打开命令提示符并导航到. vdi 文件 < br > 的位置 输入 VBoxMange 查看选项列表是一个好主意,但是这是要运行的命令:

VBoxManage modifymedium[在这里插入介质类型][ UUID ] --setlocation[ . vdi 文件的完整路径]

最后,将控制器重新连接到任何 VM ——最好是您想要修复的 VM。

对我有效的解决方案如下: < br >

  1. 确保 VirtualBox 管理器未运行。
  2. 备份文件 ~\.VirtualBox\VirtualBox.xml~\.VirtualBox\VirtualBox.xml-prev
  3. 编辑这些文件来修改 <HardDisks>...</HardDisks>部分以删除 <HardDisk />的重复条目。
  4. 现在运行 VirtualBox Manager。

例如:

  <HardDisks>
<HardDisk uuid="{38f266bd-0959-4caf-a0de-27ac9d52e3663}" location="~/VirtualBox VMs/VM1/box-disk001.vmdk" format="VMDK" type="Normal"/>
<HardDisk uuid="{a6708d79-7393-4d96-89da-2539f75c5465e}" location="~/VirtualBox VMs/VM2/box-disk001.vmdk" format="VMDK" type="Normal"/>
<HardDisk uuid="{bdce5d4e-9a1c-4f57-acfd-e2acfc8920552}" location="~/VirtualBox VMs/VM2/box-disk001.vmdk" format="VMDK" type="Normal"/>
</HardDisks>

请注意,在上面的片段中,最后两个条目引用相同的 VM,但是有不同的 uuid。其中一个是无效的,应该删除。哪一个是无效的可以通过点击和试用找到-首先删除第二个条目并尝试; 如果它不工作,删除第三个条目。

经过多天的努力,终于找到了一个完美的解决方案。

< strong > Mac OS 打开 ~/Library 文件夹(在您的主目录中)并删除 VirtulBox 文件夹(移动到安全位置)。这将删除所有配置,您可以重新启动虚拟框!译注:

< 强 > 其他 在你的主目录中寻找. viralbox 文件夹。删除它并打开 VirtualBox 应该可以解决你的问题。

干杯!

下面是解决这个问题的方法 找到 box

的 UUID
vboxmanage list hdds

然后删除

vboxmanage closemedium disk <uuid> --delete