我的Perl代码以root身份安装了几(4)个rpm文件。在安装较新版本之前,下一次安装会删除它们(rpm -e
)。一个不会删除,rpm -e
给出错误,表明它没有安装。但是,稍后安装更新的文件时,会显示已安装的消息。
手动尝试删除会产生相同的结果。我的问题是如何强制从rpm数据库中删除某些东西,以及为什么存在这种矛盾(不是从rpm -e
安装并且已经从rpm -Uvh
和rpm -ivh
安装)?
答案 0 :(得分:12)
答案 1 :(得分:6)
它没有被删除的原因可能是因为其中一个scriptlet失败了。手动完成并注意错误。如果它提到失败的scriptlet,请尝试使用rpm -e --noscripts
答案 2 :(得分:2)
rpm -e --force
将不强制删除软件包,rpm -e --nodeps
将停止查看其他依赖项。
您的RPM数据库可能会以某种方式变形,您可能希望尝试rpm --rebuilddb