VirtualBox无法注册已存在的硬盘

问题描述 投票:107回答:7

我创建了一个虚拟磁盘文件VM_1_Ubuntu.vdi。然后我把它移到另一个文件夹中。我尝试更新VM设置(右键单击虚拟机 - >设置 - >存储 - >控制器SATA选项卡,VM_1_Ubuntu.vdi路径)。我想设置一条新路。

它说无法注册已经存在的硬盘

virtualbox
7个回答
182
投票

我找到了解决方案

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

我按照这些步骤。

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

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


104
投票

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

 VBoxManage internalcommands sethduuid <file.vdi>

看来这个命令为文件分配了一个新的“随机”UUID。但是,没有太多的文件。


23
投票
  1. 从Oracle VM VirtualBox Manager中选择File
  2. 虚拟媒体管理器
  3. 从硬盘选项卡中删除文件(突出显示为黄色)。

4
投票

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


4
投票

如果使用虚拟介质管理器(在我的情况下)无法删除或更改硬盘文件的路径,则:

  1. 在任何文本编辑器中打开'.vbox'和'.vbox-prev'(如果存在)文件。
  2. 将元素'HardDisk'的'location'属性编辑到您的路径,例如:“d:/VM/VirtualBox/Win10/Win10.vmdk”(screenshot)。

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

以兆字节为单位更改SIZE,例如80000(80GB)

6 - 在任何文本编辑器中再次打开文件'.vbox'和'.vbox-prev'(如果存在)文件,并用原始值替换Ha​​rdDisk 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 - 重启机器


2
投票

我非常感谢这里的建议。 Impaler's和Oleg的评论帮助我将我的解决方案拼凑在一起。

使用VBoxManage CLI。有一个带有--setlocation选项的modifymedium命令。

我建议打开VBox GUI(在VM VirtualBox Manager 6.0上) - 选择“虚拟媒体管理器”(我使用了“文件”菜单) - 选择磁盘的“信息”按钮,为您提供此错误 - 复制UUID 注意:在下一步之前,我从“存储”设置中删除了控制器。 - 打开命令提示符并导航到.vdi文件的位置 键入VBoxMange以查看选项列表是个好主意,但这是运行的命令:

VBoxManage modifymedium [在此插入媒体类型] [UUID] --setlocation [.vdi文件的完整路径]

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

© www.soinside.com 2019 - 2024. All rights reserved.