我可以从.spec脚本部分中删除RPM吗?

我正在构建一个现有的.spec / rpm的新版本,我想删除它所不需要的依赖项(之前的.spec有“Requires:rpm-xyz”).

所以除了删除Requires:rpm-xyz之外,我在.spec文件的“%post”部分添加了以下内容:

rpm -e rpm-xyz.

当我用yum安装生成的rpm时,在下载它并向我询问已处理的确认后,我得到了这一行并且它永远停留在那里:

警告:等待/var/lib/rpm/__db.000上的事务锁定

所以它看起来像是一个死锁(yum调用rpm,然后从内部调用rpm).所以我在/ var / lib / rpm中有__db.oox文件,我需要重建rom数据库以删除它们.

所以问题是:我允许从spec文件中调用rpm命令吗?我已经阅读了Obsolete标签,但它没有删除rpm.删除rpm的最佳方法是什么?

谢谢,

-Martin

附:额外信息:是的,我需要删除旧的依赖项,不,没有其他rpm依赖它.

不,您无法在.spec文件中的scriptlet中运行rpm(无论是post post还是其他内容).你可以做的就像是一条线
Obsoletes: rpm-xyv <= VERSION

在.spec文件中.百胜将继续删除其他包.

有关如何对包重命名等进行更多建议,请参阅http://yum.baseurl.org/wiki/YumPackageUpdates.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...