DNF: la utilitat de gestió de paquets de nova generació per a distribucions basades en RPM


Una notícia recent crida l'atenció de molts usuaris, professionals i aprenents de Linux que \DNF (no significa res oficialment) substituirà la utilitat de gestió de paquets YUM a distribucions, com ara Fedora, CentOS, RedHat, etc. que utilitzen el gestor de paquets RPM.

La notícia va ser força sorprenent i més o menys s'adjunta un gestor de paquets a la identitat d'una distribució Linux que s'encarrega d'instal·lar, actualitzar i eliminar paquets.

YUM (sigles de Yellowdog Updater, Modified) és una utilitat gratuïta i de codi obert basada en la línia d'ordres publicada sota la llicència pública general GNU i està escrita principalment en llenguatge de programació Python. YUM es va desenvolupar per gestionar i actualitzar RedHat Linux a la Duke University, més tard va obtenir un ampli reconeixement i es va convertir en el gestor de paquets de RedHat Enterprise Linux, Fedora, CentOS i altres distribucions Linux basades en RPM. Els professionals de Linux sovint l'anomenen \El vostre gestor de paquets, amb freqüència extraoficial.

Llegiu també

  1. YUM (Yellowdog Updater, modificat): 20 ordres per a la gestió de paquets
  2. RPM (Gestor de paquets de Red Hat): 20 exemples pràctics d'ordres RPM

La idea de substituir Yum amb DNF

Ale¨ Kozumplík, el desenvolupador del projecte DNF és un empleat de RedHat. Ell diu:

Per primera vegada l'any 2009 mentre treballava a 'Anaconda': l'instal·lador del sistema, va tenir una visió del funcionament de Linux. Volia treballar en un projecte totalment diferent que li permetés explorar l'eina d'embalatge de Fedora.

Ale¨ Kozumplík va dir: s'ha cansat d'explicar que DNF no significa res, és una resposta del nom del gestor de paquets, així que és, res més. S'ha de posar un nom que no entri en conflicte amb YUM i, per tant, s'ha anomenat DNF.

Breus vingudes de Yum que van portar a la fundació de DNF:

  1. La resolució de dependència de YUM és un malson i es va resoldre a DNF amb la biblioteca SUSE libsolv i l'embolcall de Python juntament amb C Hawkey.
  2. YUM no té una API documentada.
  3. Crear noves funcions és difícil.
  4. No hi ha suport per a extensions que no siguin Python.
  5. Menor reducció de la memòria i menys sincronització automàtica de metadades: un procés que pren temps.

Ale¨ Kozumplík, diu que no té més remei que bifurcar YUM i desenvolupar DNF. El responsable del paquet YUM no estava preparat per implementar aquests canvis. YUM té uns 59000 LOC mentre que DNF té 29000 LOC (línies de codi).

Desenvolupament del DNF

DNF va mostrar la seva presència a Fedora 18 per primera vegada. Fedora 20 va ser la primera distribució de Linux que va donar la benvinguda als usuaris a utilitzar la funcionalitat de DNF en lloc de YUM.

Els reptes tècnics als quals s'enfronta DNF com ara són: implementar totes les funcions de YUM. Per a un usuari normal, DNF proporciona la descàrrega, instal·lació, actualització, baixada i eliminació de paquets. Tanmateix, encara hi ha poc o cap suport per a funcions com: saltar-se el paquet trencat durant la instal·lació, la depuració, la sortida detallada, habilitar el repo, excloure paquets durant la instal·lació, etc.

DNF i la comparació del seu predecessor:

  1. No hi ha cap efecte de l'interruptor –skip-broken.
  2. Actualització de la comanda = Actualitza
  3. L'ordre resolvedep no està disponible
  4. L'opció skip_if_unavailable està activada per defecte
  5. El procés de resolució de dependències no és visible a la línia d'ordres.
  6. Descàrregues paral·leles en la versió futura.
  7. Desfer l'historial
  8. Delta RPM
  9. Finalització de la partida
  10. Eliminació automàtica, etc.

La integració de DNF amb Fedora i més tard en l'entorn comercial és qüestionada de tant en tant per RHEL. L'última versió és DNF 0.6.0 es va publicar el 12 d'agost de 2014.

Prova d'ordres DNF

Instal·leu dnf a Fedora o posteriorment a RHEL/CentOS mitjançant l'ordre yum.

# yum install dnf

Sinopsi d'usos.

dnf [options] <command> [<argument>]

Instal·leu un paquet.

# dnf install <name_of_package>

Suprimir un paquet.

# dnf remove <name_of_package>

Actualitzar i actualitzar el sistema.

# dnf update
# dnf upgrade

Nota: Com s'ha dit anteriorment, actualitzar=actualitzar. Tan. Aquest paquet implementarà alguna cosa com el llançament continuat? - Una pregunta de futur.

La ubicació per defecte del fitxer de configuració dnf: /etc/dnf/dnf.conf.

Aquest projecte pretén aportar més transparència i documentar el projecte completament. El projecte és molt infantil i cal el suport de la comunitat per integrar-lo. Encara s'han de portar moltes funcions i trigarà temps. DNF es llançarà oficialment amb Fedora 22.

Això és tot per ara. Aviat tornaré a ser aquí amb un altre article interessant. Fins aleshores estigueu atents i connectats. No us oblideu de proporcionar-nos els vostres valuosos comentaris als comentaris següents.