警告:在 yum 之外更改的 RPMDB 在 rpm 安装时挂起
Warning: RPMDB altered outside of yum hangs on rpm install
我刚刚创建了包含几个 shell 脚本的 rpm 包,我的 rpm 在 post 安装步骤(即 %post 部分)中执行那些 shell 脚本。
我的 RPM 已成功创建,当我 运行
rpm -ivh myrpmfile.rpm
RPM 能够找到我的 shell 脚本并 运行 正确地安装它们。这些脚本还使用 yum 安装了一些其他软件包,因此当 yum 尝试安装这些软件包时,它挂起并出现以下错误
Warning: RPMDB altered outside of yum
有时会挂在下面的状态
- 运行 交易检查
- 运行交易测试
- 事务测试成功
- 运行 交易
您无法从 %post
调用 yum
,因为数据库已锁定。如果您需要安装其他软件包,请将它们设置为 Required
。如果你的 RPM 也安装了 yum repo 文件,那么你需要把它们做成两个 RPM。
那个警告只是因为你直接使用了 rpm
"behind its back" 并且很可能是一个红鲱鱼。
我刚刚创建了包含几个 shell 脚本的 rpm 包,我的 rpm 在 post 安装步骤(即 %post 部分)中执行那些 shell 脚本。
我的 RPM 已成功创建,当我 运行
rpm -ivh myrpmfile.rpm
RPM 能够找到我的 shell 脚本并 运行 正确地安装它们。这些脚本还使用 yum 安装了一些其他软件包,因此当 yum 尝试安装这些软件包时,它挂起并出现以下错误
Warning: RPMDB altered outside of yum
有时会挂在下面的状态
- 运行 交易检查
- 运行交易测试
- 事务测试成功
- 运行 交易
您无法从 %post
调用 yum
,因为数据库已锁定。如果您需要安装其他软件包,请将它们设置为 Required
。如果你的 RPM 也安装了 yum repo 文件,那么你需要把它们做成两个 RPM。
那个警告只是因为你直接使用了 rpm
"behind its back" 并且很可能是一个红鲱鱼。