我创建了一个虚拟磁盘文件 VM_1_Ubuntu.vdi 。然后我把它移到另一个文件夹中。我尝试更新虚拟机设置(右键单击虚拟机 - >设置 - >存储 - >控制器SATA选项卡, VM_1_Ubuntu.vdi 路径)。我想设置一条新路。
它说 无法注册已存在的硬盘
答案 0 :(得分:175)
我找到了解决方案
档案 - >虚拟媒体管理器 - >删除了现有图像(注意,我只从注册表中删除了它们。)
我遵循了这些步骤。
之后我可以更新VM设置中的路径。
答案 1 :(得分:94)
可以使用以下命令更改VDI文件上的UUID:
{{1}}
看起来这个命令为文件分配了一个新的“随机”UUID。但是,关于它的文档不多。
注意:ABC的解决方案是一种解决方法,仅当您要删除具有相同UUID的现有磁盘时才有效。如果那个是坏的,那么是的,删除它,问题解决了。但是,这不是我的情况,因为我需要使用两个磁盘。
答案 2 :(得分:21)
答案 3 :(得分:6)
这是解决方案 找到盒子的UUID
vboxmanage list hdds
然后删除
vboxmanage closemedium disk <uuid> --delete
答案 4 :(得分:4)
在某些情况下,首先需要发布,然后通过虚拟媒体管理器删除并重新添加
答案 5 :(得分:3)
如果没有可能使用虚拟媒体管理器删除或更改硬盘文件的路径(在我的情况下),那么:
答案 6 :(得分:2)
1-在任何文本编辑器中打开文件“ .vbox”和“ .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)
6-在任何文本编辑器中再次打开文件'.vbox'和'.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-重新启动计算机
答案 7 :(得分:2)
我非常感谢这里的建议。 Impaler和Oleg的评论帮助我提出了解决方案。
使用VBoxManage CLI。有一个带有--setlocation
选项的Modifymedium命令。
我建议打开VBox GUI(在VM VirtualBox Manager 6.0上)
-选择“虚拟媒体管理器”(我使用“文件”菜单)
-选择磁盘的“信息”按钮,会出现此错误
-复制UUID
注意:在下一步之前,我已从“存储”设置中删除了控制器。
-打开命令提示符并导航到.vdi文件的位置
键入VBoxMange以查看选项列表是一个好主意,但这是要运行的命令:
VBoxManage modifymedium
[在此处插入媒体类型] [UUID] --setlocation
[.vdi文件的完整路径]
最后,将控制器重新连接到任何VM,最好是要修复的VM。
答案 8 :(得分:1)
在奋斗了几天之后终于找到了一个完美的解决方案。
Mac OS 打开〜/ Library文件夹(在您的主目录中),然后删除VirtulBox文件夹。这将删除所有配置,您可以再次启动虚拟盒!
其他 在主目录中查找.virtualbox文件夹。删除它并打开VirtualBox应该可以解决您的问题。
干杯!
答案 9 :(得分:0)
对我有用的解决方案如下:
~\.VirtualBox\VirtualBox.xml
和~\.VirtualBox\VirtualBox.xml-prev
。<HardDisks>...</HardDisks>
部分以删除<HardDisk />
的重复条目。示例:
<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。其中之一无效,应将其删除。可以通过命中和审判来找出哪个无效-首先删除第二个条目并尝试;如果不起作用,请删除第三个条目。