[SOLVED] No /boot after PVE 8 to 9 upgrade

Antics04

New Member
Aug 30, 2025
2
2
1
My Proxmox host boots to BIOS after upgrading from PVE 8 to 9.

I was able to use Rescue Boot from a Proxmox 9 install USB but it says /boot not found. In Rescue Boot, everything else seems to be working fine though.

I've only been using Proxmox for about 2 months now so I'm not familiar with all the troubleshooting options, but I've looked at other forums posts and tried some of the solutions posted but none have worked for me so far.

Here is my output for lsblk and there is no /boot or /boot/efi.
Code:
root@pve:~# lsblk
NAME                          MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                             8:0    0  14.6T  0 disk
└─sda1                          8:1    0  14.6T  0 part
sdb                             8:16   0  14.6T  0 disk
└─sdb1                          8:17   0  14.6T  0 part
sdc                             8:32   0   3.6T  0 disk
└─sdc1                          8:33   0   3.6T  0 part /mnt/backupdrive
sdd                             8:48   0 238.5G  0 disk
├─sdd1                          8:49   0  1007K  0 part
├─sdd2                          8:50   0     1G  0 part
└─sdd3                          8:51   0 237.5G  0 part
  ├─pve-swap                  252:0    0     8G  0 lvm  [SWAP]
  ├─pve-root                  252:1    0  69.4G  0 lvm  /
  ├─pve-data_tmeta            252:2    0   1.4G  0 lvm 
  │ └─pve-data-tpool          252:4    0 141.2G  0 lvm 
  │   ├─pve-data              252:5    0 141.2G  1 lvm 
  │   ├─pve-vm--1002--disk--0 252:6    0    32G  0 lvm 
  │   ├─pve-vm--1001--disk--0 252:7    0    64G  0 lvm 
  │   └─pve-vm--1000--disk--0 252:8    0    32G  0 lvm 
  └─pve-data_tdata            252:3    0 141.2G  0 lvm 
    └─pve-data-tpool          252:4    0 141.2G  0 lvm 
      ├─pve-data              252:5    0 141.2G  1 lvm 
      ├─pve-vm--1002--disk--0 252:6    0    32G  0 lvm 
      ├─pve-vm--1001--disk--0 252:7    0    64G  0 lvm 
      └─pve-vm--1000--disk--0 252:8    0    32G  0 lvm 
sde                             8:64   0  14.6T  0 disk
└─sde1                          8:65   0  14.6T  0 part
sdf                             8:80   0  14.6T  0 disk
└─sdf1                          8:81   0  14.6T  0 part
sdg                             8:96   1  59.8G  0 disk
├─sdg1                          8:97   1   282K  0 part
├─sdg2                          8:98   1     8M  0 part
├─sdg3                          8:99   1   1.5G  0 part
└─sdg4                          8:100  1   300K  0 part

I ran fdisk -l and there is an EFI System that is 8M but apparently it is supposed to be around 1G?
Code:
Device       Start     End Sectors  Size Type
/dev/sdg1       64     627     564  282K Microsoft basic data
/dev/sdg2      628   17011   16384    8M EFI System
/dev/sdg3    17012 3205631 3188620  1.5G Apple HFS/HFS+
/dev/sdg4  3205632 3206231     600  300K Microsoft basic data

And here are various commands I tried running based on other posts I have seen with no luck (proxmox-boot-tool status proxmox-boot-tool refresh apt install grub-efi-amd64)
Code:
root@pve:~# 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@pve:~# proxmox-boot-tool refresh
Running hook script 'proxmox-auto-removal'..
Running hook script 'zz-proxmox-boot'..
Re-executing '/etc/kernel/postinst.d/zz-proxmox-boot' in new private mount namespace..
No /etc/kernel/proxmox-boot-uuids found, skipping ESP sync.

root@pve:~# apt install grub-efi-amd64
grub-efi-amd64 is already the newest version (2.12-9+pmx2).
The following packages were automatically installed and are no longer required:
  libva-wayland2  libwayland-client0  proxmox-kernel-6.14.5-1-bpo12-pve-signed  proxmox-kernel-6.8.12-11-pve-signed  proxmox-kernel-6.8.12-13-pve-signed
  libva-x11-2     libxfixes3          proxmox-kernel-6.14.8-1-bpo12-pve-signed  proxmox-kernel-6.8.12-12-pve-signed
Use 'apt autoremove' to remove them.


I'm honestly really lost on how I am supposed to fix this. Is anyone able to help or maybe point me in the right direction?

Thank you.
 
Since I didn't get any responses here, I asked chatgpt and eventually got it worked out. I want to post my fix in case anyone else comes across the same problem.

So my sdd had a 1G partition that used to be /boot/efi (sdd2) but was somehow removed during the pve8to9 update.

I ran blkid to get the UUID of sdd2, then did nano /etc/fstab to input this new line:
Code:
UUID=XXXX-XXXX /boot/efi vfat defaults 0 1
(with the UUID in place of the X's)


I ran mount -a and systemctl daemon-reload then did another lsblk to verify /boot/efi showed up on sdd2.
Code:
sdd                             8:48   0 238.5G  0 disk
├─sdd1                          8:49   0  1007K  0 part
├─sdd2                          8:50   0     1G  0 part /boot/efi
└─sdd3                          8:51   0 237.5G  0 part
  ├─pve-swap                  252:0    0     8G  0 lvm  [SWAP]
  ├─pve-root                  252:1    0  69.4G  0 lvm  /
  ├─pve-data_tmeta            252:2    0   1.4G  0 lvm

Then I did apt reinstall grub-efi-amd64 and grub-install. After that, I rebooted and proxmox booted up fine.

I don't know how this problem happened in the first place but I'm glad it's fixed now, and hopefully this can help someone else too.
 
  • Like
Reactions: Onslow and kboeckx
Thanks for this. I had exactly the same thing and solved it the same way. FYI, you can remove the /boot/efi line from fstab afterwards.