背景
网上很多文章介绍virtualbox迁移vdi都是基于windows去讨论的,基本上涉及到一些改配置的东西,基本跟ubuntu不共用,这里是基于操作系统ubuntu 22.04,virtualbox版本:v6.1.38_Ubuntu,当然其他版本应该也是兼容的;
如何迁移
首先,我们直接复制vdi文件,然后通过设置virtualbox虚拟机的存储,注册新的复制的磁盘是不行的,会报错“A hard disk with UUID {966f9f2d-f670-42ca-8ac1-245b3d424339} or with the same properties ('D:/virtualbox/vb_winxp/winxp.vdi') is already registered” ,根本原始是虚拟机已经注册了这个uuid的磁盘,不可以重复注册;
如何更改vdi的uuid呢,其实很简单,virtualbox下安装,也会安装VBoxManage这个程序,ubuntu下比windows方便很多,我们复制vdi的时候直接用VBoxManage clonevdi 这个命令就可以了,第一个参数是旧vdi路径,第二个参数是新vdi路径,执行命令之后如下图所示(执行命令前必须关闭虚拟机,否则会报错):
这时候新复制的vdi就被赋予了新的uuid,这时候再去virtualbox的设置->存储->控制器->添加新虚拟盘:
这时候点击去就能看到刚刚复制的新的vdi了,在Not attached的列表里,选择保存即可,这时候启动虚拟机就是新的复制的vdi了,大功告成。