GNU/Linux >> Linux Esercitazione >  >> Linux

Come disabilitare/bloccare o inserire nella blacklist gli aggiornamenti dei pacchetti utilizzando lo strumento Apt

APT significa che Advanced Packaging Tool è un altro gestore di pacchetti trovato su sistemi basati su Linux. Inizialmente progettato come front-end per dpkg per lavorare con .deb pacchetti, apt è riuscito a mostrare la sua visibilità su Mac OS, Open Solaris ecc.

Vuoi imparare e padroneggiare APT e DPKG comandi per gestire la gestione dei pacchetti Debian, quindi usa i nostri articoli di approfondimento che tratteranno più di 30+ esempi su entrambi gli strumenti.

25 utili comandi APT per la gestione dei pacchetti Debian/Ubuntu15 utili comandi Dpkg per la gestione dei pacchetti in Debian/Ubuntu

In questo articolo vedremo varie tecniche per disabilitare/bloccare il pacchetto da installare, aggiornare e rimuovere in Debian Linux e suoi derivati ​​come Ubuntu e Linux Mint.

1. Disabilita/Blocca pacchetto utilizzando 'apt-mark' con l'opzione hold/unhold

Il comando apt-mark contrassegnerà o deselezionare un pacchetto software come installato automaticamente e viene utilizzato con l'opzione mantieni o sblocca .

  1. tieni – questa opzione utilizzata per contrassegnare un pacchetto come trattenuto, che bloccherà l'installazione, l'aggiornamento o la rimozione del pacchetto.
  2. sblocca – questa opzione utilizzata per rimuovere un blocco precedentemente impostato su un pacchetto e consentire l'installazione, l'aggiornamento e la rimozione del pacchetto.

Ad esempio, per creare un pacchetto, pronuncia apache2 non disponibile per l'installazione, l'aggiornamento o la disinstallazione, puoi utilizzare il seguente comando sul terminale con privilegi di root:

# apt-mark hold apache2

Per rendere questo pacchetto disponibile per l'aggiornamento, sostituisci semplicemente "tieni ' con 'sblocca '.

# apt-mark unhold apache2

Blocco degli aggiornamenti dei pacchetti utilizzando il file delle preferenze APT

Un altro modo per bloccare gli aggiornamenti di un pacchetto specifico è aggiungere la sua voce in /etc/apt/preferences o /etc/apt/preferences.d/official-package-repositories.pref file. Questo file è responsabile dell'aggiornamento o del blocco di alcuni aggiornamenti del pacchetto in base alla priorità specificata dall'utente.

Per bloccare il pacchetto, devi solo inserire il suo nome, la funzionalità aggiuntiva e la priorità a cui vuoi portarlo. Qui, priorità < 1 bloccherebbe il pacchetto.

Per bloccare qualsiasi pacchetto, inserisci i suoi dettagli nel file /etc/apt/preferences così:

Package: <package-name> (Here, '*' means all packages)
Pin: release *
Pin-Priority: <less than 0>

Ad esempio per bloccare gli aggiornamenti per il pacchetto apache2 aggiungere la voce come mostrato:

Package: apache2
Pin: release o=Ubuntu
Pin-Priority: 1

Possiamo utilizzare altre opzioni con la parola chiave release per identificare ulteriormente il pacchetto su cui stiamo applicando la priorità pin. Queste parole chiave sono:

  1. a -> Archivio
  2. c -> Componente
  3. o -> Origine
  4. l -> Etichetta
  5. n -> Architettura

come:

Pin: release o=Debian,a=Experimental

Significherebbe estrarre il pacchetto indicato dall'archivio sperimentale del pacchetto Debian.

Inserisci nella lista nera un aggiornamento del pacchetto utilizzando il file di rimozione automatica di APT

Un altro modo per inserire nella blacklist un pacchetto dall'installazione è aggiornare la sua voce in uno dei file contenuti in /etc/apt/apt.conf.d/ directory che è 01autoremove .

Il file di esempio è mostrato di seguito:

APT
{
  NeverAutoRemove
  {
        "^firmware-linux.*";
        "^linux-firmware$";
  };

  VersionedKernelPackages
  {
        # linux kernels
        "linux-image";
        "linux-headers";
        "linux-image-extra";
        "linux-signed-image";
        # kfreebsd kernels
        "kfreebsd-image";
        "kfreebsd-headers";
        # hurd kernels
        "gnumach-image";
        # (out-of-tree) modules
        ".*-modules";
        ".*-kernel";
        "linux-backports-modules-.*";
        # tools
        "linux-tools";
  };

  Never-MarkAuto-Sections
  {
        "metapackages";
        "restricted/metapackages";
        "universe/metapackages";
        "multiverse/metapackages";
        "oldlibs";
        "restricted/oldlibs";
        "universe/oldlibs";
        "multiverse/oldlibs";
  };
};

Ora, per inserire nella blacklist qualsiasi pacchetto, devi solo inserire il suo nome in Never-MarkAuto-Sections . Basta inserire il nome del pacchetto alla fine in Never-MarkAuto-Section e Salva e chiudi il file. Ciò bloccherebbe apt per la ricerca di ulteriori aggiornamenti di quel pacchetto.

Ad esempio, per inserire nella lista nera un pacchetto da aggiornare, aggiungere la voce come mostrato:

Never-MarkAuto-Sections
  {
        "metapackages";
        "restricted/metapackages";
        "universe/metapackages";
        "multiverse/metapackages";
        "oldlibs";
        "restricted/oldlibs";
        "universe/oldlibs";
        "multiverse/oldlibs";
        "apache2*";
  };
};

Selezione del pacchetto personalizzato per l'aggiornamento

Un'altra alternativa per questo è scegliere ciò che si desidera aggiornare. L'apt lo strumento ti dà la libertà di scegliere ciò che desideri aggiornare, ma per questo dovresti conoscere quali sono tutti i pacchetti disponibili per l'aggiornamento.

Per una cosa del genere, il seguente set di comandi può rivelarsi utile:

a. Per elencare quali pacchetti hanno aggiornamenti in sospeso.

# apt-get -u -V upgrade

b. Per installare solo pacchetti selettivi.

# apt-get --only-upgrade install <package-name>

Conclusione

In questo articolo, abbiamo spiegato alcuni modi per disabilitare/bloccare o inserire nella blacklist gli aggiornamenti dei pacchetti utilizzando il modo APT. Se conosci un altro modo preferito, faccelo sapere tramite commenti o se stavi cercando il comando yum per disabilitare/bloccare l'aggiornamento del pacchetto, quindi leggi questo articolo qui sotto.

Disabilita/Blocca gli aggiornamenti dei pacchetti utilizzando Yum in CentOS/RHEL
Linux
  1. 4 modi per disabilitare/bloccare alcuni aggiornamenti del pacchetto utilizzando il comando Yum

  2. Come posso disabilitare gli aggiornamenti automatici di KernelCare?

  3. Come confrontare tre file in Linux usando lo strumento diff3

  4. Come installare un file Deb, da Dpkg -i o da Apt?

  5. Come uccidere il processo che tiene il blocco Apt?

Come installare in modo sicuro i pacchetti utilizzando Npm o Yarn su Linux

Come bloccare un file di testo in Linux usando il comando flock

Come installare gli aggiornamenti di sistema utilizzando Webmin

Come scaricare i pacchetti usando APT senza installarli

Come disabilitare gli aggiornamenti automatici su Ubuntu 20.04 LTS

Come elencare i pacchetti installati in Linux utilizzando la gestione dei pacchetti