PXE Deployment for Windows guest OS in virtual machines may fail when using VM hardware version 16 or higher
search cancel

PXE Deployment for Windows guest OS in virtual machines may fail when using VM hardware version 16 or higher

book

Article ID: 326253

calendar_today

Updated On:

Products

VMware Desktop Hypervisor VMware vSphere ESXi

Issue/Introduction

Symptoms:
PXE Deployment for Windows guest OS in virtual machines may fail when using hardware version 16 or higher in hypervisors such as:
  • ESXi 7.0 or newer
  • Workstation Pro 15.x / Workstation Player 15.x
  • Fusion 11.x

When deploying Windows per PXE boot using deployment solutions like Microsoft SCCM, the deployment may fail in the second phase.
In this phase Windows PE tries to install the operating system on a partition which was created in the first phase.

This can happen in certain cases, when virtual machine EFI Quick boot is enabled for the virtual machine.

Cause

Virtual machine EFI Quick Boot works by configuring the virtual machines EFI firmware to only make the device available from which the OS is going to boot.
Other devices like network adapters and disks which are not going to be used for the boot are normally not initialized at this point, as these can add up additional time.

Typically the operating system's boot loader will be fetched from the device, and when the operating system itself boots, it will probe and initialize the remaining devices.

This can lead to issues when the bootloader expects devices it was not booted from to be already present and available while loading a pre-boot / pre-OS environment, e.g. to install the actual operating system on these devices.

Resolution

VMware engineering is aware of this problem, and working on implementing a solution in a future vSphere release.

Workaround:
to work around this issue, before doing the OS deployment, while the VM is powered off, edit the virtual machine configuration using vSphere Client.
  • In the VM configuration, go in "VM Options", expand "Advanced" and select "EDIT CONFIGURATION..."
  • In the next Window, select [ADD CONFIGURATION PARAMS] to add a new option
  • As name for the option enter efi.quickBoot.enabled and as value enter FALSE
  • Confirm the change with [OK]