Stații de lucru online OnWorks Linux și Windows

logo

Găzduire online gratuită pentru stații de lucru

<Înapoi | Cuprins | Următor>

8.3.2. Gestionarea priorităților pachetului‌


Unul dintre cele mai importante aspecte în configurarea APT este gestionarea priorităților asociate fiecărei surse de pachet. De exemplu, ați putea dori să vă extindeți sistemul Kali Rolling cu unul sau două pachete mai noi de la Debian Unstable sau Debian Experimental. Este posibil să se atribuie o prioritate fiecărui pachet disponibil (același pachet poate avea mai multe priorități în funcție de versiunea sa sau de distribuția care îl furnizează). Aceste priorități vor influența comportamentul APT: pentru fiecare pachet, acesta va selecta întotdeauna versiunea cu cea mai mare prioritate (cu excepția cazului în care această versiune este mai veche decât cea instalată și prioritatea sa este mai mică de 1000).

APT definește mai multe priorități implicite. Fiecare versiune de pachet instalată are o prioritate de 100. O versiune neinstalată are o prioritate de 500 în mod implicit, dar poate sări la 990 dacă face parte din versiunea țintă (definită cu -t opțiunea de linie de comandă sau APT::Default-Release directivă de configurare).

Puteți modifica prioritățile adăugând intrări în / etc / apt / preferences fișier cu numele pachetelor afectate, versiunea acestora, originea și noua lor prioritate.

APT nu va instala niciodată o versiune mai veche a unui pachet (adică un pachet al cărui număr de versiune este mai mic decât cel al pachetului instalat curent), cu excepția cazului în care prioritatea sa este mai mare de 1000. APT va instala întotdeauna pachetul cu cea mai mare prioritate care urmează constrângere. Dacă două pachete au aceeași prioritate, APT îl instalează pe cel mai nou (al cărui număr de versiune este cel mai mare). Dacă două pachete din aceeași versiune au aceeași prioritate, dar diferă în ceea ce privește conținutul lor, APT instalează versiunea care nu este instalată (această regulă a fost creată pentru a acoperi cazul actualizării unui pachet fără creșterea numărului de revizuire, care este de obicei necesar). ).

În termeni mai concreti, un pachet a cărui prioritate este mai mică de 0 nu va fi niciodată instalat. Un pachet cu o prioritate cuprinsă între 0 și 100 va fi instalat numai dacă nicio altă versiune a pachetului nu este deja instalată. Cu o prioritate între 100 și 500, pachetul va fi instalat doar dacă există

nu există nicio altă versiune mai nouă instalată sau disponibilă într-o altă distribuție. Un pachet cu prioritate între 501 și 990 va fi instalat numai dacă nu există o versiune mai nouă instalată sau disponibilă în distribuția țintă. Cu o prioritate între 990 și 1000, pachetul va fi instalat, cu excepția cazului în care versiunea instalată este mai nouă. O prioritate mai mare de 1000 va duce întotdeauna la instalarea pachetului, chiar dacă forțează APT să downgrade la o versiune mai veche.

Când APT verifică / etc / apt / preferences, ia în considerare mai întâi cele mai specifice intrări (adesea cele care specifică pachetul în cauză), apoi pe cele mai generice (inclusiv de exemplu toate pachetele unei distribuții). Dacă există mai multe intrări generice, se utilizează prima potrivire. Criteriile de selecție disponibile includ numele pachetului și sursa care îl furnizează. Fiecare sursă de pachet este identificată prin informațiile conținute în a Eliberați fișier pe care APT îl descarcă împreună cu Pachete fișiere. Aceste fișiere specifică originea, de obicei „Kali” pentru pachetele din oglinzile oficiale ale lui Kali și „Debian” pentru pachetele din oglinzile oficiale ale Debian, dar originea poate fi și numele unei persoane sau al unei organizații pentru depozitele terțe. The Eliberați fișierul furnizează și numele distribuției împreună cu versiunea acesteia. Să aruncăm o privire la sintaxa sa prin câteva studii de caz realiste ale acestui mecanism.



Prioritatea de Dacă ați enumerat kali-bleeding-edge sau Debian experimental în dvs surse.list fişier, Kali-Bleeding-Edge și pachetele corespunzătoare nu vor fi aproape niciodată instalate deoarece APT-ul lor implicit Debian-Experimental prioritatea este 1. Acesta este, desigur, un caz specific, conceput pentru a împiedica utilizatorii să instaleze din greșeală pachete bleeding edge. Pachetele pot fi instalate doar tastând potrivit

instala pachet/kali-bleeding-edge, presupunând desigur că ești conștient de riscurile și potențialele dureri de cap ale vieții la margine. Este încă posibil (deși nu recomandat) pentru a trata pachetele de kali-bleeding-edge/experimental ca cele ale altor distribuții, acordându-le o prioritate de 500. Acest lucru se face cu o intrare specifică în

/ etc / apt / preferences:

Pachet: *

Pin: eliberați a=kali-bleeding-edge. Pin-Priority: 500


Să presupunem că doriți să utilizați doar pachete de la Kali și că doriți doar instalate pachete Debian atunci când vi se cere în mod explicit. Puteți scrie următoarele intrări în preferințele /etc/apt/ fișier (sau în orice fișier în /etc/apt/preferences.d/):


Pachet: *

Pin: eliberare o=Kali Pin-Prioritate: 900


Pachet: *

Pin: lansare o=Debian Pin-Priority: -10

Pachet: *

Pin: eliberare o=Kali Pin-Prioritate: 900


Pachet: *

Pin: lansare o=Debian Pin-Priority: -10

În ultimele două exemple, ați văzut a=kali-bleeding-edge, care definește numele distribuției selectate și o=Kali și o=Debian, care limitează domeniul de aplicare la pachetele a căror origine sunt Kali și, respectiv, Debian.

Să presupunem acum că aveți un server cu mai multe programe locale în funcție de versiunea 5.22 de Perl și că doriți să vă asigurați că upgrade-urile nu vor instala o altă versiune a acestuia. Ai putea folosi această intrare:


Pachet: perl

Pin: versiunea 5.22* Pin-Priority: 1001

Pachet: perl

Pin: versiunea 5.22* Pin-Priority: 1001


Documentația de referință pentru acest fișier de configurare este disponibilă în pagina de manual apt_pref erences(5), cu care puteți afișa man apt_preferences.


Adăugarea de comentarii în Nu există o sintaxă oficială pentru comentarii în / etc / apt / preferences, dar unele textuale

/ etc / apt / preferences descrierile pot fi furnizate adăugând una sau mai multe Explicație câmpuri în fiecare intrare:

Explicație: pachetul xserver-xorg-video-intel furnizat Explicație: în experimental poate fi folosit în siguranță

Pachet: xserver-xorg-video-intel Pin: lansare a=experimental

Prioritate Pin: 500


Top OS Cloud Computing la OnWorks: