2

A VM was sent to me as .vhdx instead of .vhd and I need to import it into xenserver which supports .vhd but not .vhdx.

I looked at the following solutions:

The problem with using powershell, is you need to have either Windows2012 or Windows 8.1 but with the Hyper-V role installed to get the proper cmdlets.

I only have access to Windows 2008r2 and Windows 8.1 without the Hyper-V role installed.

My other options would have been to attempt to gain access to a server with Hyper-V and use powershell to run the convert-vhd command on the remote server but I am not even sure if powershell commands can be ran like that. (ie: running hyper-v cmdlets on a remote server which doesn't have hyper-v cmdlets.)

Damainman
  • 995
  • 5
  • 14
  • 26
  • It would only take a few minutes to install the hyperv role on an existing win 8 machine. – Grant Jan 14 '14 at 22:57
  • I went to add new features in my Windows 8.1 machine but it doesn't have the option to enable the hyper-V role. I'm unable to determine my windows edition, which may be why it does not exist. – Damainman Jan 14 '14 at 23:00
  • Windows edition can be ascertained by hitting WinKey-Pause/Break Should show the edition in the first section on the dialog that pops up. You can still install the Hyper-V tools on a machine that cannot run Hyper-V locally. To do so visit "Programs and Features" in the Control panel, and select the option for "Turn Windows features on or off" and you should have the option to install the Hyper-V Management tools including the Module for Windows Powershell. – MikeAWood Jan 15 '14 at 00:42
  • @MikeAWood, mine just says Windows 8.1 with a link to "Get more features with a new edition of windows". Hyper-V does not appear in that option. I need to check my bios to see vt-x is enabled on my laptop, but I can't restart at the moment. – Damainman Jan 15 '14 at 01:03
  • Coreinfo (http://technet.microsoft.com/en-us/sysinternals/cc835722.aspx) from Sysinternals (run as `coreinfo -v`) can show you your virtualization support but needs to be run elevated on Intel platforms. An asterisk (*) means the feature is present. – charleswj81 Jan 15 '14 at 01:37

1 Answers1

4

To determine your Windows version, pressWin+x and select "System". Your version will be near the top, under "Windows edition". Only 64-bit versions of Windows 8/8.1 Professional and Enterprise support Hyper-V. You also won't be able to enable Hyper-V if your processor's visualization support is not enabled (AMD-V for AMD and VT-x for Intel)

As an alternative, you could install VirtualBox and use VBoxManage.exe to convert from VHDX to VHD like so:

vboxmanage clonehd filename.vhdx filename.vhd -format vhd

Caveat: I just tested this and it successfully converted however I did not test it beyond that.

charleswj81
  • 2,433
  • 14
  • 18
  • My windows only says 8.1, not the actual edition if it was pro or not. I tried running the vboxmanage but got the following error: C:\Program Files\Oracle\VirtualBox>vboxmanage clonehd C:\Users\admin\Desktop\ringe\ringer.vhdx C:\Users\admin\Desktop\ringe\ringer .vhd -format vhd VBoxManage.exe: error: Failed to create the VirtualBox object! VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available) VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running orfailed to start. – Damainman Jan 15 '14 at 00:57
  • I assume that's a typo above in your command where you have the space in "ringer .vhd"? – charleswj81 Jan 15 '14 at 01:42
  • I have no idea what would cause that error. Three things come to mind: try reinstalling VirtualBox, verify CPU virtualization support, and/or run the vboxmanage command elevated. – charleswj81 Jan 15 '14 at 01:50