在使用virtualbox虛拟機軟體的時,可能您和部落客一樣,不想重複安裝一個相同的系統。是以直接拷貝虛拟硬碟鏡像檔案(.vdi 檔案)是最友善的建立虛拟系統的方式。
但是僅僅這樣是不夠的,您在建立過程中可能會遇到如下的情況。
打開 虛拟硬碟 F:\VirtualBox VMs\xp4.vdi 失敗.
Cannot register the hard disk 'F:\VirtualBox VMs\xp4.vdi' {e4fa9f4f-9450-4609-b0d1-e56b93b7579c} because a hard disk 'F:\VirtualBox VMs\xp3.vdi' with UUID {e4fa9f4f-9450-4609-b0d1-e56b93b7579c} already exists.
傳回 代碼:E_INVALIDARG (0x80070057)
元件:VirtualBox
界面:IVirtualBox {3b2f08eb-b810-4715-bee0-bb06b9880ad2}
被召者 RC:VBOX_E_OBJECT_NOT_FOUND (0x80BB0001)
根據錯誤提示,原來我們直接複制vdi檔案是複制了一個完全相同的虛拟硬碟鏡像檔案,包括硬碟的UUID。相同uuid在virtualbox是不允許的。是以解決的方法是改變新複制vdi虛拟硬碟鏡像檔案的uuid。
最新virtualbox可以用這個指令:VBoxManage internalcommands sethduuid New.vdi
如果您使用的是VirutalBox 3.2 之前版本,指令格式為:VBoxManage internalcommands setvdiuuid New.vdi
當然,如果要複制一個vdi檔案,最好是複制的同時可以對新的虛拟硬碟鏡像檔案重新生成新的uuid。