Introduzione

Potrebbe essere necessario avere la possibilità di inserire nella blacklist un pacchetto o pacchetti multipli in modo tale che quando viene eseguito il comando di aggiornamento, questo ignori i pacchetti nella blacklist e installi il resto degli aggiornamenti nel sistema.

Bloccare l'aggiornamento di un pacchetto

Esistono quattro modi per trattenere i pacchetti: con dpkg, apt, aptitude o dselect.

dpkg

Metti un pacchetto in attesa con il seguente comando:

echo "<package-name> hold" | sudo dpkg --set-selections

Rimuovi la sospensione:

echo "<package-name> install" | sudo dpkg --set-selections

Visualizza lo stato dei tuoi pacchetti:

dpkg --get-selections

Visualizza lo stato di un singolo pacchetto:

dpkg --get-selections | grep "<package-name>"

apt

Tenere un pacchetto:

sudo apt-mark hold <package-name>

Rimuovi la sospensione:

sudo apt-mark unhold <package-name>

Mostra tutti i pacchetti in attesa:

sudo apt-mark showhold

dselect

Con dselect, accedi alla schermata [S]elect, trova il pacchetto che desideri conservare nel suo stato attuale e premi = o H. Le modifiche diventeranno effettive immediatamente dopo essere usciti dalla schermata [S]elect.

I seguenti approcci sono limitati in quanto il blocco/mantenimento (locking/holding) di un pacchetto all'interno di aptitude o synaptic non influenza apt-get/apt.

aptitude

Bloccare (hold) un pacchetto:

sudo aptitude hold <package-name>

Rimuovi la sospensione:

sudo aptitude unhold <package-name>

Bloccare con Synaptic Package Manager

In alternative è possibile bloccare l'aggiornamento di un pacchetto specifico utilizzando il Gestore pacchetti Synaptic.

Vai in Gestore pacchetti Synaptic (Sistema> Amministrazione> Gestore pacchetti Synaptic).

Fai clic sul pulsante di ricerca e digita il nome del pacchetto.

Quando trovi il pacchetto, selezionalo e vai al menu Pacchetto e seleziona Blocca versione.

Quel pacchetto ora non verrà mostrato nel gestore aggiornamenti e non verrà aggiornato.

Conclusione

In questo articolo abbiamo visto come bloccare l'aggiornamento, quindi inserirlo in una blacklist, di un pacchetto su Linux.