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‘ :
1 | sudo yum install dstat |
Utilizando la herramienta ‘yum’ más el parámatreo ‘history’, veamos el resultado:
1 2 3 4 5 6 7 | 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:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 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’:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | 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:
1 2 3 4 5 6 7 8 9 | 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í:
1 | 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
Comentarios Recientes