A fresh Proxmox VE install points at the enterprise repository, which needs a paid subscription. Without one, apt update fails with a 401 error. Switching to the Proxmox no-subscription repository gives you updates for free; it is suited to labs and smaller setups, while the enterprise repository receives more tested packages.
Before you start
- Root shell access to the node (web UI Node → Shell or SSH).
- Know your Proxmox VE major version and its Debian codename (for example
bookwormfor Proxmox VE 8):pveversionandcat /etc/os-release.
Switch to the Proxmox no-subscription repository
The easiest way is the web UI: select the node, open Updates → Repositories, disable the enterprise entries for Proxmox VE and Ceph, click Add and choose No-Subscription. Then add the Ceph no-subscription repo too if you use Ceph.
From the shell (Proxmox VE 8 on Debian bookworm), comment out the enterprise line in /etc/apt/sources.list.d/pve-enterprise.list and create the new list:
echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.listNote: Use the codename that matches your version. Newer releases may use a different file format; the web UI handles this for you.
Update Proxmox VE
apt updateapt full-upgradeAlways use full-upgrade (or dist-upgrade), never plain apt upgrade, on Proxmox. Reboot if a new kernel was installed; running VMs stop during the reboot unless you migrate them first.
Updating a cluster
- Update one node at a time.
- Migrate or shut down VMs on that node, update, reboot, and check it rejoins the cluster (
pvecm status). - Move on to the next node only when the first is healthy.
Troubleshooting
- 401 Unauthorized: the enterprise repository is still enabled.
- "You have held broken packages": you probably used
apt upgradeor mixed repositories for different versions; check the lists. - No valid subscription pop-up: it is a reminder only; it does not block anything.
Frequently asked questions
Is the no-subscription repository safe for production?
Many people run it, but packages get less testing. Test updates on a non-critical node first or buy a subscription.
Do I need to reboot after every update?
Only after kernel updates or when told to; other packages restart services themselves.
How do I upgrade to a new major version?
Follow the official upgrade guide and run the pveXtoY checker script first; never just change the codename and upgrade.
