Upgrading Proxmox 8 to Proxmox 9
Introduction
In this post I will present instructions how to upgrade Proxmox 8 to Proxmox 9.
OS used: Debian 12
Software used: Proxmox 8
Source
Introduction
Proxmox is probably a central component of many homelab systems, which is why backup data before proceeding with an upgrade. Because of its importance, it's also a good idea to perform a practice upgrade in a test virtual machine.
Proxmox 8 is based on Debian 12 and Proxmox 9 is based on Debian 13.
This tutorial assumes that you are using Proxmox without Enterprise subscription and you won't need to install this repository.
Instructions
-
Update Proxmox 8 packages to the latest version:
Datacenter> your Proxmox host >Updates> clickUpgrade
-
Reboot Proxmox system.
-
Stop all running virtual machines.
-
Connect using SSH to your Proxmox host and perform actions below as root user.
-
Check requirements for Proxmox 9 upgrade:
# pve8to9Ideally you should have no WARNINGS and FAILURES. With WARNINGS upgrade will probably succeed, but if you have FAILURES you need to fix them before upgrade.
-
Update Dabian base repositories to Debian 13 Trixie:
# sed -i 's/bookworm/trixie/g' /etc/apt/sources.list -
Add Proxmox 9 no-subscription repository:
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 -
Update packages:
# apt update -
Check repositories list - no errors should be shown when running this command:
# apt policy -
Remove old Proxmox 8 repository files:
# rm /etc/apt/sources.list.d/pve-install-repo.list && \ rm /etc/apt/sources.list.d/pve-enterprise.list -
Update packages and check repositories list:
# apt update && \ apt policy -
Upgrade Proxmox:
# apt dist-upgradeDuring the above step, you will be asked to approve changes to configuration files and some service restarts, as the default configurations will be updated by the respective packages. I choose to restart services during package upgrades without asking.
Also files that I was asked to replace to new version or leave current:
-/etc/issue- I choose to use new file
-/etc/lvm/lvm.conf- I choose to use new file -
Reboot Proxmox system.
-
When logging to the upgraded Proxmox 9 Web UI refresh browser cache by pressing following key combination: Ctrl + Shift + R.
-
Disable
enterprise repositoryif you don't have active enterprise subscription and plan to use only freeno-subscirptionrepository:Datacenter> your Proxmox host >Updates>Repositories> selectpve-enterprise> click buttonDisable
-
Modernize APT repository sources files to the new standard used in Debian:
# apt modernize-sourcesThis command will create new
.sourcesfiles with repositories configurations, but will also keep backup of old files as.list.bak. If everything is working correctly, you can delete those old files. -
Clean unused dependencies:
# apt autoremove