[SOLVED] UEFI Boot Loader Not Created in UEFI Disk for a Windows VM

marmour

New Member
Sep 25, 2025
2
1
3
I am a newbie to Proxmox. I have a working VM in Proxmox VE 9.0.9. It is running Windows 10 with SeaBIOS. I want to convert it to UEFI and then TPM so I can upgrade to WIN11.
First is to change to UEFI which is the problem. VM wont boot says it cant find boot device (or something like that). Read all the posts that said you have to select the EFI files in Boot Manager.
1. Switched from SeaBIOS to OVMF (UEFI)
2. Created EFI disk
3. CPU is Q35
4. Start VM. Boot fails. Press Esc and enter OVMF Menu
5. Navigate Boot Maintenance Manager, Boot Options, Add Boot Option, File Explorer
6. This screen is blank. Empty, no choices to select an EFI file - Note Secure Boot is disabled as per other posts

I know I saw some EFI files in a some previous install but I am not sure why in this VM there is nothing being shown. I have detached and removed the EFI disk numerous times and re-added it. And rechecked that Secure Boot is disabled.

Help would be appreciated

EFI Issue.jpg
 
So an update. I figured out how to fix this problem. It appears since I changed the from CSM and SeaBios to UEFI and OVMF there was no UEFI created for Windows. If I created a VM from scratch using UEFI it found the UEFI drive and booted fine. I found a Google AI (the best ever option that they have added) recommendation that I have to recreate the boot info and use UEFI.
So I set the BIOS to SeaBIOS and booted the VM. Then went into Admin CMD prompt and ran the following commands and followed the instructions in the article.
Step 1: Prepare the Windows 10 disk
UEFI requires a GPT partition style, while CSM/Legacy BIOS uses MBR. The mbr2gpt tool built into Windows 10 (version 1703 or newer) can perform this conversion without erasing your data.
  1. Back up your VM. Before starting, create a snapshot or a full backup of your VM in Proxmox. This is a critical safety measure in case something goes wrong.
  2. Open an elevated Command Prompt inside your Windows 10 VM.
  3. Run the validation command:mbr2gpt /validate /allowFullOS.
    • If validation fails, check for errors. Common issues include having more than three partitions, which must be consolidated first.
  4. Run the conversion command:mbr2gpt /convert /disk:0 /allowFullOS.
    • This command converts your primary disk. Wait for it to complete successfully.
Step 2: Add EFI hardware in Proxmox
After the disk is converted, you need to add the necessary EFI hardware in Proxmox.
  1. Shut down the Windows 10 VM completely from the Proxmox web interface.
  2. Navigate to the VM's Hardware tab in Proxmox.
  3. Click Add > EFI Disk.
  4. Specify the storage location for the new EFI disk.
  5. Check the box for "Pre-Enroll Keys". This is crucial for UEFI to work correctly.
Step 3: Change VM settings in Proxmox
Now, change the VM's boot options to use the new UEFI settings.
  1. In the VM's Options tab, double-click the BIOS setting.
  2. Change the BIOS from SeaBIOS to OVMF (UEFI).
  3. If you plan to use GPU passthrough, also double-click the Machine setting and change it to q35.
  4. For Windows 11 upgrades or stricter security, add a TPM state device under the Hardware tab.
Step 4: Finalize boot order
After changing the BIOS, the VM may not boot automatically.
  1. Start the VM. If it drops into an EFI shell, this is expected.
  2. Press ESC to enter the OVMF menu.
  3. Navigate to Boot Maintenance Manager > Boot Options > Add Boot Option.
  4. Select the disk containing the new EFI System Partition.
  5. Browse to find the correct bootloader. For Windows, this is typically located at EFI\BOOT\BOOTX64.EFI.
  6. Create a new boot entry for this file and move it to the top of the boot order.
  7. Save your changes and exit the UEFI menu. The VM should now boot normally.
Step 5: (Optional) Reinstall VirtIO drivers
Sometimes, changing the hardware architecture can cause issues with existing drivers.
  • You may need to reinstall the VirtIO drivers, especially the network drivers, after the migration.
  • The name of the network adapter may change, so update any static IP configurations inside Windows.
 
  • Like
Reactions: Onslow