Proxmox VE 8 to 9 Upgrade Guide (Debian Bookworm → Trixie)

1. Introduction

Proxmox VE 9.x brings new features, security updates, and performance improvements.
You can upgrade in two main ways:

  • Fresh install → Install PVE 9 from ISO, then restore backups.
  • In-place upgrade → Keep your system and update it to Debian Trixie + PVE 9.

This guide focuses on the in-place upgrade from PVE 8.x (Bookworm) to PVE 9.x (Trixie).

Important:

  • Back up all VMs, containers, and configuration before starting.
  • Test in a lab environment if possible.
  • For production, plan downtime or do a node-by-node cluster upgrade.

2. Prerequisites

  1. Upgrade to latest PVE 8.4.x: apt update apt dist-upgrade pveversion Ensure version is 8.4.1+.
  2. If using Ceph, upgrade to Ceph 19.2 Squid before proceeding.
  3. Make sure you have:
    • Reliable console/IPMI access (avoid GUI virtual console during upgrade).
    • 5 GB+ free space on root (10 GB+ recommended).
    • Healthy cluster (if applicable).
    • Tested backups (VMs, CTs, configs in /etc and /etc/pve).
  4. Install terminal multiplexer: apt install tmux This keeps your session alive during upgrade.

3. Pre-Upgrade Checklist

Run Proxmox’s upgrade checker:

pve8to9 --full

Fix all warnings before proceeding.

4. Migrating Running Workloads (Clusters Only)

Migrate VMs/CTs away from the node you are upgrading.

  • Do one node at a time.
  • Never upgrade all nodes simultaneously.

5. Update Repositories

5.1 Update Debian from Bookworm to Trixie

sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/pve-enterprise.list

Comment out any leftover Bookworm repos.

5.2 Add Proxmox VE 9 Repository

Enterprise (licensed):

cat > /etc/apt/sources.list.d/pve-enterprise.sources << EOF
Types: deb
URIs: https://enterprise.proxmox.com/debian/pve
Suites: trixie
Components: pve-enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

No-subscription:

cat > /etc/apt/sources.list.d/proxmox.sources << EOF
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF
cat > /etc/apt/sources.list.d/proxmox.sources << EOF
Types: deb
URIs: http://download.proxmox.com/debian/pbs
Suites: trixie
Components: pbs-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

5.3 Update Ceph Repository (Ceph Users Only)

Enterprise:

cat > /etc/apt/sources.list.d/ceph.sources << EOF
Types: deb
URIs: https://enterprise.proxmox.com/debian/ceph-squid
Suites: trixie
Components: enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

No-subscription:

cat > /etc/apt/sources.list.d/ceph.sources << EOF
Types: deb
URIs: http://download.proxmox.com/debian/ceph-squid
Suites: trixie
Components: no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

6. Upgrade Process

6.1 Update Package Index

apt update

6.2 Start Upgrade

apt dist-upgrade
  • Read prompts carefully.
  • When in doubt, keep existing config except for /etc/lvm/lvm.conf and /etc/ssh/sshd_config (recommend updating these).

6.3 Reboot into New Kernel

reboot

7. Post-Upgrade Steps

Verify version: pveversion Should show Proxmox VE 9.x.

  1. Clear browser cache & reload Web UI (CTRL+SHIFT+R).
  2. Cluster users:
    • Upgrade remaining nodes one-by-one.
    • Check HA rules (HA groups are replaced with HA rules).
  3. Optional: Convert repository files to deb822 format: apt modernize-sources

8. Common Pitfalls & Fixes

  • pve8to9 warns proxmox-ve is too old:
    Make sure you upgraded to the latest PVE 8.x before starting.
  • GRUB fails in UEFI with LVM: [ -d /sys/firmware/efi ] && apt install grub-efi-amd64
  • PCI passthrough issues:
    Boot with older kernel until fixed.
  • Veeam Backup breaks on QEMU ≥ 10:
    Pin VM machine type to 9.2+pve1.
  • NIC name changes:
    Use pve-network-interface-pinning to lock NIC names.

Upgrade Complete! Your Proxmox VE 9 is now running with Debian Trixie.

Leave a Comment