CentOS no es un sistema que trate mucho (de momento), pero probando las novedades que se han incorporado desde la última vez que trabajé con él, me topé con ‘yum-utils’, unas herramientas que me parecieron de lo más útiles. Vamos a ver algunas de ellas.

Yum-utils está incluido en el repositorio base (activado por defecto), así que instalarlo no va más allá de escribir el siguiente comando en la terminal:

yum update && yum install yum-utils

Todas las funciones que incluye yum-utils serán instaladas automáticamente con el paquete principal y las podemos revisar desde su manual con:

man yum-utils

Aunque ahora pasamos a ver algunas de las más interesantes:

Depurar una aplicación.

Debuginfo-install <nombre de paquete> instalará las dependencias y paquetería necesaria para, en caso de encontrarnos con problemas al ejecutar una aplicación, poder iniciarla con debug <Nombre del paquete> y obtener un log del proceso de ejecución. Con esto podremos ver dónde concretamente se encuentra el fallo.

debuginfo-install <nombre paquete a instalar>

Imagen 0 en yum-utils, Herramientas que harán nuestra vida más fácil


También nos interesará contar con la aplicación gdb, el depurador por defecto de GNU, que iniciará los servicios que nos interesen en modo depuración de errores de la siguiente forma:

gdb $(which ssh)

El comando anterior nos mostrará una pantalla de prompt donde podremos ejecutar comandos como ‘run’, por ejemplo, que iniciará el programa, o ‘bt’ que mostrará el proceso de iniciación de la aplicación incluyendo listas de funciones ejecutadas, errores recibidos, etc… que ayudarán a desarrolladores y sysadmins a descubrir posibles orígenes de errores.

Imagen 1 en yum-utils, Herramientas que harán nuestra vida más fácil


Para obtener más funciones de gdb, ejecutaremos su manual con:

man gdb

Imagen 2 en yum-utils, Herramientas que harán nuestra vida más fácil


Encontrar repositorios de programas instalados.

Los siguientes comandos nos mostrará qué repositorios se usaron para instalar determinados paquetes.

find-repos-of-install kernel unzip qt

Imagen 3 en yum-utils, Herramientas que harán nuestra vida más fácil

En caso de pasar el comando sin argumentos, obtendremos la lista de repositorios de todas las aplicaciones instaladas en nuestro sistema.

Eliminar paquetería duplicada o ‘huérfana’

Package-cleanup nos facilita la gestión y administración de las aplicaciones que tenemos instaladas en nuestro equipo, mostrando aquellos paquetes duplicados, huérfanos (programas instalados desde otra fuente distinta a la que tenemos configurada en nuestros repositorios) u otras dependencias innecesarias o inconsistencias del sistema, como kernels antiguos que aun residan en nuestro equipo.

package-cleanup - -orphans

package-cleanup - -oldkernels

Imagen 4 en yum-utils, Herramientas que harán nuestra vida más fácil

Los anteriores comandos no afectarán al kernel en uso, únicamente se encargarán de eliminar los kernels más antiguos que se encuentren en el sistema pero no estén en uso.

Encuentra una lista de las dependencias usadas por los diferentes programas

Repo-graph nos devuelve a su llamada una completa lista de las dependencias de todos los paquetes contenidos en el sistema, formateado de forma clara y fácilmente legible. La herramienta repo-graph también puede ser usada para mostrar la información que se encuentra en nuestros repositorios mediante el siguiente comando:

repo-graph - -repoid=updates | less

Imagen 5 en yum-utils, Herramientas que harán nuestra vida más fácil

Aquí arriba un ejemplo de las dependencias de libreoffice, openssl, etc... Le hemos aplicado el filtro ‘less’ para leerlo más cómodamente, pero también podemos sacar la información a un fichero .txt para revisarlo detenidamente:

repo-graph - -repoid=updates > dependenciassistema.txt

Imagen 6 en yum-utils, Herramientas que harán nuestra vida más fácil

Comprobar la lista de dependencias sin resolver

Con repoclosure podremos leer los metadatos de configuración de algunos repositorios, comprobar dependencias de cada repositorio y mostrar una lista de dependencias sin resolver:

repoclosure

Imagen 7 en yum-utils, Herramientas que harán nuestra vida más fácil


Marcar paquetes nuevos o antiguos en un directorio.

repomanage consulta a cada directorio con paquetes rpm y devuelve una lista de los más nuevos y los más antiguos dentro de dicha carpeta. Muy útil si tenemos un directorio dedicado a almacenar paquetes .rpm (por ejemplo si tenemos una ruta designada donde descargar toda esta paquetería) de diferentes software.

Si pasamos repomanage sin argumentos, recibiremos la lista de los paquetes más recientes en dicho directorio, sin embargo, si queremos la lista de los más antiguos deberemos añadir el argumento - -old. Aquí un ejemplo de indexación de un directorio para que esta herramienta los gestione:

ls -l

ls -l rpms/

repomanage rpms/

Imagen 8 en yum-utils, Herramientas que harán nuestra vida más fácil

Consultar a los repositorios de Yum para obtener información de un paquete

Repoquery consulta a los repositorios de Yum y obtiene información adicional de la paquetería, estando dichas aplicaciones instaladas o no… Como ejemplo, usaremos htop, una herramienta de monitorización que no se encuentra instalada en el sistema, suponiendo que queramos listar sus dependencias a lo largo de los archivos que son incluidos en la instalación por defecto. Dado el caso… ejecutaremos los siguientes comandos:

which ftp

rpm –qa | grep ftp

repoquery - -requires ftp

repoquery - -list ftp

Imagen 9 en yum-utils, Herramientas que harán nuestra vida más fácil

Comprimir todos los paquetes rpm en un solo archivo zip

Yum-debug-dump nos permite volcar un listado completo de toda la paquetería que tenemos instalada en nuestro sistema, aquellos disponibles en los repositorios y otra información importante de configuración en un archivo comprimido.

No es tan efectivo como un control de versiones, pero nos permitirá identificar qué cambios se han realizado en el sistema desde cierta fecha, dada la nomenclatura que usa la herramienta (yum_debug_dump-equipo-fecha.txt-gz).

yum-debug-dump

Imagen 10 en yum-utils, Herramientas que harán nuestra vida más fácil

Si llegásemos a necesitar restaurar la información de la configuración, lo haremos con:

yum-debug-restore yum_debug_dump_equipo-fecha.txt.gz

Imagen 11 en yum-utils, Herramientas que harán nuestra vida más fácil


Descargar RPMs desde repositorios Yum

Yumdownloader desarga archivos RPM (dependencias incluidas) desde los repositorios. Muy útil si queremos crear un repositorio en nuestra red al que acceder desde otros equipos sin llegar a salir a internet.

Esta herramienta permite no sólo descargar los binarios de los RPM, si no también las fuentes de instalación mediante el argumento - -source.

Por poner un ejemplo, podemos crear un directorio al que llamaremos archivos htop (herramienta de monitorización del sistema), donde almacenaremos los RPM necesarios para instalar el programa usando el gestor rpm. Para hacer esto, escribiremos los siguientes comandos:

mkdir archivosftp

cd archivosftp

yumdownloader –resolve ftp

rpm –Uvh <ftp>

Imagen 12 en yum-utils, Herramientas que harán nuestra vida más fácil


Corregir descargas o instalaciones erróneas

Si alguna vez hemos recibido un error durante una instalación, paquetes que se han descargado y luego no hemos podido llevar a cabo si instalación, u otras descargas que no se hayan si quiera completado, seguramente tendremos ‘residuos’ de esas instalaciones en nuestro sistema.

Para intentar finalizar las instalaciones incompletas, y limpiar las descargas parciales, ejecutaremos el siguiente comando:

yum-complete-transaction - -cleanup-only

Estas son algunas de las múltiples funciones que incluye yum-utils. Otra muy interesante ya para terminar es reposync, con la que podremos clonar o sincronizar un repositorio online con una carpeta en nuestro equipo. Lo conseguiremos con el siguiente enlace:

reposync –repoid=<repositorio a elegir> --download_path=<directorio a elegir>

Espero que esta información os haya sido de ayuda. Recordad que información y herramientas de gestión y administración como ésta las podéis encontrar en algunos de los cursos del catálogo de Openwebinars. Recordad suscribiros y seguirnos en las redes sociales, pero sobre todo, recordad que faltan pocos días para que acabe la actual promoción en la que podréis acceder a todos los cursos ya existentes y a los venideros durante un año completo. Un saludo!