m4nifest0-tech

Cerca nel sito

Virtualizzazione

Aggiornamenti Proxmox VE senza subscription

Come sostituire il repository enterprise con quello community, capire le differenze tra i repo disponibili e mantenere Proxmox VE 9 aggiornato senza abbonamento.
Pubblicato il 5 min di lettura

Proxmox VE viene installato con il repository enterprise abilitato per impostazione predefinita. Senza una subscription attiva, apt update restituisce un errore 401 e gli aggiornamenti non vengono scaricati. La soluzione è sostituire il repository enterprise con quello community, che Proxmox mette a disposizione gratuitamente e riceve gli stessi pacchetti — con qualche giorno di ritardo.

Questa guida spiega cosa sono i diversi repository, come configurarli correttamente e come mantenere il sistema aggiornato.

I repository di Proxmox VE

Proxmox mantiene tre repository distinti per i pacchetti PVE:

RepositoryURLAccessoStabilità
pve-enterpriseenterprise.proxmox.comRichiede subscriptionMassima — testato a lungo
pve-no-subscriptiondownload.proxmox.comGratuitoBuona — leggermente meno testato
pvetestdownload.proxmox.comGratuitoBeta — non usare in produzione

Per un homelab il repository pve-no-subscription è la scelta giusta: riceve gli aggiornamenti di sicurezza e le stesse versioni del repo enterprise, ma senza il bollino di approvazione formale di Proxmox. In ambiente di produzione critico la subscription ha senso; in homelab no.

Proxmox 9 è basato su Debian 13 Trixie: il codename compare nell'URL dei repository e nei file di configurazione apt.

Procedura

1. Disabilitare il repository enterprise

Il file da modificare è /etc/apt/sources.list.d/pve-enterprise.list. Commenta la riga esistente:

Sul nodo Proxmox
sed -i 's|^deb|#deb|' /etc/apt/sources.list.d/pve-enterprise.list

Verifica che il risultato sia corretto:

cat /etc/apt/sources.list.d/pve-enterprise.list
# Output atteso:
# #deb https://enterprise.proxmox.com/debian/pve trixie pve-enterprise

2. Aggiungere il repository no-subscription

Crea un nuovo file dedicato:

cat > /etc/apt/sources.list.d/pve-no-subscription.list << 'EOF'
deb http://download.proxmox.com/debian/pve trixie pve-no-subscription
EOF

3. Gestire il repository Ceph (se presente)

Se usi Ceph, trovi un file analogo in /etc/apt/sources.list.d/ceph.list. Anche qui esiste la variante enterprise e quella community:

Disabilita il repo Ceph enterprise
sed -i 's|^deb|#deb|' /etc/apt/sources.list.d/ceph.list
Aggiungi il repo Ceph no-subscription
cat >> /etc/apt/sources.list.d/ceph.list << 'EOF'
deb http://download.proxmox.com/debian/ceph-squid trixie no-subscription
EOF

Nota

Il nome della versione Ceph (ceph-squid, ceph-reef, ecc.) dipende dalla versione di Ceph installata. Verifica con ceph --version prima di procedere.

Se non usi Ceph, puoi ignorare questo passaggio o commentare l'intero file.

4. Aggiornare l'indice e installare gli aggiornamenti

apt update && apt dist-upgrade

Usa dist-upgrade al posto di upgrade: Proxmox VE aggiorna a volte il kernel o pacchetti con dipendenze cambiate, e dist-upgrade gestisce correttamente le transizioni mentre upgrade le salta.

Attenzione

Se viene aggiornato il kernel, riavvia il nodo a breve. Proxmox mostra un avviso nell'interfaccia web quando il kernel in esecuzione è diverso da quello installato.

5. Rimuovere il popup "No valid subscription"

Proxmox mostra un popup all'accesso all'interfaccia web se non rileva una subscription attiva. Non è bloccante ma è fastidioso. Si rimuove modificando il file JavaScript dell'interfaccia:

Individua il file da modificare
find /usr/share/javascript/proxmox-widget-toolkit/ -name "*.js" | xargs grep -l "No valid subscription"
Applica la patch
FILE=$(find /usr/share/javascript/proxmox-widget-toolkit/ -name "*.js" | xargs grep -l "No valid subscription")
sed -i "s/res === null || res === undefined || \!res || res/false/" "$FILE"

Nota

Questo file viene sovrascritta ad ogni aggiornamento del pacchetto proxmox-widget-toolkit. Dovrai riapplicare la patch dopo ogni aggiornamento che tocca quel pacchetto. Puoi automatizzarlo con un hook dpkg (vedi sotto) oppure accettare di riapplicarla manualmente ogni tanto.

Automatizzare la riapplicazione della patch con un hook dpkg

Crea un hook che riesegue la patch ogni volta che proxmox-widget-toolkit viene aggiornato:

Crea l'hook dpkg
cat > /etc/apt/apt.conf.d/99-pve-no-subscription-patch << 'EOF'
DPkg::Post-Invoke {
    "FILE=$(find /usr/share/javascript/proxmox-widget-toolkit/ -name '*.js' | xargs grep -l 'No valid subscription' 2>/dev/null); [ -z \"$FILE\" ] || sed -i 's/res === null || res === undefined || \\!res || res/false/' \"$FILE\"";
};
EOF

Verificare la configurazione finale

Controlla i repository attivi
apt-cache policy | grep -E "proxmox|download.proxmox"

L'output deve mostrare solo download.proxmox.com (no-subscription), non enterprise.proxmox.com.

Controlla gli aggiornamenti disponibili
apt list --upgradable 2>/dev/null

Considerazioni

Frequenza degli aggiornamenti: i pacchetti nel repo no-subscription arrivano in genere con 1–7 giorni di ritardo rispetto all'enterprise. Per un homelab è irrilevante.

Aggiornamenti di sicurezza Debian: il file /etc/apt/sources.list principale gestisce i pacchetti Debian base (non PVE). Assicurati che contenga i mirror Debian corretti per ricevere le patch di sicurezza del sistema operativo sottostante.

Prima di ogni dist-upgrade: controlla le note di rilascio sul forum Proxmox se stai saltando più versioni, o se vedi pacchetti inattesi nella lista degli aggiornamenti. Un aggiornamento del kernel PVE va bene; una transizione di librerie di sistema merita un rapido controllo.

Articoli correlati