如何避免“yum lock”的麻烦?

PHP*_*Pst 38 yum centos

我在尝试安装应用程序时经常遇到“另一个应用程序当前持有 yum 锁;正在等待它退出...”消息,我必须手动杀死 yum。我怎样才能避免这种情况?有什么简单的方法可以解锁yum吗?

似乎只能运行一个 yum 实例。与其他包管理器(apt-get、pacman)一样吗?

tal*_*zin 32

我认为这是由 PackageKit 引起的。您必须检查 PackageKit 并禁用它(我假设它是 CentOS 7 with systemctl,否则您可以使用serviceand chkconfig)(如评论中所述,服务名称packagekit不是packagekitd):

systemctl stop packagekit
systemctl disable packagekit
Run Code Online (Sandbox Code Playgroud)

另一种方法(在 CentOS/RHEL 6、Fedora 19 或更早版本上)是/etc/yum/pluginconf.d/refresh-packagekit.conf使用文本编辑器打开,然后更改enabled=1enabled=0.

或者你可以完全删除它:

yum remove PackageKit
Run Code Online (Sandbox Code Playgroud)

  • 它在我的 Centos 7 上被称为 `packagekit.service` (3认同)

小智 12

执行以下操作来解决问题:

cd /var/run
rm -f yum.pid
Run Code Online (Sandbox Code Playgroud)

你也可以在之后更新你的 yum

yum -y update
Run Code Online (Sandbox Code Playgroud)

  • 这是在对抗症状,而不是解决真正的原因。 (2认同)

小智 5

您可以通过以下两个简单的步骤来解锁 yum,

1) 运行ps aux | grep yum以查看哪个进程正在锁定 yum。2)kill <process_id>杀死进程。

再次运行ps aux | grep yum以查看进程是否被终止。杀死进程后,yum 将被解锁。

  • 这“有效”,但可能是不好的做法 (3认同)