Even though hypervisors such as Microsoft’s Hyper-V are normally reliable, you may occasionally find that a virtual machine (VM) refuses to boot up properly. Thankfully, you can easily resolve this issue.
In this article, I’ll show you 4 things that you can check when a virtual machine won’t boot up.
In addition to these four items, problems with the virtual machine’s operating system (the guest operating system) can also potentially cause a boot failure. However, guest operating system problems are beyond the scope of this article.
Let’s begin with the list of 4 things you can do when your VM doesn’t boot up!
1. Make Sure That Resources Are Available
The most common reason why virtual machine boot failures occur is that the required hardware resources aren’t available. Microsoft Hyper-V and other server virtualization platforms revolve around the idea that most workloads have relatively modest hardware requirements. Therefore, they can share the physical hardware resources available on a server. The flipside to this, however, is that a virtual machine can only function if you have the required hardware resources available.
This concept doesn’t apply exclusively to running virtual machines. A virtual machine that’s powered off is only able to boot up if the host server has the necessary hardware resources available. Furthermore, each virtual machine configuration uses a certain amount of memory, a certain number of virtual CPUs, and other hardware resources. When the virtual machine turns on, the hypervisor checks to make sure that it can give it the resources specified within its configuration. If those requirements aren’t met, then the virtual machine isn’t allowed to boot up.
The good news is that Hyper-V is normally really good about telling you exactly which resource is in short supply and preventing the virtual machine from starting. In the screenshot below, for example, you can see that the virtual machine named VM1 couldn’t start. This is because the host server doesn’t have enough memory available based on the virtual machine’s configuration. To fix this problem, you’d need to either power off other virtual machines or move some of the other virtual machines to another host. Alternatively, you can also modify the virtual machine’s configuration in a way that reduces its memory requirements.
2. Verify That the Physical Disk Is Functioning
It’s somewhat rare for a production Hyper-V host to store virtual machines on local storage. Instead, virtual machines usually reside on an external storage array (which is often configured to act as a cluster shared volume).
If virtual hard disks or other virtual machine components reside on external storage, it means that a virtual machine’s ability to function is directly dependent on the host’s ability to communicate with the storage array.
When a Hyper-V server loses connectivity with the storage array where virtual machines reside, the Hyper-V Manager will typically list the virtual machine’s state as Saved Critical state.
A Saved Critical state is a clear indication of a disk failure, but it doesn’t always point to a storage communication error. Virtual machines may also fall into a Saved Critical state if the underlying physical storage fills up to capacity. In either case, you’ll need to address the storage problem before you’re able to boot up the virtual machine.
3. Make Sure That the Boot Order Is Correct
The firmware portion of a virtual machine’s configuration tells Hyper-V how to boot the virtual machine. More specifically, this part of the configuration lists the available boot devices for the virtual machine. It then controls the order in which the virtual machine will attempt to boot from each device.
A boot failure will occur if the boot device is missing from the firmware list. Similarly, a virtual machine may fail to boot up properly if the boot devices are in the wrong order.
For example, suppose that you need to boot up a virtual machine from a virtual DVD drive. If you list the boot file above the virtual DVD drive (and the virtual machine already contains an operating system) then the virtual machine will not boot from the DVD. This is because another boot device is taking a higher priority in this case.
You can access the boot list by following these steps:
- Open the Hyper-V Manager.
- Right-click on the virtual machine that’s experiencing boot problems, and choose the Properties command from the shortcut menu. This opens the Settings screen.
- Click on the Firmware tab.
- You can adjust the position of a boot device by selecting the device and clicking the Move-Up or Move-Down button.
4. Check the Virtual Hard Disk for Corruption
The final thing that can cause a virtual machine boot failure is that the underlying virtual hard disk has become corrupt. Just as physical machines boot from a physical hard disk, most VMs boot from a virtual hard disk. In Hyper-V, a virtual hard disk is simply a file in VHD or VHDX format that acts as a hard disk for the virtual machine.
Virtual hard disk corruption is somewhat rare, but it can happen. The easiest way to find out whether or not a virtual hard disk has become corrupt is to use PowerShell. To do so, follow these steps:
- Open an elevated PowerShell session.
- Enter the following command: Get-VMHardDiskDrive <virtual machine name>. This causes PowerShell to display the virtual hard disks that the specified virtual machine was configured to use.
- Enter the following command: Get-VMHardDiskDrive <virtual machine name> | Test-VHD.
- If this command returns a value of True, then PowerShell believes that the virtual hard disk is structurally intact.
If the Test-VHD cmdlet returns a value of False (or if the test succeeds and you still suspect corruption) then you have several techniques that you can use to try repairing the virtual hard disk. However, you’re usually going to be better off restoring a backup than attempting a repair operation. This is because a repair, even if successful, ultimately leaves the virtual hard disk in an unknown condition.
Thus, those are 4 things you can do to remedy the issue of your VM failing to boot up. I’ll give you my final thoughts in the conclusion below.
The Bottom Line
Virtual machines have the potential to fail in booting up at any time. You have several things you can do to resolve this issue:
For example, you can check to see if your virtual hard disk has been corrupted, or you can verify the functioning of the physical disk. You can apply these solutions, and several others, to fix this issue.
Most of the time, a VM boot failure stems from one of the four issues discussed above. I hope this article has helped you out in some way! Until next time.
Do you have any more questions about virtual machines? Check out the FAQ and Resources sections below!
Can a TPM issue prevent a Windows 11 VM from booting up?
Windows 11 requires the presence of a TPM 2.0 module. It’s possible to use a virtual TPM as a way of running Windows 11 inside of a Hyper-V virtual machine. However, if the virtual TPM gets accidentally disabled, then the Windows 11 virtual machine will fail to boot up.
Why might a correctly configured VM have trouble booting up from the ISO file used to install the virtual machine’s operating system?
If you configured the VM to boot up from the ISO file, then the ISO file itself is probably the problem. Not every ISO file is designed to be bootable.
Why might a VM start to boot up, but then display the Blue Screen of Death?
You have a number of potential causes for a Blue Screen of Death error. Often, the error description will help you to figure out what’s going on. If the description references an inaccessible boot device, then the error is most likely related to a driver issue or a misconfiguration within the guest OS.
Why might a Hyper-V virtual machine fail to perform a PXE boot?
The most common reason why PXE boots fail is that the PXE boot server was set up incorrectly. However, if you know for sure that your PXE server is working, then the problem is most likely related to the virtual machine’s virtual network configuration. A Hyper-V virtual machine will fail to perform a PXE boot if the virtual machine cannot acquire a DHCP address.
Can a malware infection cause a VM to not boot up correctly?
In the past, some older malware specifically targeted the Windows boot process. Starting with Windows 8, Microsoft took steps to harden the boot components against malware. While a malware-related boot problem is somewhat unlikely (especially for Windows 11 virtual machines), it can still happen.
TechGenix: Article on Hosting Virtual Machines on Azure
Learn how to host Hyper-V virtual machines on Azure.
TechGenix: Article on Manually Deploying Hyper-V Integration Services
Read more on how to deal with problems with the Hyper-V Integration Services.
TechGenix: Article on Troubleshooting Hyper-V Hosts Using VM Manager
Find out how to troubleshoot an unresponsive Hyper-V VM.
TechGenix: Article on Booting up a New Virtual Manager in Hyper-V
Read what to do when Hyper-V fails to boot a newly created virtual machine.
Microsoft: Article on Troubleshooting Windows VM OS Boot Failures
Discover Microsoft’s recommendations for troubleshooting Windows VM OS boot failures.
SQL Authority: Article on Hyper-V Boot Failures
Find a simple fix for Hyper-V boot failures.