Introducere în Yum
YUM ( Actualizatorul Yellowdog a fost modificat ) este un utilitar de gestionare a pachetelor de linie de comandă cu sursă deschisă și gratuit pentru sistemele care execută sistemul de operare Linux cu ajutorul managerului de pachete RPM. Multe alte instrumente oferă funcționalitate GUI la YUM, deoarece YUM conține o interfață de linie de comandă.
YUM permite actualizările automate și gestionarea dependenței de pachete prin distribuții bazate pe RPM. YUM implementează depozite de software (set de pachete) care pot fi utilizate local sau pe o conexiune de rețea similară cu Instrument avansat pentru pachete de la Debian.
- YUM se bazează pe RPM sub capotă, care este un standard de ambalare pentru distribuția digitală de software care se aplică automat semnături digitale și hashuri pentru a verifica integritatea și calitatea de autor al software-ului menționat, spre deosebire de câteva magazine de aplicații care oferă aceeași funcție, nici RPM, nici YUM nu oferă suport încorporat pentru restricțiile esențiale privind copierea pachetelor de către utilizatorii finali.
- YUM este lucrat ca biblioteci cu limbajul de programare Python folosind o mică colecție de programe care oferă o interfață de linie de comandă.
- Wrapper-uri bazate pe interfață grafică de utilizator, cum ar fi YUM Extender sunt de asemenea disponibile și au fost acceptate pentru Fedora Linux până la versiunea 22.
- Rescrierea YUM numită DNF a înlocuit YUM ca manager de pachete implicit în versiunea 22 a Fedora. Se datorează faptului că Fedora urma să se transfere pe Python 3, care specifica că YUM nu va supraviețui acestei modificări.
- DNF se poate executa folosind fie Python 3, fie 2.
- De asemenea, DNF a fost creat pentru îmbunătățirea YUM în multe feluri - o mai bună rezoluție și performanță îmbunătățită a conflictelor de dependență și o integrare mai simplă cu alte aplicații software.
Istoria lui YUM
În perioada 1999-2001, Yellowdog Updater (sau DA ) (managerul de pachete real) a fost integrat de Dan Burcaw, Troy Bengegerdes, Stephen Edie , și Bryan Stillwell la Terra Soft Solutions ca motor al back-end-ului pentru instalatorul grafic Yellow Dog Linux.
În primul rând, YUM a evoluat pentru actualizarea și gestionarea sistemelor Red Hat Linux utilizate la Departamentul de Fizică de la Universitatea Duke de Michael Stenner și Seth Vidal ca o rescrie YUM completă. Vidal a continuat să se dedice lui YUM până când a expirat în Carolina de Nord, accidentul de bicicletă din Durham, pe 8 iulie 2013.
Yum s-a concentrat să specifice atât deficiențele anticipate în APT-RPM anterior, cât și limitările instrumentului, adică managementul pachetului Red Hat up2date. YUM a depășit up2date în versiunile 5 și ulterioare de Red Hat Enterprise Linux. Câțiva autori introduc YUM drept Manager de actualizare Yellowdog sau recomandă asta „Managerul dvs. de actualizări” va fi mai potrivit.
Cunoștințele comune despre YUM sunt incluse ca o necesitate pentru administratorii de sistem Linux modificați și distribuiti fără drepturi de autor atunci când sunt respectați alți termeni de licență. Yum a fost portat pe alte câteva sisteme de operare, inclusiv ArcaOS, IBM și AIX, în timp ce a fost creat inițial pentru Linux.
Operațiunile lui YUM
YUM poate implementa operațiuni precum:
- Listarea pachetelor instalate
- Listarea pachetelor existente
- Actualizarea pachetelor instalate disponibile
- Eliminarea pachetelor
- Instalarea pachetelor
Extensiile lui YUM
În Python, versiunile YUM 2.x oferă o interfață suplimentară pentru mai multe extensii de programare care permite modificarea comportamentului YUM. Mai multe plug-in-uri sunt instalate implicit. yum-utils este un pachet instalat în mod obișnuit și include comenzi care aplică API-ul YUM și mai multe plugin-uri.
Interfețe grafice de utilizator, numite 'în față' , permite o utilizare mai ușoară a YUM. YUM Extender și PackageKit sunt doua exemple. YUM Extender a fost amortizat pentru un timp Fedora sa mutat la DNF, a fost rescris în Gtk 3 și Python 3 și a fost în progres. Acest nou YUM Extender este prezent pentru versiunile 34 sau mai noi de Fedora.
Metadatele lui YUM
Informațiile pachetului (spre deosebire de pachetele în sine) sunt numite metadate . Aceste metadate sunt combinate cu detalii în toate pachetele pentru a determina dependențele dintre pachete. Speranța este să ignorăm o situație numită iad de dependență . Un instrument izolat, adică createrepo repară depozitele de software ale YUM, producând metadatele esențiale în formatul clasic XML. The mrepo instrument (denumit anterior Lucruri ) poate ajuta la întreținerea și crearea de depozite.
arhitectura cizme de primăvară
Depozitul XML al lui YUM, creat cu contribuții de la mai mulți alți dezvoltatori, a devenit un standard pentru depozitele bazate pe RPM. SUSE Linux 10.1 acceptă depozitele YUM în de ST și depozitele, adică Deschideți serviciul de compilare aplicați metadatele formatului de depozit YUM XML.
În mod automat, YUM integrează metadatele de la distanță la un client local împreună cu alte instrumente, alegând să se integreze numai atunci când sunt revendicate de utilizator. Sincronizarea automată definește că YUM nu poate eșua deoarece utilizatorul nu execută o comandă la un interval adecvat.
Etichete de comandă ale lui YUM
Câteva etichete de comandă importante și descrierea lor sunt următoarele:
Este folosit pentru a instala cea mai recentă versiune de pachet a setului de pachete, asigurând în același timp că fiecare dependență este satisfăcută. Pachetele ar trebui să fie un glob mic și apoi potrivirile sunt instalate dacă nu se potrivesc cu numele dat al pachetului.
Dacă numele începe cu @ caracter, celelalte nume sunt folosite astfel încât să poată fi transmise comenzii, adică groupinstall . Instalați unelte ca localinstall dacă numele este fișierul. Dacă numele nu se potrivește cu niciun pachet, pachetul 'oferă' sunt căutate.
Notă: Wildcard-urile se vor potrivi cu mai mult de un pachet pentru listele de fișiere.
Eticheta de actualizare va actualiza toate pachetele instalate curent dacă se execută fără pachete. Dacă sunt specificate mai multe pachete sau globuri de pachete, YUM va actualiza numai pachetele specificate. YUM se va asigura că fiecare dependență este satisfăcută în timpul actualizării oricărui pachet. Dacă globurile sau pachetele descrise se potrivesc cu pachete care nu sunt instalate în prezent, eticheta de actualizare nu le va instala.
Actualizarea funcționează pe liste de fișiere, oferte, fișiere și grupuri similare cu comanda, adică 'instalare' . Dacă steagul, adică --învechit este disponibilă sau opțiunea principală de configurare învechită este adevărată, yum va adăuga pachete învechite în calcule. Îl face mai bun pentru modificările versiunii de distribuție.
Ar putea fi implementat astfel încât să putem ști dacă mașina noastră are actualizări care trebuiau utilizate fără a le executa interactiv. Se întoarce a 100 valoare de ieșire dacă există pachete prezente pentru o actualizare. De asemenea, returnează pachete lista să fie actualizată în formatul de listă. Acesta returnează 0 valoare dacă nu este prezent niciun pachet pentru o actualizare. Acesta returnează 1 valoare dacă a apărut o eroare. De asemenea, executarea în modul verbose afișează învechite.
Este la fel ca și comanda, adică actualizați cu setul plat, adică --învechit .
Este folosit pentru a elimina pachetele specificate prin sistem și pentru a elimina pachetele care se bazează pe ștergerea pachetului. Eticheta de eliminare funcționează pe liste de fișiere, furnizări, fișiere și grupuri similare cu comanda, adică 'instalare' .
Este folosit pentru listarea informațiilor despre pachetele existente.
Este folosit pentru a afla ce pachete oferă unele fișiere sau caracteristici. Folosește doar a sintaxă-fișier-glob wildcard sau un anumit nume pentru listarea pachetelor instalate sau disponibile care oferă acel fișier sau caracteristică.
Este folosit pentru a găsi pachete care sunt identice cu un șir în câmpurile de nume de pachet, rezumat și descriere ale rpm. Este util să găsim un pachet pe care nu îl cunoaștem după nume, dar îl cunoaștem după câteva cuvinte care îi corespund.
Este folosit pentru listarea informațiilor de rezumat și descriere despre pachetele existente.
Este folosit pentru curățarea mai multor lucruri care se adună în directorul cache al lui yum de-a lungul timpului.
Este folosit pentru crearea și descărcarea metadatelor utilizabile pentru depozitele yum activate în prezent.
Este folosit pentru instalarea fiecărui pachet individual dintr-un grup de tipuri descrise. Opțiunea de configurare, adică tipuri de pachete-grup descrie ce tip ar fi instalat.
Pentru groupinstall, este doar un alias care va implementa ceea ce trebuie, deoarece „jum actualizare X” și „yum install X” comenzile fac un lucru similar. Unde X este deja instalat.
Este folosit pentru listarea grupurilor existente din fiecare depozit de yum. Grupurile sunt considerate ca 'instalat' dacă fiecare pachet necesar este instalat sau dacă un grup nu are niciun pachet necesar, atunci acesta este instalat dacă este instalat oricare dintre pachetele implicite sau opționale. De asemenea, argumentul opțional, adică 'ascuns' va enumera grupurile considerate ca nefiind „vizibil de utilizator” . The grupid este afișat dacă trecem de -în opțiune pentru activarea modului verbose.
Este folosit pentru a intra în 'yum shell' dacă numele fișierului este descris, conținutul fișierului este rulat în modul shell yum.
Este folosit pentru listarea pachetelor care oferă dependențele descrise, cel mult un singur pachet este listat/dependență.
Este folosit pentru instalarea unui grup de fișiere rpm locale. Arhivele activate vor fi folosite pentru rezolvarea dependențelor, dacă este necesar.
Notă: Comanda de instalare va implementa o instalare locală dacă este furnizat un nume de fișier.
Este folosit pentru actualizarea sistemului prin descrierea fișierelor locale rpm. Fișierele rpm descrise pentru care este instalată o versiune anterioară vor fi instalate doar, celelalte pachete descrise vor fi evitate. Arhivele activate vor fi folosite pentru rezolvarea dependențelor dacă este necesar.
Notă: Comanda de actualizare va implementa o instalare locală dacă este furnizat un nume de fișier.
Va reinstala pachetul versionat în mod identic. Ca și nucleele, nu funcționează pentru 'numai instalat' pachete. Eticheta de reinstalare funcționează pe liste de fișiere, furnituri, fișiere și grupuri similare cu 'instalare' comanda.
Acesta va încerca și să downgrade pachetul de la versiunea instalată în prezent la cea mai veche versiune (sau versiunea descrisă). Ca și nucleele, nu funcționează pentru 'numai instalat' pachete. Eticheta de downgrade funcționează pe liste de fișiere, furnituri, fișiere și grupuri similare cu comanda „instalare”.
Acesta generează lista de depozite configurată. Valoarea implicită este pentru listarea fiecărui depozit activat. Dacă trecem de -în opțiunea, mai multe detalii sunt listate pentru modul verbose.
Acesta generează o listă pentru fiecare dependență și ce pachet oferă acele dependențe pentru pachetele furnizate.
Acesta generează ajutor fie pentru fiecare comandă, fie dacă i se dă numele unei comenzi, va apărea ajutorul pentru acea comandă specifică.
Opțiuni generale ale YUM
Cele mai multe opțiuni ale liniei de comandă pot fi remediate cu ajutorul fișierului de configurare. Descrierile reprezintă opțiunea de configurare esențială de remediat.
Afișează un mesaj de ajutor și renunță.
Specifică locația fișierului de conflict. Poate prelua fișiere locale, adrese URL ftp și căi http.
Presupune că răspunsul la o întrebare care va fi promovată este da. Opțiunea de configurare este presupune da .
Se execută fără ieșire.
Important: Probabil dorim să aplicăm și opțiunea -y.
Setează nivelul de depanare la un număr. Reduce sau crește cantitatea de lucruri care sunt imprimate. Intervalul practic al acestuia este 0-10, iar opțiunea de configurare este nivel de depanare .
Se execută cu mai multe ieșiri de depanare.
Setează nivelul unei erori la un număr. Intervalul practic al acestuia este 0-10. 0 defiles că imprimă erori critice numai despre care trebuie să ni se spună. 1 tipărește fiecare eroare, chiar și pe cele care nu sunt prea importante. 1+ imprimă mai multe erori. Opțiunea de configurare este nivel de eroare .
Setează timpul maxim în care yum va aștepta înainte de a implementa o comandă.
Îi spune yum pentru a rula din cache în întregime. Nu actualizează și nu descarcă niciun antet decât dacă trebuie să implementeze acțiunile solicitate.
Nu limitează pachetele la versiunea lor curentă în comenzile de căutare, listă și informații.
Spune numărul versiunii de yum și ieșiri.
Descrie o alternativă installroot .
Activează anumite depozite după glob sau id care au fost dezactivate în fișierul de configurare cu ajutorul opțiunii enabled=0. Opțiunea de configurare este activat .
Dezactivează anumite depozite după glob sau id. Opțiunea de configurare este activat .
Are efect doar pentru actualizare. Permite logica de procesare învechită a lui yum. Opțiunea de configurare este învechit .
Exclude un anumit pachet după glob sau nume din actualizările fiecărui depozit. Opțiunea de configurare este exclude .
Afișează automat ieșirea colorată bazându-se pe terminalul de ieșire, niciodată sau întotdeauna. Opțiunea de configurare este culoare .
Notă: Câteva comenzi vor funcționa puțin în plus dacă culoarea este activată.
Se execută fără unul sau mai multe plugin-uri dezactivate. Argumentul este o listă de wildcard izolată prin virgulă pentru potrivirea cu numele pluginului.
Se execută cu fiecare plugin dezactivat. Opțiunea de configurare este pluginuri.
Se execută cu verificarea semnăturii gpg dezactivată. Opțiunea de configurare este gpgcheck .
Se rezolvă depsolve probleme prin ștergerea pachetelor care duc la probleme din tranzacții. Opțiunea de configurare este skip_broken.
În prezent, această opțiune nu face nimic.
Instalarea YUM în Ubuntu
Pasul 1 - Actualizați sistemul
Trebuie să executăm comanda de actualizare pentru a obține cele mai recente informații despre pachet și pentru a actualiza depozitele de pachete:
$ sudo apt update
Pasul 2 - Instalați YUM
Trebuie să executăm comanda de instalare pentru a instala rapid pachetele și dependențele acestora:
$ sudo apt-get install yum