Home
» LINUX
»
Come disabilitare Snap in Ubuntu e rimuovere snapd
Come disabilitare Snap in Ubuntu e rimuovere snapd
Se desideri un sistema Ubuntu senza pacchetti Snap, l'approccio corretto consiste nel rimuovere prima i pacchetti Snap installati, rimuovere il runtime snapd e, facoltativamente, bloccare la snapdsuccessiva installazione del pacchetto Debian. Non iniziare smontando forzatamente /snapo eliminando le cartelle di sistema mentre i pacchetti Snap sono ancora installati.
Questa guida si applica alle installazioni standard di Ubuntu Desktop e Ubuntu Server. Non è pensata per Ubuntu Core, che si basa su Snap. La documentazione attuale di Canonical sulla dismissione di Snap raccomanda inoltre di rimuovere gli Snap installati prima di rimuovere il pacchetto snapd.
Prima di disattivare Snap
La rimozione degli snap può anche comportare la rimozione di applicazioni da cui si dipende, incluso il software che Ubuntu distribuisce principalmente tramite snap. Eseguite prima un backup di tutto ciò che è importante. I dati delle applicazioni snap possono risiedere nella directory ~/snap/dell'utente corrente e /var/snap/nella directory dei dati di sistema, come documentato nella documentazione di Canonical sulle posizioni dei dati degli snap .
Si noti inoltre che alcuni pacchetti Ubuntu Debian sono progettati per installare uno snap. Ad esempio, il pacchetto Firefox di Ubuntu nelle versioni attuali installa lo snap di Firefox anziché un tradizionale pacchetto DEB di Firefox. Se si blocca permanentemente snapd, i pacchetti che dipendono da esso potrebbero non installarsi più correttamente.
1. Elenca tutti gli snap installati
Apri il Terminale ed esegui:
snap list
L'elenco esatto varia a seconda della versione di Ubuntu e dei programmi installati. Iniziate con le applicazioni utente, quindi rimuovete i contenuti di supporto o gli snap di base. Se uno snap di base è ancora necessario a un altro snap, snapd si rifiuterà di rimuoverlo finché il pacchetto dipendente non sarà stato eliminato.
Utilizza snap list per vedere cosa deve essere rimosso prima di disinstallare snapd. I nomi dei pacchetti sul tuo sistema potrebbero essere diversi.
2. Rimuovere gli snap installati
Rimuovi ogni snapshot dell'applicazione specificandone il nome. L'utilizzo di questa opzione --purgesalta lo snapshot di rimozione automatico ed elimina immediatamente i dati dello snap, quindi utilizzala solo dopo aver eseguito il backup di tutto ciò che ti serve. Canonical documenta questo comportamento nella sua guida alla rimozione degli snap .
Questi sono esempi; ignora i nomi che non sono installati. Ripeti il comando per gli snap dell'applicazione rimanenti, quindi per gli snap di contenuto e di base che non sono più necessari. Esegui snap listnuovamente il comando finché non snapdrimane solo , o finché non rimangono più snap.
Rimuove gli snapshot dell'applicazione prima degli snapshot di base. L'opzione --purge impedisce a snapd di creare uno snapshot automatico durante la rimozione.
3. Rimuovere lo snapd snap e la confezione snapd
Se snapdappare ancora in snap list, rimuovi quello snap dopo aver rimosso tutti gli altri snap:
sudo snap remove snapd --purge
Successivamente, rimuovere il pacchetto Debian che fornisce il demone Snap e gli strumenti da riga di comando:
sudo apt remove --purge snapd
Secondo la documentazione di Canonical relativa alla dismissione, la rimozione del snapdpacchetto Debian elimina le directory di sistema principali di Snap, tra cui /var/snap, /var/lib/snapd, /var/cache/snapd, e /snap. Ciò significa che il vecchio consiglio di smontare manualmente gli snap principali o di eseguire immediatamente rm -rfcomandi distruttivi su tali percorsi di sistema non è normalmente necessario.
La disinstallazione del pacchetto snapd di Debian rimuove il demone Snap e le sue principali directory gestite dal sistema.
4. Rimuovere i dati Snap residui per ciascun utente
La disinstallazione del pacchetto non elimina necessariamente i dati di Snap memorizzati nella directory home di ciascun utente. Dopo aver verificato di non aver più bisogno di tali file, rimuovere le directory di Snap dell'utente corrente:
rm -rf "$HOME/snap" "$HOME/.snap"
Se il computer dispone di più account utente, controlla ogni directory home separatamente anziché eliminare i dati utente indiscriminatamente. Disconnettiti e accedi di nuovo, oppure riavvia il computer, per aggiornare la sessione.
5. Opzionale: impedisci che snapd venga reinstallato
Se per ora volevi solo rimuovere Snap, puoi fermarti dopo il passaggio precedente. Se invece vuoi che APT rifiuti snapdle installazioni future, crea un file di preferenze APT:
sudo nano /etc/apt/preferences.d/nosnap.pref
Aggiungi queste tre righe:
Package: snapd
Pin: release a=*
Pin-Priority: -10
Salva il file, poi controlla il risultato:
apt-cache policy snapd
Il manuale ufficiale di apt_preferences di APT afferma che una priorità inferiore a zero impedisce l'installazione di una versione corrispondente. Il compromesso è intenzionale: qualsiasi pacchetto che richieda tale funzionalità snapdpotrebbe non installarsi correttamente finché non si rimuove questo blocco.
Un PIN APT negativo opzionale impedisce la reinstallazione automatica di Snap. Utilizzalo solo se intendi mantenere il sistema senza Snap.
Come riattivare Snap in seguito
Per sbloccare Snap e ripristinare il supporto, elimina il file delle preferenze e reinstallalo snapd:
Quindi disconnettiti e accedi di nuovo oppure riavvia il sistema. La guida all'installazione di snapd su Ubuntu di Canonical conferma che l'installazione del snapdpacchetto ripristina il supporto Snap su Ubuntu.