This guide is aimed at helping you migrate your virtual machines from VirtualBox to VMware. By default, VirtualBox utilizes the VDI (Virtual Disk Image) format for storage, whereas VMware uses the VMDK format, this can make migrating from one hypervisor to another quite cumbersome as you will have to reinstall/reconfigure your VM’s.
However, we can take advantage of one of the most useful features VirtualBox has to offer in regards to managing and maintaining virtual machines. VBoxManage is a utility that is prepackaged with VirtualBox and can be invoked through the command line or Powershell on Windows or the terminal on Linux.
It gives us total control of our virtual machines and environment directly from the command line/terminal. The feature we will be utilizing is the clonehd functionality, that allows us to clone our virtual machine disk and in addition to cloning, we can specify the output format of the new virtual disk image.
To learn more about VBoxManage and it’s functionality you can access the relevant man pages here: https://www.virtualbox.org/manual/ch08.html
The VBoxManage utility can be found in the following directory on Windows: “C:\Program Files\Oracle\VirtualBox”. You can access the utility on Linux directly from your terminal as the path to the binary will be automatically added during the installation.
In my case, I am running windows and I will be using Powershell to run the commands. The first step is to open up a Powershell session with administrative privileges within the VirtualBox directory or you can navigate to the directory manually.
As you can see in the image above, a listing of the directory reveals the VBoxManage executable. You will also need to take note of the directory of the VDI file you want to convert.
The conversion process will take 2-5 minutes or more based on the size of the VDI or the drive you are trying to clone.
In this example, I will be converting my Parrot OS VDI previously setup on VirtualBox to a VMDK suitable for operation on VMware.
To convert the VDI to VMDK we run the following command:
That’s it! we should have our freshly converted VMDK file in the output directory we specified. We can create a new VM in VMware and specify the VMDK file as the primary virtual hard drive.