This week I was tasked with moving a Linux VM from a VMware host to a Server 2008r2 Hyper-V host. My boss and I did a bunch of digging, but couldn't find a direct way to do it. Windows VMs weren't a problem, but Linux seemed to be impossible. He finally found a tool to do it, but there was no single post detailing the process. Here's how we finally managed to do it.
1) Shut down the VM in vSphere.
2) Export the VM to VMDK(VMware Workstation) using the VMware vCenter Converter Standalone Tool
3) Install VirtualBox on a machine
a) You actually only need three files from this install
b) Don’t install it on your Hyper-V or ESX host, it might cause problems.
4) From an elevated command prompt convert the vmdk to vhd
a) VBoxManage clonehd "F:\VMs\MyVM.vmdk" --format VHD "F:\VMs\MyVM.vhd"
5) Create a new VM in Hyper-V using the newly formed VHD as the disk.
The process doesn’t look as hacked together as it felt when we were doing it. It'd be nice if linux VMs moved as easily as Windows VMs.