我的Perl代码以root身份安装了几个(4)rpm文件。 下一次安装会在安装新版本之前删除它们( rpm -e
)。 一个不会删除,使用rpm -e
给出它没有安装的错误。 但是,稍后安装更新的文件时,会显示消息已经安装。
手动尝试删除给出相同的结果。 我的问题是如何强制从rpm数据库中删除某些东西,为什么存在这种矛盾(不是从rpm -e
安装的,而是从rpm -Uvh
和rpm -ivh
安装的)?
它没有被擦除的原因可能是因为其中一个脚本失败。 手动操作并注意错误。 如果它提到一个失败的脚本,尝试用rpm -e --noscripts
擦除它
rpm -e --force
不会强行删除一个软件包, rpm -e --nodeps
会通过停止它来检查其他的依赖关系。
有可能你的RPM数据库在某种程度上变形了,你可以试试一下rpm --rebuilddb