Hyper-V server Event ID 3112: The virtual machine could not be started because the hypervisor is not running – How to fix

This is a repost of a post from an old blog, made on March 25, 2012, that used to be on:



Original post:

Today I was encountered with a problem with one of the computers that was running Windows Server 2008 R2 with Hyper-V. When I would try to start any of the virtual machines installed on it I would get the following error:

The virtual machine could not be started because the hypervisor is not running

I instinctively checked the BIOS if VT is enabled and it was.

When looking in the Event Viewer I would see Event ID 3112 so I started looking the Technet for other possible errors on that ID.

The problem for me was in BCD and Intel VT-d (Intel Virtualization Technology for Directed I/O), I needed to enable VT-d and put hypervisor in Boot Configuration Data to autolaunch with the following command (you need to runa cmd as an Administrator with elevated privileges):

bcdedit /set hypervisorlaunchtype auto

Here is a little checklist if you get this kind of error:

  1. Check if Intel VT or AMD-V hardware extensions are supported on your CPU and are enabled in BIOS
  2. Check if No eXecute (NX) for AMD and eXecute Disable (XD) for Intel CPU are enabled in BIOS
  3. Check your BCD with bcdedit (the problem with me was, that it was a classroom computer with dual boot Windows 7/Server 2008, and the BCD was changed with Win 7 reinstallation)
  4. Check if Intel VT-d is and Trusted Execution enabled/disabled (This one is little strange to me, because if you look here it states it needs to be disabled, but for me I had to enable VT-d in BIOS)
  5. Check if you enabled Hibernation or Sleep on your server, it changes your “hvboot” registry value. Try to start it in elevated Command Prompt with command:
  6. net start hvboot

Hope this helps somebody, because I got a little frustrated with this error today