Unable to boot after PBS 3 to 4

PietPompies

New Member
Aug 16, 2025
3
0
1
I followed the instructions for ugrading PBS from 3 to 4. I got up to the section of upgrading the system.
After running
Bash:
apt update
apt dist-upgrade
and accepting defaults or recommendations from the docs for for prompts, I saw this warning message at the very end of the output:
Code:
I: Set the RESUME variable to override this.
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.
Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi.
Alternatively, use --esp-path= to specify path to mount point.
run-parts: executing /etc/kernel/postinst.d/proxmox-auto-removal 6.14.8-2-pve /boot/vmlinuz-6.14.8-2-pve
run-parts: executing /etc/kernel/postinst.d/zz-proxmox-boot 6.14.8-2-pve /boot/vmlinuz-6.14.8-2-pve
Re-executing '/etc/kernel/postinst.d/zz-proxmox-boot' in new private mount namespace..
No /etc/kernel/proxmox-boot-uuids found, skipping ESP sync.
Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi.
Alternatively, use --esp-path= to specify path to mount point.
run-parts: executing /etc/kernel/postinst.d/zz-systemd-boot 6.14.8-2-pve /boot/vmlinuz-6.14.8-2-pve
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 ...
Warning: version_find_latest() is deprecated. Use version_sort() instead.
Warning: version_test_gt() is deprecated. Use version_sort() instead.
I don't really know what I'm doing, and ran the systemctl reboot command, which is the next one in the upgrade docs.

Now, when my system boots up, the PC fans spin up, then go quiet, and it tries again, and then goes to the bios setup, indicating a failure to boot/detect boot media I guess? How do I fix this?

My install (before the upgrade commands) was PBS 3.4-1 from the ISO on a baremetal machine. I see my BIOS is set to LEGACY+UEFI boot mode
 
Last edited:
I've managed to make some progress.

I created a bootable USB drive from the latest PBS 4 ISO. Using it in Recovery Boot didn't work - it said:
Code:
error: no such device: rpool.
ERROR: unable to find boot disk automatically.

So then I removed the drive and pressed F11 during start-up to see which boot options are available.
My drive showed up three times:
Code:
UEFI OS (P0: Samsung SSD 850 EVO 250GB)
proxmox (P0: Samsung SSD 850 EVO 250GB)
SATA1: Samsung SSD 850 EVO 250GB

Manually trying the first two give the same behaviour as above - not booting into PBS and ending up in my BIOS settings.
Selecting the third one works, though, sucessfully booting into PBS 4. PBS 4 was running fine.

I did the pbs3to4 command again and like before, it didn't report any problems. But this time it reported me booting in legacy mode. I don't remember that from before.
Code:
root@pbs1:~# pbs3to4
= CHECKING VERSION INFORMATION FOR PBS PACKAGES =

INFO: Checking for package updates..
PASS: all packages up-to-date
INFO: Checking proxmox backup server package version..
PASS: Already upgraded to Proxmox Backup Server 4
INFO: Check running kernel version..
PASS: running new kernel '6.14.8-2-pve' after upgrade.

= MISCELLANEOUS CHECKS =

INFO: Checking PBS daemon services..
PASS: systemd unit 'proxmox-backup.service' is in state 'active'
PASS: systemd unit 'proxmox-backup-proxy.service' is in state 'active'
INFO: Checking for supported & active NTP service..
PASS: Detected active time synchronisation unit
INFO: Checking for package repository suite mismatches..
PASS: found no suite mismatch
INFO: Checking bootloader configuration...
SKIP: System booted in legacy-mode - no need for additional pacckages.
SKIP: could not get dkms status

= SUMMARY =

TOTAL:     9
PASSED:    7
SKIPPED:   2
NOTICE:    0

Here are some commands that I ran after booting manually as explained above.

Code:
root@pbs1:~# lsblk -f
NAME                FSTYPE      FSVER    LABEL UUID                                   FSAVAIL FSUSE% MOUNTPOINTS
sda                                                                                                
├─sda1                                                                                              
├─sda2              vfat        FAT32          E439-1ECF                                            
└─sda3              LVM2_member LVM2 001       GQcHd2-galV-0IO7-RvuU-h9Cr-1BYh-sDMzet              
  ├─pbs-swap        swap        1              d589af1d-b169-4c06-8551-80fff2074cbe                  [SWAP]
  ├─pbs-root        ext4        1.0            d68439b5-a05f-4ac3-82b1-14955723d162     24.1G    15% /
  └─pbs-pbs--backup ext4        1.0            c1b6e0df-b5bf-40c6-a6b8-da7f4d9cdcda    118.2G    32% /backup-storage
root@pbs1:~# blkid
/dev/mapper/pbs-root: UUID="d68439b5-a05f-4ac3-82b1-14955723d162" BLOCK_SIZE="4096" TYPE="ext4"
/dev/mapper/pbs-pbs--backup: UUID="c1b6e0df-b5bf-40c6-a6b8-da7f4d9cdcda" BLOCK_SIZE="4096" TYPE="ext4"
/dev/mapper/pbs-swap: UUID="d589af1d-b169-4c06-8551-80fff2074cbe" TYPE="swap"
/dev/sda2: UUID="E439-1ECF" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="ac3be1b2-b5fa-4a2a-955b-674d44a8cca5"
/dev/sda3: UUID="GQcHd2-galV-0IO7-RvuU-h9Cr-1BYh-sDMzet" TYPE="LVM2_member" PARTUUID="14ed3e49-12b6-4fb7-94fd-a5aa25eb2a36"
/dev/sda1: PARTUUID="41279f76-17f1-493a-9373-2f3b6a0205c7"
root@pbs1:~# findmnt /boot/efi
root@pbs1:~# 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@pbs1:~# 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@pbs1:~#
 
Last edited:
Hmm looks like I'm in a similar situation - I didn't actually notice the error until I'd rebooted and wondered why it hadn't come back online.

Code:
Adding boot menu entry for UEFI Firmware Settings ...
done
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 lvm2 (2.03.31-2+pmx1) ...
Installing new version of config file /etc/lvm/lvm.conf ...
Installing new version of config file /etc/lvm/lvmlocal.conf ...
Installing new version of config file /etc/lvm/profile/vdo-small.profile ...
Setting up grub-efi-amd64-bin (2.12-9+pmx2) ...
Setting up proxmox-backup-server (4.0.14-1) ...
Setting up shim-signed:amd64 (1.47+pmx1+15.8-1+pmx1) ...
No DKMS packages installed: not changing Secure Boot validation state.
Setting up proxmox-backup (4.0.0) ...
Setting up grub-efi-amd64 (2.12-9+pmx2) ...
Replacing config file /etc/default/grub with new version
Installing for x86_64-efi platform.
grub-install.real: error: cannot find EFI directory.
Failed: grub-install --target=x86_64-efi --force-extra-removable
WARNING: Bootloader is not properly installed, system may not be bootable
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.14.11-1-pve
Found initrd image: /boot/initrd.img-6.14.11-1-pve
Found linux image: /boot/vmlinuz-6.8.12-13-pve
Found initrd image: /boot/initrd.img-6.8.12-13-pve
Found linux image: /boot/vmlinuz-6.8.12-11-pve
Found initrd image: /boot/initrd.img-6.8.12-11-pve
Found linux image: /boot/vmlinuz-6.8.12-10-pve
Found initrd image: /boot/initrd.img-6.8.12-10-pve
Found linux image: /boot/vmlinuz-6.8.12-9-pve
Found initrd image: /boot/initrd.img-6.8.12-9-pve
Found memtest86+ 64bit EFI image: /boot/memtest86+x64.efi
Found memtest86+ 32bit EFI image: /boot/memtest86+ia32.efi
Found memtest86+ 64bit image: /boot/memtest86+x64.bin
Found memtest86+ 32bit image: /boot/memtest86+ia32.bin
Adding boot menu entry for UEFI Firmware Settings ...
done
Processing triggers for debianutils (5.23.2) ...
Processing triggers for libc-bin (2.41-12) ...
Processing triggers for systemd (257.7-1) ...
Processing triggers for ca-certificates (20250419) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for initramfs-tools (0.148.3) ...
update-initramfs: Generating /boot/initrd.img-6.14.11-1-pve
I: The initramfs will attempt to resume from /dev/dm-0
I: (/dev/mapper/pbs-swap)
I: Set the RESUME variable to override this.
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.
Processing triggers for postfix (3.10.3-2) ...
Restarting postfix
Processing triggers for shim-signed:amd64 (1.47+pmx1+15.8-1+pmx1) ...
Removing subscription nag from UI...

I wonder if this thread might be helpful too? https://forum.proxmox.com/threads/grub-install-error-while-upgrading-from-proxmox-8-to-9.169343/

Not sure if it was related to a requirement from the updater to remove `systemd-boot` or not?
Code:
root@proxmox-pbs:~# pbs3to4 --full
= CHECKING VERSION INFORMATION FOR PBS PACKAGES =

INFO: Checking for package updates..
PASS: all packages up-to-date
INFO: Checking proxmox backup server package version..
PASS: 'proxmox-backup' has version >= 3.4.0
INFO: Check running kernel version..
PASS: running kernel '6.8.12-13-pve' is considered suitable for upgrade.

= MISCELLANEOUS CHECKS =

INFO: Checking PBS daemon services..
PASS: systemd unit 'proxmox-backup.service' is in state 'active'
PASS: systemd unit 'proxmox-backup-proxy.service' is in state 'active'
INFO: Checking for supported & active NTP service..
PASS: Detected active time synchronisation unit
INFO: Checking for package repository suite mismatches..
PASS: found no suite mismatch
INFO: Checking bootloader configuration...
FAIL: systemd-boot meta-package installed. This will cause problems on upgrades of other boot-related packages.
Remove the 'systemd-boot' package.
See https://pbs.proxmox.com/wiki/Upgrade_from_3_to_4#sd-boot-warning for more information.
SKIP: could not get dkms status

= SUMMARY =

TOTAL:     9
PASSED:    7
SKIPPED:   1
NOTICE:    0
FAILURES:  1

ATTENTION: Please check the output for detailed information!
Try to solve the problems one at a time and rerun this checklist tool again.
root@proxmox-pbs:~# apt remove systemd-boot
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following package was automatically installed and is no longer required:
  proxmox-kernel-6.8.12-10-pve-signed
Use 'apt autoremove' to remove it.
The following packages will be REMOVED:
  systemd-boot
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 250 kB disk space will be freed.
Do you want to continue? [Y/n]
(Reading database ... 65178 files and directories currently installed.)
Removing systemd-boot (252.38-1~deb12u1) ...
Processing triggers for man-db (2.11.2-2) ...
Removing subscription nag from UI...
root@proxmox-pbs:~# pbs3to4 --full
= CHECKING VERSION INFORMATION FOR PBS PACKAGES =

INFO: Checking for package updates..
PASS: all packages up-to-date
INFO: Checking proxmox backup server package version..
PASS: 'proxmox-backup' has version >= 3.4.0
INFO: Check running kernel version..
PASS: running kernel '6.8.12-13-pve' is considered suitable for upgrade.

= MISCELLANEOUS CHECKS =

INFO: Checking PBS daemon services..
PASS: systemd unit 'proxmox-backup.service' is in state 'active'
PASS: systemd unit 'proxmox-backup-proxy.service' is in state 'active'
INFO: Checking for supported & active NTP service..
PASS: Detected active time synchronisation unit
INFO: Checking for package repository suite mismatches..
PASS: found no suite mismatch
INFO: Checking bootloader configuration...
PASS: bootloader packages installed correctly
SKIP: could not get dkms status

= SUMMARY =

TOTAL:     9
PASSED:    8
SKIPPED:   1
NOTICE:    0
root@proxmox-pbs:~# proxmox-backup-manager versions
proxmox-backup-server 3.4.6-1 running version: 3.4.6
 
I couldn't get the PBS install CD to work in recovery mode so made a Debian 13 Live CD instead to do the following troubleshooting...

My `lsblk -v` is:
Code:
user@debian:~$ lsblk -f
NAME   FSTYPE      FSVER    LABEL          UUID                                   FSAVAIL FSUSE% MOUNTPOINTS
loop0  squashfs    4.0                                                                  0   100% /run/live/rootfs/filesystem.squashfs
sda
├─sda1 zfs_member  5000     mainpool       16836993471012542631
└─sda9
sdb
├─sdb1 zfs_member  5000     mainpool       16836993471012542631
└─sdb9
sdc
├─sdc1 zfs_member  5000     mainpool       16836993471012542631
└─sdc9
sdd
├─sdd1 zfs_member  5000     mainpool       16836993471012542631
└─sdd9
sdg
├─sdg1 ext2        1.0                     9333eb40-8071-460b-972f-a3192d483667
├─sdg2 ext2        1.0      QTS_BOOT_PART2 2ebeded0-fd6a-4d4c-9cc4-61bdeda07532
├─sdg3 ext2        1.0      QTS_BOOT_PART3 e57e0b26-d4f4-4398-80ad-299a14860b4f
├─sdg4
├─sdg5 ext2        1.0                     ba5d6eee-24a9-43bc-b861-8f4ebfbcd2c7
└─sdg6 ext2        1.0                     c5a5224c-2a7e-46b4-b98c-e87b07fd65f9
sdh
├─sdh1
├─sdh2 vfat        FAT32                   B3D3-5402
└─sdh3 LVM2_member LVM2 001                34XsI0-g0M8-nUxK-Aqml-MiDN-Ptrd-w2b0t9
sdi
└─sdi1 vfat        FAT32    D-LIVE 13_0    1AF9-293B                                53.7G     7% /media/user/D-LIVE 13_0

And `efibootmgr -v` is:
Code:
user@debian:~$ efibootmgr -v
BootCurrent: 0011
Timeout: 1 seconds
BootOrder: 0011,0002,000F,0010,0001,0009,000A,000B,000C,000E
Boot0001   USB DISK MODULE PMAP BBS(Floppy,,0x0)0000424f
      dp: 05 01 09 00 01 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot0002* proxmox       HD(2,GPT,852e820e-175c-467b-9ba3-c423cdec937b,0x800,0x200000)/File(\EFI\PROXMOX\SHIMX64.EFI)
      dp: 04 01 2a 00 02 00 00 00 00 08 00 00 00 00 00 00 00 00 20 00 00 00 00 00 0e 82 2e 85 5c 17 7b 46 9b a3 c4 23 cd ec 93 7b 02 02 / 04 04 36 00 5c 00 45 00 46 00 49 00 5c 00 50 00 52 00 4f 00 58 00 4d 00 4f 00 58 00 5c 00 53 00 48 00 49 00 4d 00 58 00 36 00 34 00 2e 00 45 00 46 00 49 00 00 00 / 7f ff 04 00
Boot0009  A0S2 WDC WD30EFZX-68AWUN0     BBS(HD,,0x0)0000424f
      dp: 05 01 09 00 02 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot000A  A0S3 WDC WD30EFRX-68EUZN0     BBS(HD,,0x0)0000424f
      dp: 05 01 09 00 02 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot000B  A0S2 WDC WD30EFAX-68JH4N0     BBS(HD,,0x0)0000424f
      dp: 05 01 09 00 02 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot000C  A0S3 WDC WD30EFRX-68EUZN0     BBS(HD,,0x0)0000424f
      dp: 05 01 09 00 02 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot000E  Sabrent SSD 1.00      BBS(Floppy,,0x0)0000424f
      dp: 05 01 09 00 01 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot000F* UEFI OS       HD(2,GPT,852e820e-175c-467b-9ba3-c423cdec937b,0x800,0x200000)/File(\EFI\BOOT\BOOTX64.EFI)
      dp: 04 01 2a 00 02 00 00 00 00 08 00 00 00 00 00 00 00 00 20 00 00 00 00 00 0e 82 2e 85 5c 17 7b 46 9b a3 c4 23 cd ec 93 7b 02 02 / 04 04 30 00 5c 00 45 00 46 00 49 00 5c 00 42 00 4f 00 4f 00 54 00 5c 00 42 00 4f 00 4f 00 54 00 58 00 36 00 34 00 2e 00 45 00 46 00 49 00 00 00 / 7f ff 04 00
Boot0010* Lexar USB Flash Drive 3.00    BBS(Floppy,,0x0)0000424f
      dp: 05 01 09 00 01 00 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f
Boot0011* UEFI: Lexar USB Flash Drive 3.00      PciRoot(0x0)/Pci(0x14,0x0)/USB(0,0)/USB(2,0)/HD(1,MBR,0x19d2c37,0x800,0x733b7c0)0000424f
      dp: 02 01 0c 00 d0 41 03 0a 00 00 00 00 / 01 01 06 00 00 14 / 03 05 06 00 00 00 / 03 05 06 00 02 00 / 04 01 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 c0 b7 33 07 00 00 00 00 37 2c 9d 01 00 00 00 00 00 00 00 00 00 00 00 00 01 01 / 7f ff 04 00
    data: 00 00 42 4f

Any other suggestions most welcome!
 
The same but different here.
EVERY kernel booting (including the recovery ones) ends in a kernel panic.

It's a HP Proliant Microserver Gen8 booting from PCIe Storage-Controller.

debian trixie rescue boots fine. Can access root in lvm. Even start a shell there.

Don't know what to do else.
 
Last edited:
BTW not sure if anyone else in this thread had any luck but I ended up just nuking my PBS install and re-doing it from scratch then reimporting the ZFS pools and setting up SSL cert, etc. A bit of the PITA but seemed quicker than messing about for hours longer with the GRUB issue. A bit nervous about upgrading my main PVE installs now though...
 
You're right. After trying a lot. Fresh install on new SSD, importing the former made backup (mentioned in the upgrade docs), reimporting the zfs pool and thats it. If i knew that this is so simple, i wouldn't have spent couple of hours to solve the "whatever error".
 
My grub was messed up after upgrading, so I did a liveboot to mount the root volume and boot, then reinstalled and updated grub and I was back.


Bash:
# find your root and boot by looking at your partitions, mine looked like this
lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
nvme0n1      259:0    0 931.5G  0 disk
├─nvme0n1p1  259:1    0  1007K  0 part
├─nvme0n1p2  259:2    0     1G  0 part
└─nvme0n1p3  259:3    0 930.5G  0 part
  ├─pbs-swap 252:0    0     4G  0 lvm  [SWAP]
  └─pbs-root 252:1    0 910.5G  0 lvm  /

# find your volumes and activate them
vgscan
vgchange -ay
# get your root volume path
lvdisplay

# mount root
mkdir /mnt/pbs
mount /dev/[VG-name]/root /mnt/pbs

# mount efi partition (in my case on nvme0n1p2)
mkdir -p /mnt/pbs/boot/efi
mount /dev/nvme0n1p2 /mnt/pbs/boot/efi

# bind mount your system dirs
mount --bind /dev /mnt/pbs/dev
mount --bind /proc /mnt/pbs/proc
mount --bind /sys /mnt/pbs/sys
mount --bind /run /mnt/pbs/run

# enter chroot and reinstall grub
chroot /mnt/pbs
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=proxmox
update-grub

# (clean exit) Exit chroot, unmount everything and deactivate the volume 
exit
umount /mnt/pbs/run
umount /mnt/pbs/sys
umount /mnt/pbs/proc
umount /mnt/pbs/dev
umount /mnt/pbs/boot/efi
umount /mnt/pbs

vgchange -an
shutdown -r now
# remove whichever liveboot you used
 
  • Like
Reactions: metaphase and UdoB
Are there examples where the upgrade worked when removing the systemd-boot package upfront?

Bash:
root@pbs:~# pbs3to4 --full

shows the following output:

root@pbs:~# pbs3to4 --full
= CHECKING VERSION INFORMATION FOR PBS PACKAGES =

INFO: Checking for package updates..
PASS: all packages up-to-date
INFO: Checking proxmox backup server package version..
PASS: 'proxmox-backup' has version >= 3.4.0
INFO: Check running kernel version..
PASS: running kernel '6.8.12-12-pve' is considered suitable for upgrade.

= MISCELLANEOUS CHECKS =

INFO: Checking PBS daemon services..
PASS: systemd unit 'proxmox-backup.service' is in state 'active'
PASS: systemd unit 'proxmox-backup-proxy.service' is in state 'active'
INFO: Checking for supported & active NTP service..
PASS: Detected active time synchronisation unit
INFO: Checking for package repository suite mismatches..
PASS: found no suite mismatch
INFO: Checking bootloader configuration...
FAIL: systemd-boot meta-package installed. This will cause problems on upgrades of other boot-related packages.
Remove the 'systemd-boot' package.
See https://pbs.proxmox.com/wiki/Upgrade_from_3_to_4#sd-boot-warning for more information.

SKIP: could not get dkms status

= SUMMARY =

TOTAL: 9
PASSED: 7
SKIPPED: 1
NOTICE: 0
FAILURES: 1

ATTENTION: Please check the output for detailed information!
Try to solve the problems one at a time and rerun this checklist tool again.
 
I was brave and answered the question for myself:

I removed the meta pagacke systemd-boot and did the upgrade. I crossed my fingers during reboot but it worked flawlessly. :-)
 
Yep I removed it then had the problems above - not sure if it was related to the boot drive being an external SSD or not? Glad it worked OK for you - I've still not plucked up the courage to upgrade my PVE installs yet, even though they don't have any external SSDs.
 
I think I have a default environment: bare metal server with a M2 SSD for proxmox and then additional SSDs for the VMs and containers, no ZFS but Ext4. Maybe using different hardware, boot options or files systems may cause the problem.