Question: When I tried to install a package with yum command on [CentOS, Fedora or RHEL], I got the error saying that "Another app is currently holding the yum lock; waiting for it to exit... The other application is: PackageKit". PackageKit seems starting automatically in the background, interfering with yum command. How can I disable PackageKit to avoid this yum error? Just like below:
PackageKit is a suite of programs designed for checking, updating, and (un)installing packages on a Linux system. When PackageKit is running in the background, it blocks any other software management initiated by users (e.g., with yum command).
When you fail to run yum command due to PackageKit holding the yum lock, you can simply wait for PackageKit to finish, and then run yum command again.
However, if PackageKit is really annoying to you, you can disable PackageKit. Here is how to turn off PackageKit on RedHat-based system.
1) Disable PackageKit Temporarily
One way to get around PackageKit during yum operation is to use "--disableplugin" option with yum command. This will temporarily disable PackageKit, and thus you can proceed without being interferred with by PackageKit.$ sudo yum install --disableplugin=refresh-packagekit <package-name>
2) Disable PackageKit Permanently
If you want to turn off PackageKit permanently, you can do the following:
On CentOS/RHEL 7, Fedora 20 or higher:
This will disable PackageKit permanently on the next boot.
On CentOS/RHEL 6, Fedora 19 or earlier:
Open /etc/yum/pluginconf.d/refresh-packagekit.conf with a text editor, and change "enabled=1" to "enabled=0".
enabled=0
3) Remove PackageKit Altogether
A final approach is to simply remove PackageKit altogether.
(This post was originally created by Dan Nanni)