使用文件系统命令移动和克隆VirtualBox机器

我知道在Linux主机上克隆VirtualBox机器的两种方法,一种是使用VirtualBox GUI并导出和重新导入为设备(在VirtualBox的文件菜单中)。

另一种是通过克隆虚拟磁盘容器文件:

VBoxManage clonevdi /mnt/md1/original/root-fs.vdi /mnt/md1/cloned/root-fs.vdi 

(摘自http://forums.virtualbox.org/viewtopic.php?p=853#p858 )


编辑:这似乎不适用于已经是〜/ VirtualBox / VirtualBox.xml的一部分的VDI文件,我收到一条错误消息:

错误:无法注册硬盘'/mnt/md1/original/root-fs.vdi'与UUID {96a1462b-c30a-4911-a954-d9093122f083}因为硬盘'/ mnt / md1 / original / root-fs。 vdi'与UUID {96a1462b-c30a-4911-a954-d9093122f083}已存在于媒体registry中('/home/mit/.VirtualBox/VirtualBox.xml')


之后我将不得不创build一个新的虚拟机,并使用克隆的虚拟磁盘容器。

是否也可以通过使用文件系统命令复制虚拟磁盘文件和configuration文件来克隆虚拟机,然后手动完成其余的操作?

我不得不手动编辑〜/ VirtualBox / VirtualBox.xml并插入一个新的磁盘和一个新的机器:

我可以制作UUID吗?或者如何工作?

我非常喜欢这种硬核方法,因为它可以让我自由快速地备份,还原,移动或复制机器。 或者,有没有更好的方法来做到这一点?

您可以使用该命令更改vdi的UUID

 VBoxManage internalcommands setvdiuuid disk.vdi 

或者如果你使用VBox V4.x至less到4.0.10

  VBoxManage internalcommands sethduuid disk.vdi 

然后使用GUI导入新的“独特”磁盘。

如果你想克隆一个特定的VirtualBox机器,那么你可能最好使用它的设备,然后使用它。 要使设备使用GUI导出设备function或vboxmanage export命令。 然后可以使用GUI导入应用装置function或vboxmanage import命令导入生成的应用装置。

或者,您可以使用正确的uid给机器编辑“Virtualbox.xml”安装文件。 我非常喜欢将虚拟机从一台主机移到另一台主机上(两台主机都是64位的linux,不知道是否已经转移到了windows或者mac),请参阅http://sickel.net/blogg/?p=1581了解详情。

即使由于某种原因原始主机上的vboxmanager无法运行,也可以使用此function。