Upgrading from Proxmox 8 to 9 issues; Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi.

I setup it on top of debian because i needed mdad raid1.
thanks - which version did you start with? any other specifics how this was setup?
this would also help narrowing this down - s a stock debian bookworm system here has shimx64.efi as configured boot-entry and not grubx64.efi as in your case.
 
there are a few reports about Grub not working after the upgrade, those seem unrelated to systemd-boot and are probably associated with the big Grub update from 2.06 to 2.12 that comes with Trixie. could you describe the symptoms of "failed to boot after the upgrade" in more detail?
Server boots on grub which briefly displays GRUB START then reboot instantly.
I guess EFI boot is wrongly configured as I could manually boots on Legacy BIOS, but couldn't make system boots automatically like before on PVE8.
pve8to9 script didn't raise any warning before.
 
thanks - which version did you start with? any other specifics how this was setup?
this would also help narrowing this down - s a stock debian bookworm system here has shimx64.efi as configured boot-entry and not grubx64.efi as in your case.
I Setup it At December 7 2024 (actual stable versions of Debian (this was bookworm or bulseye) and actual Proxmox 7 or 8).
 
Last edited:
there are a few reports about Grub not working after the upgrade, those seem unrelated to systemd-boot and are probably associated with the big Grub update from 2.06 to 2.12 that comes with Trixie. could you describe the symptoms of "failed to boot after the upgrade" in more detail?

Symptoms for me:
  • Protectli VP2420 -- booted straight into BIOS settings. This means it didn't find a bootable operating system.
  • HP SFF PC -- booted to a screen literally saying no operating system found.
 
I Setup it At December 7 2024 (actual stable versions of Debian (this was bookworm or bulseye) and actual Proxmox 7 or 8).
8 Months ago should have been bookworm - thanks for the info!

Could you (and others affected by grub not booting after upgrade) - also share:
Code:
grep grub /var/log/apt/term.log
(unless your term.log has been rotated after the upgrade in which case please use the rotated variant which contains the 8->9 upgrade)
 
8 Months ago should have been bookworm - thanks for the info!

Could you (and others affected by grub not booting after upgrade) - also share:
Code:
grep grub /var/log/apt/term.log
(unless your term.log has been rotated after the upgrade in which case please use the rotated variant which contains the 8->9 upgrade)
maybe my configuration could also help you, I could eventually pinpoint an error in the log which wasn't picked by pve8to9 script (underlined in bold below):
root@monolith:~# grep grub /var/log/apt/term.log
Preparing to unpack .../09-grub-efi-amd64-signed_1+2.12+9+pmx2_amd64.deb ...
Unpacking grub-efi-amd64-signed (1+2.12+9+pmx2) over (1+2.06+13+pmx7) ...
Preparing to unpack .../10-grub-efi-amd64-bin_2.12-9+pmx2_amd64.deb ...
Unpacking grub-efi-amd64-bin (2.12-9+pmx2) over (2.06-13+pmx7) ...
Selecting previously unselected package grub-efi-amd64-unsigned.
Preparing to unpack .../11-grub-efi-amd64-unsigned_2.12-9+pmx2_amd64.deb ...
Unpacking grub-efi-amd64-unsigned (2.12-9+pmx2) ...
Preparing to unpack .../12-grub-efi-amd64_2.12-9+pmx2_amd64.deb ...
Unpacking grub-efi-amd64 (2.12-9+pmx2) over (2.06-13+pmx7) ...
Preparing to unpack .../13-grub2-common_2.12-9+pmx2_amd64.deb ...
Unpacking grub2-common (2.12-9+pmx2) over (2.06-13+pmx7) ...
grub-common depends on libefiboot1 (>= 37).
grub-common depends on libefivar1 (>= 37).
Preparing to unpack .../2-grub-pc-bin_2.12-9+pmx2_amd64.deb ...
Unpacking grub-pc-bin (2.12-9+pmx2) over (2.06-13+pmx7) ...
Preparing to unpack .../3-grub-common_2.12-9+pmx2_amd64.deb ...
Unpacking grub-common (2.12-9+pmx2) over (2.06-13+pmx7) ...
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 6.14.8-2-pve /boot/vmlinuz-6.14.8-2-pve
Generating grub configuration file ...
Setting up grub-common (2.12-9+pmx2) ...
Installing new version of config file /etc/grub.d/00_header ...
Installing new version of config file /etc/grub.d/05_debian_theme ...
Installing new version of config file /etc/grub.d/10_linux ...
Installing new version of config file /etc/grub.d/20_linux_xen ...
Installing new version of config file /etc/grub.d/30_os-prober ...
Installing new version of config file /etc/grub.d/30_uefi-firmware ...
Removing obsolete conffile /etc/default/grub.d/init-select.cfg ...
Created symlink '/etc/systemd/system/multi-user.target.wants/grub-common.service' → '/usr/lib/systemd/system/grub-common.service'.
Created symlink '/etc/systemd/system/suspend.target.wants/grub-common.service' → '/usr/lib/systemd/system/grub-common.service'.
Created symlink '/etc/systemd/system/hibernate.target.wants/grub-common.service' → '/usr/lib/systemd/system/grub-common.service'.
Created symlink '/etc/systemd/system/hybrid-sleep.target.wants/grub-common.service' → '/usr/lib/systemd/system/grub-common.service'.
Created symlink '/etc/systemd/system/suspend-then-hibernate.target.wants/grub-common.service' → '/usr/lib/systemd/system/grub-common.service'.
Installing new version of config file /etc/grub.d/20_memtest86+ ...
Generating grub configuration file ...
Setting up grub-efi-amd64-signed (1+2.12+9+pmx2) ...
Setting up grub-efi-amd64-unsigned (2.12-9+pmx2) ...
Setting up grub2-common (2.12-9+pmx2) ...
Setting up grub-pc-bin (2.12-9+pmx2) ...
Setting up grub-efi-amd64-bin (2.12-9+pmx2) ...
Setting up grub-efi-amd64 (2.12-9+pmx2) ...
Replacing config file /etc/default/grub with new version
grub-install.real: error: cannot find EFI directory.
Failed: grub-install --target=x86_64-efi --force-extra-removable

Generating grub configuration file ...
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 6.14.8-1-bpo12-pve /boot/vmlinuz-6.14.8-1-bpo12-pve
Generating grub configuration file ...
 
are you using proxmox-boot-tool? if not, is your ESP mounted?
 
I'm using proxmox-boot-tool & ESP is mounted to /boot/efi
that sounds odd (should not happen with our usual setups) - please share:
* `proxmox-boot-tool status`
* `mount |grep efi`

(thanks for sharing the term.log!)
 
that sounds odd (should not happen with our usual setups) - please share:
* `proxmox-boot-tool status`
* `mount |grep efi`

(thanks for sharing the term.log!)
I most likely have odd setup as motherboard is quite old now, but it used to boot correctly until upgrade to pve9:
root@monolith:~# proxmox-boot-tool status
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
System currently booted with legacy bios
AA07-1547 is configured with: grub (versions: 6.14.8-2-bpo12-pve, 6.14.8-2-pve, 6.8.12-13-pve)

root@monolith:~# mount |grep efi
/dev/sdb2 on /boot/efi type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
 
it looks like I could eventually fix it as I force-reinstalled grub-efi-amd64 which was broken during upgrade process.
Phew ! Thanks for your assistance !
 
  • Like
Reactions: Stoiko Ivanov
Could you (and others affected by grub not booting after upgrade) - also share: grep grub /var/log/apt/term.log
The info:

Bash:
root@pve33:~# proxmox-boot-tool status
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
E: /etc/kernel/proxmox-boot-uuids does not exist.

Bash:
root@pve33:~# mount |grep efi
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
/dev/md126 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)

Bash:
root@pve33:~# ls -la /var/log/apt/term.log*
-rw-r----- 1 root adm 902118 aug  7 11:34 /var/log/apt/term.log
-rw-r----- 1 root adm   5303 jul 31 06:25 /var/log/apt/term.log.1.gz
-rw-r----- 1 root adm   9978 jun  25 16:08 /var/log/apt/term.log.2.gz

Output of grep grub /var/log/apt/term.log > pve.txt:

Cluster, term.log files are very similar:
pve33.txt (7.26 KB): https://upload.disroot.org/r/LZPfy_1D#+SsBo7abqBuFADsjUOiUeddNr84MNeZSl44isUUJ3h0=
pve22.txt (7.26 KB): https://upload.disroot.org/r/j6VseCGz#Mhy3fcCp+rZBi/NqmfxJ5OGBUTTeOaBDqKKr5Ok8b3I=
pve11.txt (16.23 KB): https://upload.disroot.org/r/Jo0VRTez#PPV9zRSwcw3n2mjObZ/yQH7AfVgLno+KaC2oGJy63vA=
(Links expiration: Saturday, September 6, 2025)
 
I most likely have odd setup as motherboard is quite old now, but it used to boot correctly until upgrade to pve9:
not necessarily - the only thing that is odd about it as far as I can see is that you have both:
* using proxmox-boot-tool for booting (ZFS system on legacy boot)
* one of the ESPs mounted at /boot/efi (on a legacy boot system!)
I'd recomment removing the fstab entry of /boot/efi - as proxmox-boot-tool does not need it and most boot-loader packages on Debian do something there during upgrades - it's a setup we don't test/support

after removing that and unmounting it once - I'd run a `proxmox-boot-tool reinit` to ensure the upgrade goes through without any warning/error

(of course changing boot-loader configs always has a small potential for problems - so make sure you have a backup and a live-cd to get the system in a bootable state)

I hope this helps!
 
The info:

root@pve33:~# proxmox-boot-tool status Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace.. E: /etc/kernel/proxmox-boot-uuids does not exist.
root@pve33:~# mount |grep efi efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime) /dev/md126 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
Thanks!

hm - not sure how grub deals with /boot/efi being a mdraid - I'd suggest:
* checking `efibootmgr -v`
* ensureing that bootx64.efi (a.k.a removable grub entry) gets updated as well:
Code:
echo 'grub-efi-amd64 grub2/force_efi_extra_removable boolean true' | debconf-set-selections -v -u
* reinstalling `grub-efi-amd64`
* checking `efibootmgr -v` again to make sure that the proxmox entries are listed as selected

I hope this helps!
 
I am scared to reboot, cause my efi partition is not in my fstab:

Code:
root@pve4:~# cat /etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
root@pve4:~# proxmox-boot-tool status
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
System currently booted with uefi
6BD0-2C08 is configured with: uefi (versions: 6.14.8-2-pve, 6.8.12-13-pve)
root@pve4:~#

EDIT: Neither is pve root and swap.
 
Last edited:
I am scared to reboot, cause my efi partition is not in my fstab:
in this case it's not mounted, because you have ZFS on `/` and use proxmox-boot-tool for managing the boot-loader :) (similarly for pve-root and swap(on ZFS no swap is created)

on systems installed on ext4+lvm-thin it needs to be mounted.

I hope this helps!
 
Just wanted to let someone else know that I was unsuccessful in getting PBS 8 to got 9. Same error as everyone else here, would not reboot, GRUB gave me an error message and that was it. Booting from recovery ISO didn't work either. Ended up re-installing from scratch and re-building. I orignally installed from the PBS 8 iso image & running UEFI on the server, all I did was change the repositires to trixie, and do a apt dist-upgrade like I've done with the PVE 8 to 9 systems.
 
n100, boot issues but seems pve 8 setup still there, passthrough in 9 almost works: no errors, but only colorful pixels in top rows, so probably not the previous qemu compatibilty issues, will dig but in a couple of days
 
Well looks like I'm finding answers faster than anyone can answer (especially since I'm still awaiting approval for my post to be displayed publicly).. Hopefully this will help anyone who has faced the same issues.. So for the boot issue, I was missing the boot-efi partition, i.e.
'UUID=xxxx-xxxx /boot/efi vfat defaults 0 1' where XXXX-XXXX is my own boot/efi partition ID.. I am not sure why but during the upgrade from proxmox 8 to 9 it was removed....

so what I had to do is this
[deleted]
What an adventure right?! I hope this helps anyone who got this issue after upgrading to Proxmox 9 where somehow the boot/efi partition is removed.

As for the next issue, passing through the LSI SAS2008, I'm on something and I'll see if it works and post a follow-up here.

What an adventure indeed! Just wanted to say thank you for saving me from a reinstall (although I was able to reboot using the Rescue Boot and had backups so it wouldn't have been a huge deal). I also didn't see any warnings of note during pve8to9 -full, and yet this caused a fatal flaw in the upgrade. My previous install was a vanilla PVE 8.4 install from ISO, so I'm not quite sure what went awry.

Ah well, all good now!
 
  • Like
Reactions: tessierp