This is a repost of a post from an old blog, made on March 25, 2012, that used to be on:
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:
- Check if Intel VT or AMD-V hardware extensions are supported on your CPU and are enabled in BIOS
- Check if No eXecute (NX) for AMD and eXecute Disable (XD) for Intel CPU are enabled in BIOS
- 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)
- 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)
- 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:
net start hvboot
Hope this helps somebody, because I got a little frustrated with this error today