Converting KVM virtual machines to VirtualBox
Recently the requirement came up to take a KVM based virtual machine and move it over to a VirtualBox image. Which turned out to be a fairly simple endeavour, and was fairly painless. The longest part was transferring over the 40 GB image from one machine to the other where the conversion could take place. The machine the image was coming from was only on a 100 Mbit/sec connection so that took a good hour.
Converting from KVM to VirtualBox for a FreeBSD image was pretty
simple, the VBoxManage command has a convertdd command that allows you to
convert from raw disk .img format to .vdi format.
VBoxManage convertdd KVM-image.img VB-image.vdi
After this, unfortunately, there is no way to to automatically convert over the
settings that the virtual machine had, such as the network cards, the memory
allocations and hard drive settings. You will have to go to VirtualBox and
create a new virtual machine and replicate all of the settings. Once that is
done make sure to select the same type of disk controller (SATA or IDE) so that
the drive will hopefully be assigned the same name in the device tree so that
you don't need to alter your /etc/fstab.
Hopefully everything boots without any issues. If not try creating a new
virtual machine, attach the converted image as a secondary drive and see if you
can mount the converted image within your new install. If so maybe transferring
the data using rsync or dump/restore would be an option.