Hum

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 6 martie 2020; verificările necesită 3 modificări .
Actualizator Yellowdog modificat

Yum actualizează Fedora 16.
Tip de manager de pachete
Dezvoltator Seth Vidal
Scris in Python [1]
Sistem de operare linux
ultima versiune 3.4.3 ( 28 iunie 2011 )
Licență GNU GPL 2 sau mai mare
Site-ul web yum.baseurl.org
 Fișiere media la Wikimedia Commons

YUM ( Yellowdog Updater, Modified ) este un manager de pachete de consolă deschisă pentru distribuțiile Linux bazate pe pachete în format RPM (RedHat, CentOS , Fedora , Oracle Linux ) [2] . Ușurează lucrul cu actualizările distribuției, urmărind dependențele dintre pachete. Distribuit sub licența GNU GPL-2.0 sau o versiune ulterioară. Proiectul a fost dezvoltat inițial de programatorul Seth Vidal și un grup de voluntari . YUM folosește o interfață de linie de comandă , dar există suplimente care oferă o interfață grafică pentru funcționalitatea YUM.

YUM permite administratorilor de sistem și utilizatorilor să configureze actualizări automate de software și rezoluție a dependențelor [3] . Pentru aceasta sunt folosite o serie de instrumente, cum ar fi yum-updatesd, yum-updateonboot, yum-cron, PackageKit . La fel ca Advanced Package Tool (sistemul APT) din distribuțiile de clasă Debian , YUM lucrează cu depozite (seturi) de pachete de la producătorul distribuției sau de la autori terți. Este posibil să creați copii locale sau offline ale depozitelor [4] , sau să le accesați printr-o conexiune la Internet.

Pe plan intern, YUM depinde de aplicația RPM și folosește formatul pachetului RPM. Pachetele au de obicei semnături criptografice ( MD5 hash și „digisig” ) [5] pentru a confirma că un anumit fișier a fost pregătit de un anumit autor (cu toate acestea, metadatele nu au fost semnate până la începutul anilor 2010) [6] . Aplicația YUM este implementată ca un set de biblioteci în limbajul de programare Python și mai multe aplicații de linie de comandă. Printre interfețele grafice pentru YUM se numără YUM Extender (yumex) [7] .

Fedora versiunea 18 a început să implementeze o furcă mai rapidă de yum numită „ DNF[8] , din versiunea 20 ar putea fi folosită în loc de yum, iar în versiunea 22 în primăvara lui 2014 a avut loc o tranziție de la YUM la dnf [9] [ 10] [11] [12] . DNF a fost creat pentru a îmbunătăți performanța YUM, calitatea rezolvării conflictelor de dependență și ușurința integrării cu alte aplicații [13] . În același timp, multe caracteristici DNF au fost portate la versiunea 2017 a YUM 4, inclusiv o rezoluție mai rapidă a dependenței [14] [15] .

Caracteristici

YUM este un wrapper pentru RPM care oferă lucru cu depozite. A fost creat pentru a rezolva următoarele probleme [16] :

Istorie

În 1999-2001, managerul Yellowdog UPdater (YUP) a fost dezvoltat de Terra Soft Solutions ca bază pentru un instalator grafic pentru distribuția Yellow Dog Linux [2] .

Mai târziu, pentru a gestiona sistemele Red Hat Linux de la Universitatea Duke , personalul Departamentului de Fizică, Seth Vidal și Michael Stenner, au rescris complet YUP, creând Yellowdog Updater, Modified , abreviat ca „YUM”. Seth Vidal a continuat să lucreze la program până în 2013. [18] [19] [20] [21]

În 2003, Robert G. Brown ( Universitatea Duke ) a publicat documentație despre YUM [22] . De atunci, o serie de distribuții [22] au început să folosească YUM, inclusiv Fedora , CentOS și altele construite pe RPM. Yellow Dog Linux a trecut și la YUM. Utilitarul original YUP a fost actualizat ultima dată în 2001 [23] . Până în 2005, YUM a fost folosit de aproximativ jumătate din piața distribuției Linux [1] , iar în 2007, 2007 YUM a fost recunoscut drept cel mai popular manager pentru distribuțiile RPM [24] .

Aplicația YUM a abordat o serie de deficiențe aparente ale vechiului APT-RPM [25] și limitări ale managerului de pachete original Red Hat up2date În Red Hat Enterprise Linux 5 , lansat în 2007, managerul up2date a fost înlocuit cu YUM [26] [27] . Unii autori se referă la pachet ca „Yellowdog Update Manager” sau sugerează „Your Update Manager” [28] [29] .

Cunoașterea comenzilor YUM este adesea o cerință pentru certificările de administrare Linux [3] .

Pachetul YUM este distribuit sub termenii GNU General Public License , care vă permite să redistribuiți liber aplicația și modificările acesteia [2] .

Extensii

În versiunea 2.x a lui YUM, a fost adăugată o interfață pentru scrierea extensiilor în limbajul Python . Astfel de extensii vă permit să schimbați comportamentul YUM, o serie de pluginuri sunt instalate implicit [30] . De exemplu, este instalat de obicei un pachet [31]yum-utils care conține comenzi pentru lucrul cu API-ul YUM și o serie de pluginuri.

Metadate

Informațiile despre pachete (spre deosebire de fișierele pachetului în sine) se numesc metadate în terminologia YUM. Metadatele includ liste de dependențe, adică o listă de alte pachete și versiunile acestora care sunt necesare pentru acesta. Completarea corectă a metadatelor vă permite să evitați „infernul dependenței” . Colecțiile de pachete și metadatele acestora sunt organizate în depozite , principalele fiind întreținute de producătorul distribuției. Folosind un utilitar separat createrepo, este posibil să se creeze depozite private YUM, în care metadatele unui set specificat de pachete sunt colectate într-un singur fișier XML (sau într-o bază de date în format SQLite [32] [33] . Un utilitar suplimentar mrepo( numită anterior „Yam”) simplifică depozitele de creare și întreținere [34] .

Depozitele XML YUM au devenit rapid populare pentru publicarea seturi de pachete pentru distribuții bazate pe pachete RPM [33] . Pe lângă distribuțiile tradiționale RPM de la RedHat (RHEL, Fedora), clonele acestora (CentOS) și numeroasele variații mai puțin cunoscute, depozitele YUM pot fi utilizate în SUSE Linux 10.1 [35] ( Manager de pachete YaST ). Sistemul de depozit Open Build Service folosește și formatul XML YUM [33] .

Programul YUM sincronizează automat metadatele prin rețea [36] [37] .

Mecanismele de securitate aplicate metadatelor în YUM au fost larg criticate [38] [39] [40] [6] . În 2015, CentOS a introdus semnarea metadatelor pentru principalele depozite CentOS 6 și CentOS 7 [41] , iar în 2018 pentru toate depozitele [42] . RedHat a rezolvat în mod tradițional problema cu transportul securizat [43] [44] .

Cochilii grafice

Vezi și

Note

  1. 1 2 Jang, Michael H. Capitolul 7 - Configurarea unui depozit YUM // Linux Patch Management : Menținerea la zi a sistemelor Linux  . — Prentice Hall Professional , 2005.
  2. 1 2 3 Brown, Robert G. YUM (Yellowdog Updater, Modificat) HOWTO - Introducere . Duke Fizica. Preluat la 12 iulie 2013. Arhivat din original la 2 august 2013.
  3. 12 Shields , Ian RPM și managementul pachetelor YUM . Învățați Linux, 101 . IBM (11 mai 2010). Consultat la 12 iulie 2013. Arhivat din original la 2 octombrie 2016.
  4. Crearea unui depozit YUM local utilizând o imagine ISO . Oracol. Preluat la 12 iulie 2013. Arhivat din original la 19 august 2013.
  5. Ian Shields, managementul pachetelor RPM și YUM Arhivat 21 octombrie 2018 la Wayback Machine / IBM, 2010
  6. 1 2 Koen Vervloesem, Attacks on package managers Arhivat 21 octombrie 2018 la Wayback Machine / LWN, 8 aprilie 2009
  7. Yum Extender . Pagina principală Yumex . Consultat la 13 iulie 2013. Arhivat din original la 12 noiembrie 2020.
  8. Bruce Byfield. DNF îl va înlocui pe Yum? În culise la Fedora's Future Package  Manager . Revista Linux (2014). Consultat la 21 octombrie 2018. Arhivat din original la 26 septembrie 2015.
  9. Miller, Matthew Board Meeting, Rawhide Rebuilt, Firewall Debate, ARM 64 și DNF ca Yum Replacement (5tFTW 2014-06-10) . Revista Fedora (11 iunie 2014). Preluat la 4 mai 2016. Arhivat din original la 11 aprilie 2016.
  10. OpenNews: Fedora 22 se așteaptă să înlocuiască Yum cu DNF . Preluat la 13 mai 2015. Arhivat din original la 4 martie 2016.
  11. Managerul de pachete Yum se așteaptă să fie înlocuit cu DNF/linuxforum în Fedora 22 (downlink) . Preluat la 13 mai 2015. Arhivat din original la 17 noiembrie 2015. 
  12. Fedora Tech Committee confirmă planurile de a înlocui Yum cu DNF în Fedora 22 - News (nixp.ru) . Preluat la 13 mai 2015. Arhivat din original la 18 mai 2015.
  13. Edge, Jake DNF și Yum în Fedora . LWN.net (15 ianuarie 2014). Consultat la 16 octombrie 2018. Arhivat din original la 30 septembrie 2015.
  14. YUM 4 este disponibil pentru testare - Blog.CentOS.org . Preluat la 21 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  15. OpenNews: a început testarea managerului de pachete YUM 4 . Preluat la 21 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  16. Jang, Michael H. Linux Patch Management: Keeping Linux Systems Up to  Date . — Prentice Hall Professional . - P. 199. - (Seria Open Source a lui Bruce Perens). — ISBN 9780132366755 .
  17. Documentație Fedora - Trecerea la o versiune anterioară . Preluat la 11 iunie 2012. Arhivat din original la 11 ianuarie 2012.
  18. Seth Vidal, creatorul software-ului open source „yum”, a murit într-un accident de bicicletă lângă Hilandale Rd. . Durham.io: The Daily Durham (9 iulie 2013). Consultat la 13 iulie 2013. Arhivat din original la 12 iulie 2013.
  19. Mulțumesc, Seth Vidal . Red Hat (10 iulie 2013). Preluat la 13 iulie 2013. Arhivat din original la 14 iulie 2013.
  20. Bort, Julie, Guru Open Source, în vârstă de 36 de ani, Seth Vidal, a fost ucis în mod tragic . Business Insider (9 iulie 2013). Consultat la 13 iulie 2013. Arhivat din original la 12 iulie 2013.
  21. Unul dintre cei mai importanți dezvoltatori ai Fedora Linux a murit , CNews (10 iulie 2013). Arhivat din original pe 21 octombrie 2018. Preluat la 21 octombrie 2018.
  22. 1 2 Brown, Robert G. YUM: Yellowdog Updater, Modificat (17 decembrie 2003). Consultat la 13 iulie 2013. Arhivat din original la 2 octombrie 2013.
  23. Programul de actualizare Yellow Dog . Depozitul sursă Forge . Consultat la 18 iulie 2013. Arhivat din original la 4 octombrie 2013.
  24. Fusco, John. Cutia de instrumente pentru programator Linux  (neopr.) . — Pearson Education. — ISBN 9780132703048 .
  25. Murphy, David Cum să rulezi propriul depozit yum (link în jos) . Linux Foundation (23 iulie 2004). Consultat la 12 iulie 2013. Arhivat din original la 21 iulie 2013. 
  26. Care sunt echivalentele yum ale sarcinilor comune up2date și rpm pe Red Hat Enterprise Linux? . palarie rosie. Preluat la 21 octombrie 2018. Arhivat din original la 8 ianuarie 2014.
  27. ↑ Red Hat Enterprise linux 5. Rezumat caracteristici, funcții și beneficii  . Pălărie Roșie (2007). Preluat la 21 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  28. Sweeney, Michael. Securitatea rețelei folosind Linux (nedefinită) . - 2005. - S. 84. - ISBN 9781411621770 .  
  29. Negus, Christopher; Bresnahan, Christine. Biblia Linux (neopr.) . - John Wiley & Sons , 2012. - P. 598. - ISBN 9781118286906 .  
  30. Plug-in-uri Yum . palarie rosie. Consultat la 12 iulie 2013. Arhivat din original la 2 octombrie 2013.
  31. Menținerea yum (link în jos) . CentOS. Consultat la 12 iulie 2013. Arhivat din original la 18 noiembrie 2018. 
  32. createrepo(8) . Pagina de manual Linux . Preluat la 12 iulie 2013. Arhivat din original la 3 iulie 2013.
  33. 1 2 3 Standarde Rpm Metadate . openSUSE. Consultat la 12 iulie 2013. Arhivat din original la 17 mai 2013.
  34. mrepo . cod liber. Consultat la 12 iulie 2013. Arhivat din original la 21 iunie 2014.
  35. SUSE Linux 10.1 Alpha 2 este gata . Data accesului: 12 iulie 2013. Arhivat din original la 8 februarie 2006.
  36. Schmitz, Dietrich T. YUM vs. APT: Care este cel mai bun? . Preluat la 21 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  37. „Linux Advocates” aruncă prosopul . FOSS Force (ianuarie 2015). Preluat la 21 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  38. Attacks on Package Managers Arhivat 20 decembrie 2018 la Wayback Machine , Raport privind problemele de securitate care rulează Package Managers pe Linux Arhivat 21 octombrie 2018 la Wayback Machine 07/15/2008
  39. Justin Cappos și colab. Securitatea managementului pachetelor Arhivat 21 octombrie 2018 la Wayback Machine University of Arizona Technical Report (2008): 08-02; «O privire în oglindă: Atacuri asupra managerilor de pachete» / Lucrările celei de-a 15-a conferințe ACM privind securitatea informatică și a comunicațiilor. ACM, 2008.
  40. Justin Cappos, Justin Samuel, Managerii de pachete încă vulnerabili: cum să vă protejați sistemele Arhivat 21 octombrie 2018 la Wayback Machine / USENIX, 2009
  41. Metadatele semnate ale depozitului sunt acum disponibile pentru CentOS 6 și 7 pentru Actualizări Repo - Blog.CentOS.org . Preluat la 21 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  42. ↑ Îmbunătățirea securității livrării pachetelor CentOS cu metadate ale depozitului semnate Blog.CentOS.org  . blog.centos.org. Consultat la 25 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  43. ↑ Distribuția securizată a pachetelor RPM - Red Hat Customer Portal  . access.redhat.com. Consultat la 25 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  44. cdn.redhat.com certificat X.509 - Red Hat Customer  Portal . access.redhat.com. Consultat la 25 octombrie 2018. Arhivat din original la 21 octombrie 2018.
  45. PackageKit - Pagina principală . Consultat la 14 octombrie 2018. Arhivat din original la 21 septembrie 2018.

Link -uri