Your cart is currently empty!

Upgrading Proxmox 8 to Proxmox 9
How to Upgrade Proxmox VE 8 to 9: A Step-by-Step Guide
This guide will walk you through the process of upgrading a Proxmox VE 8 (based on Debian 12 “Bookworm”) node to Proxmox VE 9 (based on Debian 13 “Trixie”). We will use the official command-line method, which is robust and reliable for standalone nodes or clusters.
Proxmox VE 9 brings a host of new features, a new kernel, and updated QEMU/LXC versions. The upgrade is a major one, as it involves a full Debian distribution upgrade. Following these steps carefully will ensure a smooth transition.
Disclaimer: This process is well-tested, but you should always have a complete backup of your virtual machines, containers, and the Proxmox host itself before performing a major upgrade.
Step 1: Prepare Your System
Before you begin, it’s crucial to prepare your system. First, ensure you have recent, verified backups of all important VMs and Containers. It’s also wise to back up the /etc/pve directory, which contains your cluster configuration.
If you are running a cluster, ensure it is healthy and quorate before you start. You can check this with the command:
pvecm status
Finally, either migrate all guests off the node you are upgrading or shut them down.
Step 2: Fully Update Your Proxmox 8 System
Make sure you are running the latest version of Proxmox 8. This ensures you have all the latest patches and makes the jump to version 9 smoother.
apt update
apt dist-upgrade -y
Step 3: Switch to the Proxmox 9 (Trixie) Repositories
The core of the upgrade is telling Proxmox’s package manager (APT) to look for the new Trixie packages. These commands will automatically replace all instances of bookworm with trixie in your repository files.
# For the main Debian repositories
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
# For the Proxmox repositories
# Note: This handles both the no-subscription and enterprise lists
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/pve-*.list
# For the Ceph repositories (if you use Ceph)
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/ceph.list
Step 4: Perform the Distribution Upgrade
First, refresh APT’s database so it becomes aware of the new Proxmox 9 packages.
apt update
Now, run the main upgrade command. This will handle the installation of new packages, the removal of obsolete ones, and the upgrade of the entire underlying Debian operating system. This process will take a significant amount of time.
apt dist-upgrade -y
Step 5: Handle Configuration File Prompts
During the upgrade, you will likely be prompted about configuration files that have been modified locally. The system will ask whether to keep your current version or install the package maintainer’s new version. This is a critical step. When in doubt, the safest option is to keep your local, currently-installed version (usually by selecting N or O).
Here’s a guide on how to decide, based on common examples:
- Keep Your Version (High Priority): For services you have customized. Overwriting these could break your system.
lvm.conf: Contains your LVM storage configuration. Overwriting this is very risky and could affect Proxmox’s ability to see your storage pools. We chose to keep our local version.sshd_config: If you have customized SSH for security (e.g., disabling password login), you must keep your version to avoid being locked out.
- Your Choice (Low Priority): For cosmetic or non-critical files where the default is acceptable.
/etc/issue: This file controls the text banner at the login prompt. Choosing the new version is usually fine and just updates the branding from “Debian 12” to “Debian 13”.
You will also be given an option to view a “diff” or start a shell to investigate. If you are ever unsure, it is highly recommended to view the differences between the files before making a decision.
Step 6: Update Appliance Templates (Optional)
Update the list of available Turnkey Linux templates for your newly upgraded system.
pveam update
Step 7: Reboot the Node
Once the dist-upgrade is complete, a reboot is required to load the new kernel and finalize the system state.
reboot
Step 8: Verify the Upgrade
After the node reboots, log back in via SSH and check the version.
pveversion -v
The output should show pve-manager/9.x.x, confirming that your upgrade to Proxmox VE 9 was successful. You should also log into the web UI to confirm that everything is functioning as expected.
Step 9: Final Steps for a Cluster
If you have a cluster, your work is not done. Migrate some test VMs back to the newly upgraded node to confirm stability. Once confirmed, you can begin the entire process again on the next node, repeating until all nodes in the cluster are running Proxmox VE 9.
Congratulations! You have successfully upgraded your Proxmox environment.

Leave a Reply