I upgraded one of my Proxmox servers from 8.x to 9.x and everything looked fine. The upgrade finished without errors, packages installed, no scary warnings. Then I rebooted.
Straight into BIOS. No Proxmox boot option. No errors. Just firmware staring back at me like nothing was ever installed.
If you’re here, you’re probably in the same situation. This is exactly how I fixed it, step by step, without reinstalling Proxmox or losing any VMs.
What was actually broken
The system was installed in UEFI mode, but after the Proxmox 9 upgrade, the firmware no longer had a valid boot entry. GRUB was either missing from the EFI System Partition or not properly registered.
The fix turned out to be simple once I knew what to do:
boot into Proxmox rescue mode and reinstall GRUB to the EFI partition.
What I needed before starting
-
Physical or remote console access (IPMI / iDRAC / iLO / KVM)
-
A USB stick with the Proxmox VE installer ISO
-
About 10 minutes and a calm mindset
No reinstall. No restore from backup. Just repair the bootloader.
Step 1: Boot into Proxmox Rescue Mode
First, I plugged in the Proxmox installer USB and booted from it.
In the installer menu, I selected:
Advanced Options → Rescue Boot
After a short wait, I landed in a Proxmox rescue environment with shell access. That’s all I needed.
Step 2: Find the EFI System Partition (important)
Before mounting anything, I checked my disks to find the EFI partition:
lsblk -f
What I was looking for:
-
A small partition (usually 100–1024 MB)
-
Filesystem: vfat / FAT32
-
Often named something like
nvme0n1p2,sda2, etc.
On my system, the EFI partition was:
/dev/nvme0n1p2
Yours may be different. Double-check this part. Mounting the wrong partition is the easiest way to mess things up.
Step 3: Mount the EFI partition
Once I knew which partition was the ESP, I mounted it:
mkdir -p /boot/efi
mount /dev/nvme0n1p2 /boot/efi
Quick sanity check:
ls /boot/efi
If you see an EFI directory, you’re on the right partition.
Step 4: Reinstall GRUB (this is the fix)
This is the step that actually fixed the problem for me.
grub-install \
--target=x86_64-efi \
--efi-directory=/boot/efi \
--bootloader-id=proxmox \
--recheck
If this command completes without errors, you’re in good shape.
Step 5: Regenerate the GRUB configuration
Next, I rebuilt the GRUB menu:
update-grub
This detects the installed kernels and recreates the boot menu entries.
Step 6: Reboot and fix boot order
Now the moment of truth.
reboot
Before the system booted again, I made sure to:
-
Remove the USB stick
-
Enter BIOS/UEFI settings
-
Verify that the Proxmox disk or “proxmox” UEFI entry was first in the boot order
After that… Proxmox booted normally. No reinstall. All VMs intact.