我的Perl代码以root身份安装了几个(4)rpm文件。在安装新版本之前,下一次安装将删除它们(rpm -e
)。其中一个不会删除,rpm -e
会给出未安装的错误。但是,稍后安装更新的文件时,会显示消息已经安装。Linux rpm安装但不能擦除。为什么?
手动尝试删除给出相同的结果。我的问题是如何强制从rpm数据库中删除某些东西,以及为什么存在这种矛盾(不是从rpm -e
安装的,并且已经从rpm -Uvh
和rpm -ivh
安装)?
我的Perl代码以root身份安装了几个(4)rpm文件。在安装新版本之前,下一次安装将删除它们(rpm -e
)。其中一个不会删除,rpm -e
会给出未安装的错误。但是,稍后安装更新的文件时,会显示消息已经安装。Linux rpm安装但不能擦除。为什么?
手动尝试删除给出相同的结果。我的问题是如何强制从rpm数据库中删除某些东西,以及为什么存在这种矛盾(不是从rpm -e
安装的,并且已经从rpm -Uvh
和rpm -ivh
安装)?
rpm -e --force
将不停止它来检查其他依赖强制删除软件包,rpm -e --nodeps
将。
这可能是您的RPM数据库处于弯曲某种方式变了形,你不妨试试的rpm --rebuilddb
强制以这种方式删除rpm不再适用于CentOS 6.4。试图强制返回响应:rpm:只有安装,升级,rmsource和rmspec可能会被强制 – Magellan 2014-09-08 23:07:34
它也不会消失可能是因为小脚本的一个失败的原因。手动操作并观察错误。如果它提到一个失败的scriptlet,请尝试用rpm -e --noscripts
谢谢 - 这解决了我用我自己构建的包的问题,它在预删除scriptlet中有错误。 – RCross 2015-02-16 17:53:23
删除它也许最好在superuser.com上发布此问题?!另外,请尝试:rpm -e --nodeps {package_name} – mosg 2010-05-11 13:26:21