En esta oportunidad vamos a analizar un poco sobre el DNF (Dandified Yum) el cual es el gestor de paquetes incluido en Fedora 23 y el cual en esta nueva versión viene con nuevas actualizaciones y características muy interesantes para nuestro rol de administradores o para todo aquel que está inmerso en este fascinante mundo de los sistemas y tiene a bien aprender o reforzar sus conocimientos de Linux, en este caso Fedora 23.
Dentro de las virtudes de DNF está que puede ser configurado desde cero, con repositorios adicionales o desde algún recurso de paquetes.
Con DNF podemos estar tranquilos con la descarga e instalación de nuestros paquetes ya que DNF viene incluido con una administración segura de los paquetes llamada GPG (Gnu Privacy Guard- Guardián de privacidad Gnu), esto es un mecanismo de firmas seguras, con la cual si un paquete no tiene la firma certificada DNF rechaza dicha instalación y de esta manera mantendremos seguro nuestro sistema.
Recordemos que para realizar cualquier ajuste de DNF debemos estar como usuarios root o superusuarios ya que de otra manera el sistema nos generará error.
Entremos de lleno en el uso del comando DNF con todas sus múltiples opciones de uso.
1. Uso del comando DNF
Comenzaremos a revisar las múltiples opciones que tenemos con este potente comando en Fedora 23.
Una de las maneras más prácticas de buscar actualizaciones para nuestro Fedora 23 es usar el comando:
dnf upgrade
Una vez lo hemos ingresado veremos que el sistema comenzará la instalación de las actualizaciones disponibles (DNF instalará solamente las que se pueden instalar).
Veremos el tamaño de las respectivas actualizaciones.
El demás proceso es conocido por nosotros, si deseamos descargar e instalar dichas actualizaciones simplemente ingresamos la letra S y comenzará el respectivo proceso de descarga y/o actualización de paquetes. Si deseamos observar los paquetes que tienen una actualización disponible usaremos el comando:
dnf check-updateCon este comando desplegaremos únicamente los paquetes que tiene una actualización disponible.
Se desplegará lo siguiente:
Como vemos las actualizaciones están compuestas por la siguiente estructura, tomaremos como ejemplo el paquete wavpack.x86-64 4.80.0-1.fc23 updates
- Wavpack: hace referencia al nombre del paquete.
- X86-64: Se refiere a la arquitectura del CPU o Procesador.
- 4.80.0: Se refiere a la versión de la actualización del paquete.
- 1.fc23: Hace referencia a la versión de lanzamiento del paquete (Fedora 23).
- Updates: Indica el repositorio en donde está ubicado el paquete de actualización.
Podemos determinar actualizar únicamente ciertos paquetes, bien sea por el tamaño de la descarga o por la necesidad del momento, para realizar una actualización personalizada usaremos el comando dnf upgrade package_name, por ejemplo podemos instalar el paquete de wavpack para ello la estructura quedaría de la siguiente manera:
dnf upgrade wavpack
Veremos el siguiente resultado:
Aceptamos la descarga y posterior instalación. Con DNF podremos descargar, instalar o actualizar paquetes completos o librerías.
dnf upgrade
Podemos buscar paquetes de manera individual o de manera global. Si deseamos buscar un paquete mostrando su resumen usaremos el comando dnf search package, en nuestro ejemplo usaremos:
dnf search wavpack
Si deseamos buscar un paquete con una descripción más completa usaremos el comando:
dnf search all package, en nuestro caso:
dnf search all wavpack
Así mismo podemos realizar una búsqueda por texto, es decir, buscar los paquetes que contengan ciertas palabras, por ejemplo buscaremos todos los paquetes que incluyen el término meld (dnf search meld).
Si lo que deseamos es listar los paquetes podemos usar el comando:
dnf listCon este comando podemos desplegar información sobre los paquetes, grupos de paquetes o, si lo deseamos, sobre los repositorios.
Se desplegará la siguiente lista (Extensa por la cantidad de paquetes disponibles).
Podemos usar expresiones globales para filtrar nuestras búsquedas, de esta manera el sistema desplegará los paquetes que incluyan nuestros parámetros de búsqueda.
Por ejemplo buscaremos los paquetes que incluyan el número 4 en su versión o en alguna parte de la misma, para ello ejecutaremos el comando:
dnf search kernel *-4*La sintaxis es dnf search global_expression.
Tenemos el siguiente resultado:
Otro ejemplo, podemos filtrar todas las adiciones y plug-ins ABRT, para ello ingresaremos el siguiente comando:
dnf list abrt-addon\* abrt-plugin\*
Veremos que se despliega la siguiente información:
Con el comando dnf list all podremos ver la información de todos los paquetes que están instalados en nuestro sistema.
Usando el comando dnf list installed podemos observar todos los paquetes instalados en nuestro sistema. Podemos agregar una expresión global para reducir el tamaño de la búsqueda, por ejemplo, podemos ingresar el comando:
dnf list installed “krb?-*”Para filtrar por todos los paquetes que sean krb.
En la columna central podemos observar el repositorio de donde fue tomado el paquete. Con el comando:
dnf list availablePodremos ver todos los paquetes disponibles en todos los repositorios disponibles.
Podemos filtrar la lista de paquetes disponibles usando una expresión global, por ejemplo, podemos buscar los paquetes disponibles para wavpack, para ello ingresaremos el comando:
dnf list available wavpack\*Se desplegará lo siguiente.
Podemos usar el comando:
dnf group listPara desplegar todos los grupos disponibles.
Podemos observar los diferentes grupos disponibles:
A través del comando:
dnf repolistObservamos el ID del repositorio, su nombre y la cantidad de paquetes que hay disponibles en dicho repositorio.
Si deseamos ver los paquetes que tiene un repositorio en específico usaremos el comando:
dnf repository-packages repo_id list, por ejemplo, dnf repository-packages updates listDentro de las muchas funciones podemos ejecutar el comando dnf info package_name¸ para poder observar toda la información de un paquete, por ejemplo, podemos observar la información del paquete wavpack, ingresaremos el comando:
dnf info wavpack
Para instalar paquetes en nuestro sistema Fedora 23 a través de DNF vamos a realizar los siguientes procesos. Podemos instalar un paquete de manera individual usando el comando:
dnf install package_nameSi deseamos instalar diversos paquetes de manera simultánea ingresaremos la sintaxis:
dnf install package_namePodemos especificar la arquitectura sobre la cual instalar el paquete (x86 – x64) por ejemplo podemos instalar el paquete sqlite2 sobre una arquitectura x86 para ello usaremos el comando:
dnf install sqlite2.i586
Podemos instalar un paquete de grupos, un paquete de grupos es similar a un paquete normal, pero se requiere instalar diversos de manera simultánea para que pueda ejecutar una tarea determinada, por ejemplo, vamos a instalar el paquete de grupos de kde (entorno gráfico), para ello ingresaremos el comando:
dnf -v group list kde\*
Podemos instalar un paquete de grupos usando el nombre del grupo o el ID del grupo:
Para instalar usando el nombre del grupo ejecutaremos el comando:
dnf group install group_namePara instalar un grupo usando su ID ejecutaremos el comando:
dnf group install groupidInstala el grupo
Para eliminar paquetes de nuestro sistema Fedora 23 usaremos el comando:
dnf remove package_nameAsí mismo podemos remover diversos paquetes usando el comando:
dnf remove package_name package_namePor ejemplo vamos a remover el grupo tótem, para ello ingresaremos el comando:
dnf remove totem
Aceptamos la eliminación para completar el proceso. Tal como sucede en el proceso de instalación podemos usar argumentos como:
- Expresiones globales
- Nombres de paquetes
- Archivo de listas, etc
2. Otros comandos DNF
Tenemos a mano algunos otros comandos que son muy útiles para nuestra gestión, vamos a analizar su función:
Con este comando podremos analizar información en periodos determinados de tiempo, así mismo este comando nos permite rehacer o deshacer operaciones.
dnf historyVeremos que cada evento tiene un ID, el comando ejecutado, la fecha y hora y la acción tomada.
Dentro de las acciones vistas con el comando dnf history tenemos las siguientes opciones:
- Downgrade (D): Un paquete fue degradado a una versión más antigua
- Erase (E): Un paquete fue removido
- Install (I): un paquete fue instalado
- Obsoleting (O): Un paquete fue marcado como obsoleto
- Reinstall ®: Se reinstaló un paquete
- Update (U): Un paquete se actualizó
Si deseamos revertir o repetir una operación, como usuarios root debemos ejecutar los siguientes comandos:
- Revertir una operación: dnf history undo id
- Repetir una operación: dnf history redo id
Los archivos de configuración DNF se encuentran ubicados en la ruta:
/etc/dnf/dnf.confDesde esta ubicación podremos ejecutar modificaciones en dicho archivo.
Podemos ver el contenido del archivo dnf.conf usando el comando:
nano dnf.conf
Las opciones más usadas en el menú principal (Main) son:
Las variables las podemos usar en determinados archivos de configuración DNF ubicados en las rutas:
/etc/dnf/dnf.confy
/etc/yum.repos.d/Estos repositorios incluyen las variables:
- $releasever: Hace referencia a las versiones del sistema donde se encuentra la información del DNF.
- $arch: Hace referencia a la arquitectura del procesador incluidas i586,i686 y x86_64.
- $basearch: Se refiere a la arquitectura base del sistema.
Para ver toda la configuración con sus respectivos valores podremos usar el comando:
dnf config-manager –dump
Como administradores podremos habilitar o deshabilitar el acceso a los repositorios, ya que una mala gestión de éstos puede acarrear problemas en la configuración de nuestro sistema Fedora 23, las tareas más comunes son las siguientes:
Para adicionar un repositorio usaremos el comando:
dnf config-manager –add-repo repository_URL
dnf config-manager --set-enabled repository..
dnf config-manager --set-disabled repository..
Como vemos contamos con diferentes opciones a través del comando DNF, usemos responsablemente estos comandos y aprovechemos su gran apoyo en nuestro sistema Fedora 23.