DNF: la utilidad de administración de paquetes de próxima generación para distribuciones basadas en RPM


Una noticia reciente llama la atención de muchos usuarios de Linux, profesionales y estudiantes de que " DNF " (que oficialmente significa nada) reemplazará la utilidad de administración de paquetes " YUM " en las distribuciones viz., Fedora, CentOS, RedHat, etc. que están usando RPM Package Manager.

La noticia fue bastante sorprendente y más o menos un administrador de paquetes se adjunta a la identidad de una distribución de Linux que se encarga de instalar, actualizar y eliminar paquetes.

YUM (siglas de Yellowdog Updater, Modified) es una utilidad gratuita y de código abierto basada en la línea de comandos lanzada bajo la Licencia Pública General GNU y está escrita principalmente en el lenguaje de programación Python. YUM fue desarrollado para administrar y actualizar RedHat Linux en la Universidad de Duke, luego obtuvo un amplio reconocimiento y se convirtió en el administrador de paquetes de RedHat Enterprise Linux, Fedora, CentOS y otras distribuciones de Linux basadas en RPM. A menudo, los profesionales de Linux lo llaman " Su administrador de paquetes ", de manera no oficial y frecuente.

Leer también

  1. YUM (Yellowdog Updater, Modified) – 20 Commands for Package Management
  2. RPM (Red Hat Package Manager) – 20 Practical Examples of RPM Commands

La idea de reemplazar Yum con DNF

Ale¨ Kozumplík , el desarrollador del proyecto DNF es un empleado de RedHat. Él dice:

“Por primera vez en el año 2009, mientras trabajaba en‘ Anaconda ‘, el instalador del sistema, tuvo una idea del funcionamiento de Linux. Quería trabajar en un proyecto totalmente diferente que le permitiera explorar la herramienta de empaquetado de Fedora ".

Ale¨ Kozumplík dijo - se ha cansado de explicar que DNF significa nada, es una respuesta del nombre del administrador de paquetes, así que lo es, nada más. Debe tener un nombre que no entre en conflicto con YUM y, por lo tanto, se llamó DNF .

Deficiencias de Yum que llevaron a la fundación de DNF:

  1. Dependency resolution of YUM is a nightmare and was resolved in DNF with SUSE library ‘libsolv’ and Python wrapper along with C Hawkey.
  2. YUM don’t have a documented API.
  3. Building new features are difficult.
  4. No support for extensions other than Python.
  5. Lower memory reduction and less automatic synchronization of metadata – a time taking process.

Ale¨ Kozumplík, dice que no tiene más remedio que bifurcar YUM y desarrollar DNF. El mantenedor del paquete YUM no estaba listo para implementar estos cambios. YUM tiene alrededor de 59000 LOC, mientras que DNF tiene 29000 LOC (líneas de código).

El desarrollo DNF

DNF mostró su presencia en Fedora 18 por primera vez. Fedora 20 fue la primera distribución de Linux que da la bienvenida a los usuarios a utilizar la funcionalidad de DNF en lugar de YUM.

Los desafíos técnicos que DNF enfrenta como ahora: implementar todas las funciones de YUM. Para un usuario normal, DNF proporciona la descarga, instalación, actualización, degradación y eliminación de paquetes. Sin embargo, todavía hay poco o ningún soporte para funciones como: omitir paquetes rotos durante la instalación, depurar, resultados detallados, habilitar repositorios, excluir paquetes durante la instalación, etc.

DNF y la comparación de su predecesor:

  1. No effect of –skip-broken switch.
  2. Command Update = Upgrade
  3. The command resolvedep unavailable
  4. The option skip_if_unavailable is ON by default
  5. Dependency resolving process is not visible in Command Line.
  6. Parallel downloads in future release.
  7. Undo History
  8. Delta RPM
  9. Bash completion
  10. Auto-remove, etc.

RHEL cuestiona la integración de DNF con Fedora y posteriormente en un entorno comercial. La última versión es DNF 0.6.0 se lanzó el 12 de agosto de 2014.

Prueba de comandos DNF

Instale dnf en fedora o posterior en RHEL/CentOS usando el comando yum.

# yum install dnf

Sinopsis de usos.

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

Instale un paquete.

# dnf install <name_of_package>

Eliminar un paquete.

# dnf remove <name_of_package>

Actualice y actualice el sistema.

# dnf update
# dnf upgrade

Nota: Como se dijo anteriormente, actualizar u003d actualizar. Entonces. ¿Este paquete va a implementar algo como lanzamiento continuo? - Una pregunta de futuro.

La ubicación predeterminada del archivo de configuración dnf: /etc/dnf/dnf.conf .

Este proyecto tiene como objetivo brindar más transparencia y documentar el proyecto en su totalidad. El proyecto es muy incipiente y se requiere el apoyo de la comunidad para integrarlo. Todavía se deben migrar muchas funciones y llevará tiempo. DNF se lanzará oficialmente con Fedora 22.

Eso es todo por ahora. Estaré aquí de nuevo pronto con otro artículo interesante. Hasta entonces, estad atentos y conectados. No olvide enviarnos sus valiosos comentarios en los comentarios a continuación.