Export VirtualBox snapshots

我觉得挺奇怪的 —— VirtualBox 怎么不弄个一键连同快照导出虚拟机的功能?这功能应该很有用。

网上搜了一圈,也没人给个系统的指导。没办法,只好自己摸索着做。其实,导出快照没我想的那么复杂,也就是拷贝和修改一下配置文件。具体步骤是:

  1. 从源机拷出某个虚拟机的整个目录。
  2. 在目标机器上创建跟源虚拟机一样配置的新虚拟机。
  3. 把拷出的目录里所有文件放到新虚拟机所在的目录。用源虚拟机的硬盘文件覆盖新虚拟机的硬盘文件,同时有个 Name_Of_Vbox.vbox 的文件也被覆盖。.vbox 有快照文件们的树形结构信息及所在位置的信息。快件文件在 Snapshots 子目录下, .vbox 里存储的是相对位置,在新虚拟机里仍然使用。.vbox 是个 xml 格式的文件,不妨打开来看一下,里面还有一个 machine uuid,把它拷出来。
  4. 打开 VirtualBox.xml,它是 VirtualBox 的配置文件,在 Fedora 下它保存在 ~/.VirtualBox/ 目录下,新建的虚拟机的 machine uuid 和源虚拟机的 machine uuid 通常是不匹配的,那就用刚刚从 .vbox 里拷出来的 machine uuid 替换。

这样源虚拟机连同快照文件就迁移到目标机器上了。这时尝试启动虚拟机或许会提示如虚拟网卡不存在之类的错误,一般是因为源机和目标机器环境不一致或所用 VirtualBox 版本不一致所引起的,问题不大,只要重新给虚拟机一张虚拟网卡就行了。

Leave a Reply

Your email address will not be published. Required fields are marked *