Leamos la documentación oficial :
dnf history rollback <transaction-spec>
Deshacer todas las transacciones realizadas después de la transacción especificada. Si no es posible deshacer ninguna transacción debido al estado actual de RPMDB, no deshaga ninguna transacción.
El énfasis es mío. Entonces este comando se refiere al undo
comando. Bien, leamos la documentación sobre deshacer:
dnf history undo <transaction-spec>
Realice la operación opuesta a todas las operaciones realizadas en la transacción especificada. Si no es posible deshacer ninguna operación debido al estado actual de RPMDB, no deshaga ninguna operación.
Parece que esos dos comandos hacen lo mismo con la excepción de que el primero puede deshacer varias transacciones, y el segundo solo uno.
¿Es correcto este entendimiento? (Agradecería respuestas de primera mano, no desde el punto de vista de cómo interpreta el manual, me interesan los hechos, no las conjeturas).
Contexto: necesito escribir un script que se ejecute dnf upgrade -y
y luego ejecute algunas pruebas y luego revierta los cambios de dnf si las pruebas fallan. Estoy buscando la mejor manera de lograr esto.