Workstation online OnWorks Linux e Windows

Logo

Hosting online gratuito per workstation

<Precedenti | Contenuti | Succ.>

8.3.2. Gestione delle priorità dei pacchetti‌


Uno degli aspetti più importanti nella configurazione di APT è la gestione delle priorità associate ad ogni sorgente del pacchetto. Ad esempio, potresti voler estendere il tuo sistema Kali Rolling con uno o due pacchetti più recenti di Debian Unstable o Debian Experimental. È possibile assegnare una priorità ad ogni pacchetto disponibile (lo stesso pacchetto può avere diverse priorità a seconda della sua versione o della distribuzione che lo fornisce). Queste priorità influenzeranno il comportamento di APT: per ogni pacchetto, selezionerà sempre la versione con la priorità più alta (tranne se questa versione è precedente a quella installata e la sua priorità è inferiore a 1000).

APT definisce diverse priorità predefinite. Ogni versione del pacchetto installato ha una priorità di 100. Una versione non installata ha una priorità di 500 per impostazione predefinita ma può saltare a 990 se fa parte del rilascio di destinazione (definito con -t opzione della riga di comando o il APT::Rilascio predefinito direttiva di configurazione).

È possibile modificare le priorità aggiungendo voci nel / etc / apt / Preferences file con i nomi dei pacchetti interessati, la loro versione, la loro origine e la loro nuova priorità.

APT non installerà mai una versione precedente di un pacchetto (cioè un pacchetto il cui numero di versione è inferiore a quello del pacchetto attualmente installato) tranne quando la sua priorità è maggiore di 1000. APT installerà sempre il pacchetto con priorità più alta che segue questo vincolo. Se due pacchetti hanno la stessa priorità, APT installa quello più recente (il cui numero di versione è il più alto). Se due pacchetti della stessa versione hanno la stessa priorità ma differiscono nel contenuto, APT installa la versione non installata (questa regola è stata creata per coprire il caso di un aggiornamento del pacchetto senza l'incremento del numero di revisione, che di solito è richiesto ).

In termini più concreti, un pacchetto la cui priorità è inferiore a 0 non verrà mai installato. Un pacchetto con una priorità compresa tra 0 e 100 verrà installato solo se non è già installata un'altra versione del pacchetto. Con una priorità compresa tra 100 e 500, il pacchetto verrà installato solo se presente

non ci sono altre versioni più recenti installate o disponibili in un'altra distribuzione. Un pacchetto con priorità tra 501 e 990 verrà installato solo se non è installata o disponibile una versione più recente nella distribuzione di destinazione. Con una priorità tra 990 e 1000, il pacchetto verrà installato tranne se la versione installata è più recente. Una priorità maggiore di 1000 porterà sempre all'installazione del pacchetto anche se obbliga APT a effettuare il downgrade a una versione precedente.

Quando APT controlla / etc / apt / Preferences, tiene conto prima delle voci più specifiche (spesso quelle che specificano il pacchetto in questione), poi di quelle più generiche (compresi ad esempio tutti i pacchetti di una distribuzione). Se esistono più voci generiche, viene utilizzata la prima corrispondenza. I criteri di selezione disponibili includono il nome del pacchetto e la fonte che lo fornisce. Ogni sorgente del pacchetto è identificata dalle informazioni contenute in a Rilasciare file che APT scarica insieme a Pack File. Questi file specificano l'origine, solitamente "Kali" per i pacchetti dai mirror ufficiali di Kali e "Debian" per i pacchetti dai mirror ufficiali di Debian, ma l'origine può anche essere il nome di una persona o di un'organizzazione per i repository di terze parti. Il Rilasciare file fornisce anche il nome della distribuzione insieme alla sua versione. Diamo un'occhiata alla sua sintassi attraverso alcuni casi studio realistici di questo meccanismo.



Priorità di Se hai elencato kali-bleeding-edge o Debian sperimentale nel tuo fonti.lista file, Kali-Bleeding-Edge e i pacchetti corrispondenti non verranno quasi mai installati perché il loro APT predefinito Debian sperimentale la priorità è 1. Questo è ovviamente un caso specifico, progettato per impedire agli utenti di installare per errore pacchetti all'avanguardia. I pacchetti possono essere installati solo digitando adatto

install pacchetto/kali-sanguinamento-edge, assumendo ovviamente che tu sia consapevole dei rischi e dei potenziali mal di testa della vita al limite. È ancora possibile (anche se non raccomandato) per trattare i pacchetti di kali-bleeding-edge/sperimentale come quelli di altre distribuzioni assegnando loro una priorità di 500. Questo viene fatto con una voce specifica in

/ etc / apt / Preferences:

Pacchetto: *

Pin: rilascio a=kali-bleeding-edge Pin-Priority: 500


Supponiamo di voler utilizzare solo i pacchetti di Kali e di voler installare i pacchetti Debian solo quando esplicitamente richiesto. Potresti scrivere le seguenti voci nel /etc/apt/preferenze file (o in qualsiasi file in /etc/apt/preferenze.d/):


Pacchetto: *

Pin: rilascio o=Kali Pin-Priority: 900


Pacchetto: *

Pin: release o=Priorità pin Debian: -10

Pacchetto: *

Pin: rilascio o=Kali Pin-Priority: 900


Pacchetto: *

Pin: release o=Priorità pin Debian: -10

Negli ultimi due esempi, hai visto a=kali-sanguinamento-edge, che definisce il nome della distribuzione selezionata e o=Cali ed o=Debian, che limitano l'ambito ai pacchetti la cui origine sono rispettivamente Kali e Debian.

Supponiamo ora di avere un server con diversi programmi locali a seconda della versione 5.22 di Perl e di voler garantire che gli aggiornamenti non ne installino un'altra versione. Potresti usare questa voce:


Confezione: perla

Pin: versione 5.22* Priorità Pin: 1001

Confezione: perla

Pin: versione 5.22* Priorità Pin: 1001


La documentazione di riferimento per questo file di configurazione è disponibile nella pagina del manuale apt_pref erenze(5), che puoi visualizzare con uomo apt_preferences.


Aggiunta di commenti in Non esiste una sintassi ufficiale per i commenti in / etc / apt / Preferences, ma un po' di testo

/ etc / apt / Preferences le descrizioni possono essere fornite anteponendo una o più Spiegazione campi in ogni voce:

Spiegazione: il pacchetto xserver-xorg-video-intel fornito Spiegazione: in sperimentale può essere usato in sicurezza

Pacchetto: xserver-xorg-video-intel Pin: release a=sperimentale

Priorità pin: 500


Il miglior sistema operativo cloud computing su OnWorks: