When it comes to vitual machines, many of us start with Oracle’s VirtualBox. The reasons are obvious. VirtualBox is free, and unlike Hyper-V, it runs on Windows 10 Home edition. That said, once you get serious with VMs, there comes a time when you want to upgrade to Hyper-V. VirtualBox is fine for basic needs, but Hyper-V, which runs on the Pro Edition of Windows 10, has better performance and a few high end features like Nested VMs, easier management using PowerShell, and features like BASH for Windows 10. There’s only one problem: Hyper-V doesn’t support VirtualBox VMs natively. So, in order to migrate them, you’ll have to convert them.
In this article, we’ll show you how to migrate an existing Oracle VirtualBox virtual machine to Windows 10’s Hyper-V.
Migrate an Oracle VirtualBox Virtual Machine to Windows 10 Hyper-V
To begin, launch the VirtualBox Manager then select the virtual machine from the list pane you would like to export. Make sure the operating system you are exporting is supported by Hyper-V. Click the File menu then click Export Appliance…
Select the virtual machine again, then click Next.
Choose the location where you would like to store the virtual machine file, select the OFV 2.0 format then click Next.
Click Export then wait while the appliance is exported; this can take some time depending on the size of the virtual machine.
Before you can begin the conversion, we will need to use a uncompressing utility such as 7-zip to extract the contents of the OVF file we just exported.
Our next step is to import the VM into Microsoft’s Hyper-V software. Hyper-V does not natively support the Open Virtual Format. Initially, I attempted to convert the VM using Microsoft’s free utility called Virtual Machine Converter and the built-in PowerShell cmdlet. I experienced nothing but frustration getting it to work; see the proof below. I said to myself, “Forget this! There has got to be an easier way than going back to the age of Computer Chronicles.”
After some web searching, I came across a free utility from StarWind called V2V Image Converter designed just for converting different types of virtual hard disk formats. First, you need to sign up for the free download, which will be sent to you in an email link. After receiving your free download, proceed to download and setup StarWind Converter.
Launch the StarWind V2V Image Converter software then click Next.
Choose Local file as your source then click Next.
Choose the format you would like to convert the image to. Hyper-V supports VHD and VHDX formats. VHDX is an improvement over the older virtual hard disk format, supporting up to 64 TBs of storage. Because this is a Windows XP VM, I will stick with a fixed VHD option called VHD Pre-allocated image.
Browse to where on your hard disk you would like to store the converted image.
Select the destination of the VHD file. In my case, this will be used locally, so, I will stick with the default.
Wait while the vmdk file is converted. The larger the vhd, the longer it will take.
Import Virtual Machine into Hyper-V
The next step is to see if it works. Launch Hyper-V in Windows 10, click New > Virtual Machine then click Next. Go through the wizard and configure your virtual machine with the appropriate settings. When you arrive at the Connect Virtual Hard Disk section, choose Use an existing virtual hard disk, click Browse…, then open the vhd file we converted earlier then click Next.
Click Finish to confirm your configuration.
Proceed to launch your virtual machine and there you have it. Your Oracle VirtualBox VM is now up and running in Hyper-V.
That wasn’t so bad. Looking for more tutorials on VMs? Check out our post on connecting your virtual machine to the Internet. Also, if you prefer not to use the StarWind software, give the free Microsoft Virtual Machine Converter a try and let us know if you had any luck with it.