打开虚拟机时报硬盘UUID 已经存在的解决办法

来源:互联网 发布:erp软件的前景 编辑:程序博客网 时间:2024/05/29 04:45
在virtualbox V4.1.12 创建了许多虚拟机后,把我的服务器C盘占用满了,发现系统变的很慢,有时候都没有响应了,于是决定把虚拟机磁盘镜像都移动到其他分区(容量很多),以为简单的拷贝过去,在virtualbox里删除原来的磁盘,再指向新的磁盘就可以了,结果出现错误信息:


Cannot register the hard disk 'F:\VirtualBox VMs\cl-11r2-rac2\cl-11r2-rac2.vdi' {cc59aac5-a2e6-4f39-b441-04d1ff29acd2} because a hard disk 'F:\VirtualBox VMs\cl-11r2-rac1\cl-11r2-rac1.vdi' with UUID {cc59aac5-a2e6-4f39-b441-04d1ff29acd2} already exists. 


这个问题其实就是说,配置文件里的指向还是我原来C盘的磁盘镜像。


所以只要修改成我现在分区里磁盘的UUID就好了,那么怎么能知道现在磁盘的UUID呢?打开命令行,进入virtualbox的安装目录,执行以下命令:



C:\Program Files\Oracle\VirtualBox>VBoxManage internalcommands sethduuid F:\hyp\
ubuntu14.04_temp\ubuntu14.04_temp.vdi
UUID changed to: 33fd3e0b-579b-4f0a-a13a-194657a4195d


看到UUID了吧,然后在拷贝的地方还有个配置文件,替换掉原来的UUID,就可以了,下面是我已经替换过的了,主要是两处


<HardDisks>
        <HardDisk uuid="{33fd3e0b-579b-4f0a-a13a-194657a4195d}" location="ubuntu14.04_temp.vdi" format="VDI" type="Normal"/>

 </HardDisks>

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

<StorageController name="SATA &#x63A7;&#x5236;&#x5668;" type="AHCI" PortCount="1" useHostIOCache="false" Bootable="true" IDE0MasterEmulationPort="0" IDE0SlaveEmulationPort="1" IDE1MasterEmulationPort="2" IDE1SlaveEmulationPort="3">
        <AttachedDevice type="HardDisk" port="0" device="0">
          <Image uuid="{33fd3e0b-579b-4f0a-a13a-194657a4195d}"/>
        </AttachedDevice>
      </StorageController>

这样再去添加新磁盘吧,开机就可以了。

0 0
原创粉丝点击