Cloud and Self-Hosting
How to Disable the Proxmox Enterprise Repository and Enable the No-Subscription Repository
By Amjid Ali · · Updated · 5 min read
In this article
- Quick answer: Proxmox VE 9 (Debian Trixie)
- Why the enterprise repository fails without a subscription
- What changed in Proxmox VE 9: deb822 .sources files
- Method 1: the web GUI (PVE 8 and PVE 9)
- Method 2: the command line on Proxmox VE 9
- Method 3: the command line on Proxmox VE 8
- Verify that updates come from no-subscription
- Troubleshooting
- What about the "No valid subscription" popup?
- Next steps
Prefer to watch? This video walks through it step by step. Prefer to read? The full guide is below.
To disable the Proxmox enterprise repository, switch it off and add the free pve-no-subscription repository in its place. On Proxmox VE 9 add Enabled: no to /etc/apt/sources.list.d/pve-enterprise.sources and create a proxmox.sources file for no-subscription. On Proxmox VE 8 comment out the line in pve-enterprise.list and add a pve-no-subscription line. Do the same for Ceph, run apt update, and the 401 Unauthorized errors are gone.
I do this on every node in my homelab cluster straight after installing, because a fresh Proxmox install points at the paid enterprise repository and apt update fails until you change it. Below are both methods (web GUI and shell) for both current releases.
Quick answer: Proxmox VE 9 (Debian Trixie)
Run these as root on each node:
# 1. Disable the enterprise repository
sed -i '/^Enabled:/d; /^Types:/a Enabled: no' /etc/apt/sources.list.d/pve-enterprise.sources
# 2. Add the 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
# 3. Point Ceph at its no-subscription repository (keeps your Ceph release name)
sed -i 's|https://enterprise.proxmox.com/debian/ceph-|http://download.proxmox.com/debian/ceph-|; s|^Components: enterprise|Components: no-subscription|' /etc/apt/sources.list.d/ceph.sources
# 4. Refresh and upgrade
apt update && apt full-upgrade
Prefer clicking? Use Method 1 (the web GUI) below instead. It does the same thing and works on both versions.
Why the enterprise repository fails without a subscription
Proxmox VE ships with the enterprise repository enabled. It is the most tested update channel, but enterprise.proxmox.com only serves nodes with a valid subscription key. Without one, apt update stops with errors like these:
Err:4 https://enterprise.proxmox.com/debian/pve trixie InRelease
401 Unauthorized [IP: <address> 443]
E: Failed to fetch https://enterprise.proxmox.com/debian/pve/dists/trixie/InRelease 401 Unauthorized [IP: <address> 443]
E: The repository 'https://enterprise.proxmox.com/debian/pve trixie InRelease' is not signed.
On Proxmox VE 8 the same error says bookworm instead of trixie. The same happens for the Ceph enterprise repository, even if you never installed Ceph, because the installer adds it too.
Proxmox gives you three repositories for the main packages:
| Repository | Who it is for | Needs a subscription |
|---|---|---|
pve-enterprise |
Production, most tested | Yes |
pve-no-subscription |
Homelabs, test and small setups | No |
pvetest |
Testing new packages before release | No |
For a homelab, pve-no-subscription is the right choice. The packages are the same ones that reach enterprise later, after more testing.
What changed in Proxmox VE 9: deb822 .sources files
Proxmox VE 9 is based on Debian 13 Trixie, and the repository files moved from one-line .list files to the deb822 format. If you follow an older guide on PVE 9 you will find that pve-enterprise.list no longer exists, which is why many readers got stuck.
| Proxmox VE 8 (Bookworm) | Proxmox VE 9 (Trixie) | |
|---|---|---|
| Enterprise file | /etc/apt/sources.list.d/pve-enterprise.list |
/etc/apt/sources.list.d/pve-enterprise.sources |
| Ceph file | /etc/apt/sources.list.d/ceph.list |
/etc/apt/sources.list.d/ceph.sources |
| How to disable | Put # in front of the deb line |
Add Enabled: no to the stanza |
| Signing key | /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg |
/usr/share/keyrings/proxmox-archive-keyring.gpg |
Check which version you are on first:
pveversion
ls /etc/apt/sources.list.d/
Method 1: the web GUI (PVE 8 and PVE 9)
The GUI is the quickest and it writes the right file format for your version.
- Log in to the web interface and select your node (not Datacenter) in the left tree.
- Open Updates > Repositories.
- Click the
pve-enterpriserow and press Disable. - If there is a Ceph enterprise row (
ceph-squid,ceph-tentacle,ceph-reeforceph-quincywith componententerprise), select it and press Disable too. - Click Add, choose No-Subscription in the Repository drop-down and press Add. Accept the "no valid subscription" notice.
- If you use Ceph, click Add again and choose Ceph No-Subscription (it may be listed with the Ceph release name).
- Go to Updates, click Refresh, then Upgrade.
The status box at the top of the Repositories page should now say that updates come from a non-production repository. That warning is normal for no-subscription. In a cluster, repeat this on every node: repositories are set per node.
Method 2: the command line on Proxmox VE 9
Step 1: disable the enterprise repository
The default file looks like this:
cat /etc/apt/sources.list.d/pve-enterprise.sources
Types: deb
URIs: https://enterprise.proxmox.com/debian/pve
Suites: trixie
Components: pve-enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Add Enabled: no. You can open it with nano and type the line under Types: deb, or run:
sed -i '/^Enabled:/d; /^Types:/a Enabled: no' /etc/apt/sources.list.d/pve-enterprise.sources
The sed command removes any existing Enabled: line first, so it is safe to run twice. Do not delete the file: it belongs to a package and can come back on upgrade.
Step 2: add the no-subscription repository
Create /etc/apt/sources.list.d/proxmox.sources, the same file name the Proxmox wiki uses:
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
The download uses plain HTTP on purpose: every package is checked against the Proxmox signing key in Signed-By, so it cannot be tampered with in transit.
Step 3: switch Ceph to no-subscription
Look at the Ceph file first:
cat /etc/apt/sources.list.d/ceph.sources
It will point at https://enterprise.proxmox.com/debian/ceph-squid or ceph-tentacle with Components: enterprise. Keep the same Ceph release and change only the host and component:
sed -i 's|https://enterprise.proxmox.com/debian/ceph-|http://download.proxmox.com/debian/ceph-|; s|^Components: enterprise|Components: no-subscription|' /etc/apt/sources.list.d/ceph.sources
The result should read, for Ceph Squid:
Types: deb
URIs: http://download.proxmox.com/debian/ceph-squid
Suites: trixie
Components: no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
If you never use Ceph, you can instead add Enabled: no to this file, exactly as in Step 1.
Step 4: update
apt update
apt full-upgrade
Use full-upgrade (or dist-upgrade), never plain apt upgrade, on Proxmox. Plain upgrade holds back packages that need new dependencies, such as a new kernel or pve-manager.
Method 3: the command line on Proxmox VE 8
On PVE 8 (Debian Bookworm) the files are one-line .list files.
# 1. Comment out the enterprise repository
sed -i 's/^deb/# deb/' /etc/apt/sources.list.d/pve-enterprise.list
# 2. Add the no-subscription repository
echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
# 3. Switch Ceph (quincy or reef) to no-subscription, keeping the release name
sed -i 's|https://enterprise.proxmox.com|http://download.proxmox.com|; s/ enterprise$/ no-subscription/' /etc/apt/sources.list.d/ceph.list
# 4. Update
apt update && apt full-upgrade
Check the result:
cat /etc/apt/sources.list.d/pve-enterprise.list
cat /etc/apt/sources.list.d/ceph.list
# deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
deb http://download.proxmox.com/debian/ceph-quincy bookworm no-subscription
An ISO install already has the signing key. If you installed Proxmox VE 8 on top of plain Debian and apt update reports NO_PUBKEY, fetch it:
wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
Verify that updates come from no-subscription
apt update
apt policy pve-manager
apt update should finish without any 401 lines, and the policy output should list the no-subscription source:
pve-manager:
Installed: 9.x.x
Candidate: 9.x.x
Version table:
*** 9.x.x 500
500 http://download.proxmox.com/debian/pve trixie/pve-no-subscription amd64 Packages
In the GUI, Updates > Repositories should show the enterprise rows as disabled and no errors.
Troubleshooting
Still getting 401 Unauthorized. Another file still enables an enterprise URL. Find it:
grep -r "enterprise.proxmox.com" /etc/apt/sources.list /etc/apt/sources.list.d/
Every match should be commented out (.list) or sit in a stanza with Enabled: no (.sources). The Ceph file is the one people miss most often.
Malformed stanza or Malformed entry after editing a .sources file. deb822 is strict: one field per line, Field: value, and a blank line separates stanzas. A stray blank line in the middle of a stanza, or Enabled: no added after a trailing blank line, breaks it. Open the file in nano and make each stanza one solid block.
Target Packages ... is configured multiple times. The same repository is in both an old .list file and a new .sources file, common after an 8 to 9 upgrade. Delete the duplicate .list file, or convert everything with apt modernize-sources as explained in the Proxmox VE 8 to 9 upgrade guide.
Conflicting values set for option Signed-By. Two entries for the same URL point at different keyrings. Keep one entry, with Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg on PVE 9.
Reinstallation of proxmox-widget-toolkit is not possible, it cannot be downloaded. That happens when a nag-removal script runs before the repositories are fixed. Fix the repositories, run apt update, then apt install --reinstall proxmox-widget-toolkit and clear your browser cache.
Packages from trixie and bookworm mixed. Never point a PVE 9 node at a bookworm repository or the other way round. The suite in every file must match your Debian release.
What about the "No valid subscription" popup?
Changing repositories does not remove the login popup. That dialog is the web interface checking for a subscription key, and it stays on the free repository. You can click OK and carry on, buy a Community subscription to support the project, or follow my guide to disable the Proxmox subscription nag warning. Do the repository change first, because the nag fix reinstalls a package and needs working repositories.
Next steps
With updates working, you can upgrade Proxmox VE to the latest point release, set up automatic backups of the host configuration, or plan the major upgrade from Proxmox VE 8 to 9. If you want to learn Proxmox properly from the start, my Proxmox VE complete training course covers installation, storage, clustering and backups.
The official reference for every repository line on this page is the Proxmox wiki page on Package Repositories.
Frequently asked questions
How do I disable the enterprise repository in Proxmox VE 9?+
Proxmox VE 9 uses deb822 files, so you do not comment out a line. Add the line Enabled: no to /etc/apt/sources.list.d/pve-enterprise.sources (and to ceph.sources if you do not use Ceph enterprise), or select the repository under your node, Updates, Repositories and click Disable. Then run apt update.
Is the Proxmox no-subscription repository safe to use?+
Yes for homelabs and test clusters. It carries the same packages as enterprise, just released earlier and with less testing. Proxmox recommends the enterprise repository for production, and the GUI shows a warning while no-subscription is enabled, which is expected.
Why does apt update give 401 Unauthorized on enterprise.proxmox.com?+
The enterprise repository needs a valid subscription key on the node. Without one, apt gets 401 Unauthorized and then reports the repository as not signed. Disable the enterprise repository (and the Ceph enterprise one) and enable no-subscription to fix it.
Does disabling the enterprise repository remove the "No valid subscription" popup?+
No. The popup comes from the web interface checking for a subscription key, not from apt. You can ignore it, buy a subscription, or patch it out as described in the SyncBricks guide to the Proxmox subscription nag.
Should I delete pve-enterprise.sources instead of disabling it?+
Disabling is better. The file belongs to the Proxmox packages, and an upgrade can bring it back if it is deleted. Enabled no keeps it in place and switched off, and you can re-enable it in one click if you buy a subscription later.
What is the no-subscription repository line for Proxmox VE 8?+
On Proxmox VE 8 (Debian Bookworm) it is: deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription, saved in a file such as /etc/apt/sources.list.d/pve-no-subscription.list.
Sources
- Package Repositories, Proxmox Server Solutions
- Upgrade from 8 to 9, Proxmox Server Solutions
Related videos
Video library- Cloud and Self-Hosting
Proxmox // proxmox repository Setup for Installing ifupdown2
· 6:23 · 11.6K views
Read the guide Watch on YouTube - Cloud and Self-Hosting
Proxmox QEMU Guest Agent: Install & Enable in Ubuntu VM (Show IP, Shutdown Fix!)
· 2:33 · 2.2K views
Watch on YouTube - Cloud and Self-Hosting
How to Enable GPU Passthrough in Proxmox VE | Full Host Setup Guide (AMD & Intel)
· 7:28 · 22.5K views
Watch on YouTube
Keep reading
Cloud and Self-HostingInstalling Kubernetes Dashboard on a K3s High Availability Cluster (Ubuntu 24.04)The Kubernetes Dashboard is a browser-based UI that allows you to visualize, manage, and troubleshoot workloads and resources inside your Kubernetes clu... · 2 min read
Cloud and Self-HostingInstall a 3-Node HA Kubernetes (K3s) Cluster on Ubuntu Server 24.04 Step-by-Step (Proxmox/VM Friendly)Step-by-step guide to install a 3-node HA Kubernetes (K3s) cluster on Ubuntu Server 24.04 using Proxmox VMs. Includes setup, firewall rules, tokens, and verification. · 5 min read
Cloud and Self-HostingHow to Install and Configure n8n on Oracle Cloud Always Free VM (Ubuntu 24.04)n8n (short for nodemation) is an open-source workflow automation platform that allows you to connect applications and APIs, automate repetitive tasks, a... · 4 min read