I wanted to upgrade my Proxmox Windows 10 guest VMs to Windows 11. Some of the guest were originally created with BIOS and couldn’t be upgraded to Windows 11 without UEFI. So in order to upgrade them I would have to convert the Proxmox Windows 10 VMs from BIOS to UEFI.
Prerequisites
Before you begin, check following prerequisites:
- Most important – you have made backups of the Windows guest.
- Windows guest is running Windows 10 version 1703 or later.
Convert a Proxmox Windows Guest from BIOS to UEFI
Here’s how convert the Proxmox Windows guest from BIOS to UEFI. Once you have check and confirmed the version of Windows guest and you’ve completed your backups, follow these steps to convert your Proxmox Windows guest to UEFI:
Open Command Prompt as an administrator in the Windows guest machine.
Run the following command to validate the conversion process:
mbr2gpt /validate /allowFullOS
If that doesn’t work try
mbr2gpt /validate /allowFullOSBatch
If the validation is successful, run the following command to convert the disk to GPT format. If you receive an error message Layout conversion failed or similar, which happened to me once, look here for possible solution.
mbr2gpt /convert /disk:0 /allowFullOS
Shutdown down the Windows guest machine.
Open the Proxmox web interface and navigate to the “Hardware” tab for the guest machine.
![Proxmox Hardware Menu](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI.jpg)
Add a new “EFI Disk” to the guest machine. Select the storage location of the EFI disk and make sure to enable the “Pre-Enroll keys” option.
![Proxmox UEFI EFI Disk](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI-1.jpg)
![Proxmox UEFI EFI Disk Selections](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI-6.jpg)
If you plan to upgrade to Windows 11, add a “TPM State” device to the guest machine.
![How to Convert a Proxmox Windows Guest from BIOS to UEFI TPM State](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI-2.jpg)
Change the “BIOS” option from “SeaBIOS” to “OVMF (UEFI)”.
![How to Convert a Proxmox Windows Guest from BIOS to UEFI Change BIOS](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI-3.jpg)
![How to Convert a Proxmox Windows Guest from BIOS to UEFI Select UEFI](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI-4.jpg)
Change the “Machine” option to “q35”. (only if you plan to pass-through the GPU as a PCIe device).
![How to Convert a Proxmox Windows Guest from BIOS to UEFI p-q35](https://uniteinnovations.com/wp-content/uploads/2024/05/How-to-Convert-a-Proxmox-Windows-Guest-from-BIOS-to-UEFI-5.jpg)
Start the guest machine.
Note: If you receive an error saying Failed to update ReAgent.xml
, it refers to the hidden recovery environment. Try the following commands:
reagentc /disable
followed by
reagentc /enable
If it doesn’t work, it should be okay if you ignore it.
Congratulations! You have successfully converted your Proxmox Windows guest from BIOS to UEFI.