在 Unix 中无法获取 rpm 数据库的独占锁

在 Unix 中无法获取 rpm 数据库的独占锁

我试图安装一个 python rpmAIX 6.1而且花费的时间太长了所以我不得不关闭终端。

稍后,当我尝试以 root 身份安装相同的 rpm 时,出现了以下问题:

root:stud -> $ rpm -i -v python-2.6.7-1.aix5.1.ppc.rpm
cannot get exclusive lock on database
error: cannot open /opt/freeware/packages/packages.rpm

我该如何纠正这个问题?

执行 ps aux | egrep -i 'yum|rpm' 后得到:

root:stud-> $  ps aux | egrep -i 'yum|rpm'
root     2359514  0.0  0.0  240  252  pts/1 A    09:32:10  0:00 egrep -i yum|rp

答案1

这很简单,意味着有其他进程拥有 rpm 的锁定,但不允许你访问。检查你的机器中是否有任何可能使用 rpm 的进程。

这个命令应该会有帮助:

# ps aux | egrep -i ‘yum|rpm’

如果此命令显示某个进程(应该显示),您应该等待该进程退出,如果不需要的话,还可以终止该进程。

如果没有,请再次尝试您的命令,它应该可以工作。

您还可以在该位置检查锁文件/var/lib/rpm

只需进入该目录并检查锁定文件即可。如果文件存在,则很可能是过期的,因为您之前已终止终端,只需删除锁定文件即可。

如果这也不起作用,请尝试使用以下命令重建 RPM DB:

 # rpm  --rebuilddb

相关内容