我的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