VMware ESXi: Set an alternate BIOS for a VM

Hi,

VMware supports an alternate BIOS for a VM. Reasons for this can be that you want to set an alternate Manufacturer/Vendor and Model/Product String.

The requiered BIOS image can be extracted from the VMware Workstations vmware-vmx.exe executeable. It can be found in VMware Workstation installation folder in subfolder Workstation\x64.

Open vmware-vmx.exe with 7-Zip and extract BINRES 6006 as bios.img.

Extract BIOS from VMware Workstation
Extract BIOS from VMware Workstation
SaveAs Bios.img
SaveAs Bios.img

If you want to change the Vendor or Model use the Phoenix BiosEditor.

Copy the bios.img to a Datastore. In this example datastore0.

At the VM set the following Advanced Options

  • bios440.filename = “/vmfs/volumes/datastore0/bios.img”
  • mce.enable = TRUE
  • cpuid.hypervisor.v0 = FALSE
  • vmGenCounter.enable = FALSE
VMware VM BIOS AdvancedOption
VMware VM BIOS AdvancedOption

Or with PowerCli

$hVMAdvancedSettings=@{}
$hVMAdvancedSettings.Add("bios440.filename","/vmfs/volumes/datastore0/bios.img")
$hVMAdvancedSettings.Add("mce.enable","true")
$hVMAdvancedSettings.Add("cpuid.hypervisor.v0","false")
$hVMAdvancedSettings.Add("vmGenCounter.enable","false")
foreach($sSettingName in $hVMAdvancedSettings.Keys)
{
    get-vm yourVM | New-AdvancedSetting  -Name $sSettingName -Value $hVMAdvancedSettings[$sSettingName] -Confirm:$false
}

Michael

3 thoughts on “VMware ESXi: Set an alternate BIOS for a VM”

Leave a Reply