使用 rpm 时出现错误“无法创建事务锁”

使用 rpm 时出现错误“无法创建事务锁”

我在使用包管理将 Fedora 安装到 DomU 的逻辑卷方面正在慢慢取得进展。我(在出色的人们的帮助下)Unix 和 Linux)解决了许多问题,主要围绕以下问题rpm(请参阅下面的链接):

我正在使用--root选项将rpm我新建的 rpm 版本更改为/mnt/fedRoot.我还指示rpm查看rpmrc构建文件夹中的文件,而不是实际的/var/lib/rpm.现在不幸的是,在我运行的任何 rpm 文件上,我得到:error: can't create transaction lock on /mnt/fedRoot (Is a directory)。在网上查找时,我发现一些页面表明这是__db.*.尽管删除它们并在我的文件夹中重建数据库rpm修复了另一个问题,但我仍然收到错误transaction lock

有人对这个错误有深入的了解吗?

答案1

尝试以 root 身份运行命令。这对我有用。

答案2

其他东西正在持有该锁。稍等片刻。 (通常是图形包管理工具刷新其可用视图,或者可能是运行 yum)。

答案3

检查root用户的文件级别权限,它必须是(读写和执行)

$ls -l /var/lib/rpm/.rpm.lock
-rwxr-xr-x

答案4

2019 更新:::

遇到了类似的问题(RPM失败:错误:无法在/var/lib/rpm/.rpm.lock上创建事务锁(资源暂时不可用))

解决了;

ps -ef|grep rpm

并杀死 2 个孤立的 rpm 进程,如下所示;

rpm --root / --dbpath /var/lib/rpm -i --percent --noglob --force --nodeps -- /var/cache/zypp/packages/download.o
/bin/sh /var/tmp/rpm-tmp.uHUmw1 7

然后我就可以继续升级软件包了

相关内容