Rollback de instalaciones y actualizaciones con yum history
Hoy una pequeña píldora o tip, según que terminología esté de moda en cada momento, sobre la vuelta atrás o utilizando el «palabro» anglasajón ‘rollback‘, en la instalación de paquetes o actualizaciones con yum, en sistemas como RHEL, CentOS, Fedora y derivadas, utilizando ‘yum history‘
Rollback de instalaciones y actualizaciones con yum
La herramienta básica que vamos a utilizar es ‘yum history’, que permitirá consultar en un primer estado toda la actividad de esta herramienta. Por ejemplo si instalamos un paquete, véase ‘dstat‘ :
sudo yum install dstat
Utilizando la herramienta ‘yum’ más el parámatreo ‘history’, veamos el resultado:
yum history
#Con el resultado:
Complementos cargados:fastestmirror
ID | Registro de usuario | Día y hora | Acción(es) | Modific
-------------------------------------------------------------------------------
10 | davidochobits | 2018-03-16 21:13 | Install | 1
9 | davidochobits | 2018-03-16 20:36 | I, U | 64
De esta manera listamos todo el histórico, tanto de instalaciones como de actualizaciones. A cada una de las transacciones se le asigna un número de ID; en los otros campos se nos muestra el comando utilizado, la fecha y la hora, la acción de realizada y por último el número de paquetes utilizados en dicha transacción.
Si queremos ampliar información sobre una de las trasacciones, entonces añadiremos a la jugada el parámetro ‘info’ más la ID, de la siguiente forma:
sudo yum history info 10
#Con el resultado:
Complementos cargados:fastestmirror
ID de transacción : 10
Hora inicial : Fri Mar 16 21:13:54 2018
Rpmdb inicial : 349:8b09b4cb24e2c998575a33363722b22ae62e0a6b
Hora final : 21:13:56 2018 (2 segundos)
Rpmdb final : 350:ccf791b93a16f8445a33351b7cc01de3a98f8f39
Usuario : davidochobits
Codigo-obtenido : Exito
Línea de comando : install dstat
Transacción realizada con:
Instalado rpm-4.11.3-25.el7.x86_64 @anaconda
Instalado yum-3.4.3-154.el7.centos.1.noarch @updates
Instalado yum-plugin-fastestmirror-1.1.31-42.el7.noarch @anaconda
Paquetes modificados:
Instalar dstat-0.7.2-12.el7.noarch @base
history info
Sin duda información muy útil. Imaginemos ahora que queremos revertir una instalación o actualización; entonces utilizaremos el parámetros ‘undo’:
sudo yum history undo 10 -y
# Con el resultado:
Complementos cargados:fastestmirror
Undoing transaction 10, from Fri Mar 16 21:13:54 2018
Instalar dstat-0.7.2-12.el7.noarch @base
Resolviendo dependencias
--> Ejecutando prueba de transacción
---> Paquete dstat.noarch 0:0.7.2-12.el7 debe ser eliminado
--> Resolución de dependencias finalizada
Dependencias resueltas
===========================================================================================================================
Package Arquitectura Versión Repositorio Tamaño
===========================================================================================================================
Eliminando:
dstat noarch 0.7.2-12.el7 @base 752 k
Resumen de la transacción
===========================================================================================================================
Eliminar 1 Paquete
Tamaño instalado: 752 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Eliminando : dstat-0.7.2-12.el7.noarch 1/1
Comprobando : dstat-0.7.2-12.el7.noarch 1/1
Eliminado(s):
dstat.noarch 0:0.7.2-12.el7
¡Listo!
Podemos volver a ver el historial donde se mostrará el cambio realizado:
sudo yum history
#Con el resultado:
Complementos cargados:product-id, search-disabled-repos, subscription-manager
Complementos cargados:fastestmirror
ID | Registro de usuario | Día y hora | Acción(es) | Modific
-------------------------------------------------------------------------------
11 | davidochobits | 2018-03-16 21:17 | Erase | 1
10 | davidochobits | 2018-03-16 21:13 | Install | 1
9 | davidochobits | 2018-03-16 20:36 | I, U | 64
Además, si nos arrepentimos de algún ‘undo’ podemos volver a un estado anterior, utilizando el parámetro ‘redo’, así:
yum history redo 10 -y
Para elaborar el artículo me he servido de las siguientes fuentes:
Linux Today – Rollback an update on RHEL/CentOS – A simple guide
Rm-rf.es – Rollback de instalaciones y actualizaciones con yum history