Exploring the yum package manager
Rollback Function
You are probably familiar with the situation in which you install a new program but then need to restore the original state of the system because of incompatibilities, bugs, or other problems. This rollback can be fairly tricky – for one thing, older packages might be difficult to locate, and for another, the configurations might have been overwritten. An automatic rollback function is often the quickest, simplest, and cleanest approach.
To leverage the benefits of package rollback, you need to back up the current system status before you change the selection of packages – that is, whenever you install or delete packages. To help you do so, RPM has a repackage function.
The repackage process bundles the relevant files, such as configuration files, data, and program files, into a new RPM archive. The RPM repackage function adds a transaction ID to each archive and stores the archive at a fixed location.
To restore a previous installation state, remove the packages you just installed and install the repackage files you created before doing so.
To tell RPM which repackage files to install, each RPM transaction is assigned a unique number. If you delete multiple packages and their dependencies, all the repackage files will have a unique transaction ID. According to the RPM manpage, the ID is a simple Unix timestamp.
Yum can use RPM's rollback functionality if you enable the feature in the configuration files. To do so, add the following entry to /etc/rpm/macros:
%_repacke_all_erasures 1
If the /etc/rpm/macros configuration file does not exist, you need to create it. Then add the following line to the /etc/yum.conf file:
tsflags=repackage
Once you have configured this parameter, the system will "remember" every status setting in the /var/spool/repackage folder. If you delete a package, something such as
# rpm -Uhv --rollback '3 minutes ago'
will restore the system state from three minutes ago.
Test Run
Additionally, specifying --test will perform a test run and show you the actions to perform, but without actually executing the rollback. You can specify the time for the rollback as follows:
# rpm -Uhv --rollback 'YYYY-MM-DD HH:MM'
If you can't remember the time for the installation you want to roll back, just check the timestamps on the repackage files in /var/spool/repackage.
Infos
- RPM Fusion: http://rpmfusion.org
- Additional package sources: http://www.fedorafaq.org/#getsoftware
- Yum Upgrade: http://fedoraproject.org/wiki/YumUpgradeFaq
« Previous 1 2 3
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Juno Computers Launches Another Linux Laptop
If you're looking for a powerhouse laptop that runs Ubuntu, the Juno Computers Neptune 17 v6 should be on your radar.
-
ZorinOS 17.1 Released, Includes Improved Windows App Support
If you need or desire to run Windows applications on Linux, there's one distribution intent on making that easier for you and its new release further improves that feature.
-
Linux Market Share Surpasses 4% for the First Time
Look out Windows and macOS, Linux is on the rise and has even topped ChromeOS to become the fourth most widely used OS around the globe.
-
KDE’s Plasma 6 Officially Available
KDE’s Plasma 6.0 "Megarelease" has happened, and it's brimming with new features, polish, and performance.
-
Latest Version of Tails Unleashed
Tails 6.0 is based on Debian 12 and includes GNOME 43.
-
KDE Announces New Slimbook V with Plenty of Power and KDE’s Plasma 6
If you're a fan of KDE Plasma, you'll be thrilled to hear they've announced a new Slimbook with an AMD CPU and the latest version of KDE Plasma desktop.
-
Monthly Sponsorship Includes Early Access to elementary OS 8
If you want to get a glimpse of what's in the pipeline for elementary OS 8, just set up a monthly sponsorship to help fund its continued existence.
-
DebConf24 to be Held in South Korea
Busan will be the location of the latest DebConf running July 28 through August 4
-
Fedora Unleashes Atomic Desktops
Fedora has combined its solid distribution with rpm-ostree system to make it possible to deliver a new family of Fedora spins, called Fedora Atomic Desktops.
-
Bootloader Vulnerability Affects Nearly All Linux Distributions
The developers of shim have released a version to fix numerous security flaws, including one that could enable remote control execution of malicious code under certain circumstances.