web analytics

[GUIDA] Come impedire l’update di un package su Ubuntu / Debian

canonical snap new compression algorithm

Grazie al comando apt upgrade è molto semplice aggiornare tutti i pacchetti installati su Debian, Ubuntu e sulle varie derivate. Lanciando questo comando, tutti i pacchetti presenti nel sistema (e le relative dipendenze) verranno aggiornati e alcuni pacchetti non necessari verranno eliminati. Il gestore di pacchetti Apt fa tutte queste cose automaticamente per aiutare gli utenti a mantenere un sistema pulito. Apt ha anche un’opzione per impedire che un pacchetto venga installato, aggiornato o rimosso. In questa breve guida, vi mostro come impedire l’aggiornamento di un pacchetto.

Perché NON aggiornare?

Se vi state chiedendo perché dovremmo evitare un aggiornamento sappiate che i motivi non mancano. Ad esempio c’è chi con il PC ci lavora e spesso tende a evitare (o posticipare) l’ultimissimo aggiornamento di un software, o di driver, per non incorrere in bug, crash o problemi. Talvolta una particolare versione di un programma è richiesta da un’altra applicazione affinché possa funzionare correttamente. Anche se gli sviluppatori testano accuratamente i pacchetti prima di inserirli nei repository qualche incompatibilità può sempre sfuggire. Insomma, i motivi per rimandare un aggiornamento non mancano di certo, vediamo come procedere!

Apt-mark su Ubuntu, Debian e derivate

apt-mark fa parte del pacchetto apt e permette di visualizzare e modificare lo stato dei pacchetti installati nel sistema, in particolare se sono stati installati in automatico (stato: auto) o manualmente (stato: manual), e se futuri aggiornamenti sono bloccati (stato: hold) oppure no.

In particolare, per prevenire l’aggiornamento di un package, ci interessano i comandi hold, unholdshowhold.

# apt-mark hold pacchetto1 pacchetto2 ... pacchettoN

L’output sarà il seguente: nomepacchetto set on hold, eccolo in azione su Ubuntu 20.10 Groovy Gorilla:

apt-mark hold package
Hold del pacchetto

Mettere un pacchetto in hold significa comunicare al gestore dei pacchetti che quel pacchetto non va toccato. Questo trucco può essere molto utile, ad esempio, per evitare di aggiornare i driver grafici.

Questo comando previene l’aggiornamento e la rimozione di tutti i pacchetti specificati, marcandoli come hold. Come fare per rimuovere il blocco dell’aggiornamento?

# apt-mark unhold pacchetto1 pacchetto2 ... pacchettoN

Unhold rimuove il blocco sull’aggiornamento dei pacchetti, togliendo lo  stato hold, se precedentemente impostato.

apt-mark showhold

Elenca in ordine alfabetico tutti i pacchetti installati sul sistema per i quali sono impediti futuri aggiornamenti.

apt ubuntu showhold package
Visualizziamo i pacchetti non aggiornabili con showhold

I comandi showauto, showmanual e showhold si limitano a listare i pacchetti del sistema secondo i criteri scelti. Possono essere usati con degli argomenti, per specificare l’insieme di pacchetti tra cui limitare la selezione degli stati desiderati.

$ apt-mark showhold

Elenca tutti i package installati sul sistema per i quali sono impediti gli aggiornamenti.

$ apt-mark showauto nomepacchetto

restituisce nomepacchetto soltanto se è stato installato in automatico.

apt-mark showmanual

Elenca i pacchetti installati manualmente.

sharing-caring-1Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.

Altre storie
linux
Linux, ricercatori scovano 5 gravi vulnerabilità: patch in arrivo