How to use yum history to roll back an update in Red Hat Enterprise Linux 6 , 7?
Environment
- Red Hat Enterprise Linux 6 , 7
- yum
Issue
- How to roll back an update using yum in Red Hat Enterprise Linux-6, 7?
- How to use yum history?
- Information on best practice to enable easy backout of yum patching
Resolution
Note: Rollback of selinux, selinux-policy-*, kernel, glibc (dependencies of glibc such as gcc) packages to older version is not supported. Thus, downgrading a system to minor version (ex: RHEL6.1 to RHEL6.0) is not recommended as this might leave the system in undesired state. Use the yum history option for small update rollbacks.
-
If you decide to proceed with rollback, rather then reinstall, please start with following documentation.
- RHEL 6 Deployment Guide - 8.3.3. Reverting and Repeating Transactions
- RHEL 7 System Admin Guide - 7.4.3. Reverting and Repeating Transactions
-
The following is an example of using
yumto both install & undo (ie. remove) thescreenpackage:-
First will install
screenRPM# yum install screen <snip> Dependencies Resolved ================================================================================= Package Arch Version Repository Size ================================================================================= Installing: screen i686 4.0.3-16.el6 rhel-6-server-rpms 484 k <snip> Installed: screen.i686 0:4.0.3-16.el6 Complete! -
Next, identify the transaction ID that we want to 'undo'
# yum history Loaded plugins: product-id, refresh-packagekit, subscription-manager Updating Red Hat repositories. ID | Login user | Date and time | Action(s) | Altered ------------------------------------------------------------------------------- 8 | root <root> | 2011-10-03 14:40 | Install | 1 7 | root <root> | 2011-09-21 04:24 | Install | 1 ## 6 | root <root> | 2011-09-21 04:23 | Install | 1 ## 5 | root <root> | 2011-09-16 13:35 | Install | 1 4 | root <root> | 2011-09-16 13:33 | Erase | 1 3 | root <root> | 2011-09-14 14:36 | Install | 1 2 | root <root> | 2011-09-12 15:48 | I, U | 80 1 | System <unset> | 2011-09-12 14:57 | Install | 1025 -
The transaction ID we are interested in is '8', so move forward with undo step. If want to see additional information to verify this is transaction interested in, use
yum history info 8prior to doing the undo# yum history undo 8 Loaded plugins: product-id, refresh-packagekit, subscription-manager Updating Red Hat repositories. Undoing transaction 8, from Mon Oct 3 14:40:01 2011 Install screen-4.0.3-16.el6.i686 Resolving Dependencies --> Running transaction check ---> Package screen.i686 0:4.0.3-16.el6 will be erased --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Removing: screen i686 4.0.3-16.el6 @rhel-6-server-rpms 783 k <snip> Removed: screen.i686 0:4.0.3-16.el6 Complete!
-
Diagnostic Steps
-
Doing full system backup prior to any update is always recommended, and
yum historyis NOT meant to replace systems backups. -
General documentation of the system state both prior to and after patching is always good practice. This should include running
package-cleanupwith following flags, --orphans, --problems, --dupes, --leaves. -
yum history undowill require access to all the previous RPM version; thus, need to ensure the older RPM versions are available to the system. It is recommended that prior to doing updates, you closely inspect the output ofpackage-cleanup --orphansto know what currently installed RPMs are no longer available in the enabled repositories. This should not be a concern if using the standard RHEL repositories provided by Red Hat as multiple versions of RPM are maintained in these locations. -
As after any RPM changes, recommend checking the yum output/logs for any messages and/or rpm{new,orig,save} files created.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
