Boot Windows Server 2012 on ESXi 4.1

I needed to create a Windows Server 2012 R2 on one of our older ESXi hosts and quickly found out that ESXi 4.1 does not support Server 2012 as a guest OS.  The newest guestOS supported is Windows 2008 R2.  I received a BSOD while powering up the 2012 VM.  I would normally create this in our newer vCenter server environment but this standalone ESXi host had a specific network that the VM needed to be on.  Although the VM has been running pretty stable for the last 3 days I’m not sure if I would do this on a production VM.

To power up the VM I had to add the following to the .vmx file

bios440.filename = “./bios.440.rom”
mce.enable = “TRUE”
cpuid.hypervisor.v0 = “FALSE”
vmGenCounter.enable = “FALSE”

Download Link (Place this file in the same folder as the .vmx file):

If you are getting the below error you have to enable “Data Execution Prevention” or “No Execute Memory Protection” in the Bios of the server that is running ESXi.  Luckily my server already had that enabled as the VM powered up just fine.

Your PC needs to restart.
Please hold down the power button.
Error Code: 0x0000005D

Alternate way of adding the parameters to the VM

You can add the above directly through the vSphere client as well instead of the .vmx file
1.  Power OFF the VM
2.  VM > Edit settings > Options tab > General > Configuration Parameters
3.  Click Add Row
Add above parameters, don’t include the = sign or the double quotes.

Boot 2012 vm in esxi 41

This entry was posted in VMware and tagged , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *