Rhel

如何在保留某些文件的同時刪除 rpm 包

  • November 2, 2021

在安裝 64 位和 32 位httpd軟體包時遇到問題。

當通過 解除安裝其中一個軟體包時yum remove,它會刪除某些共享文件,例如/etc/httpd/conf/httpd.conf.

rpm有沒有辦法通過或排除文件的刪除yum?我查看了兩個man頁面,但看不到任何相關選項。

順便說一句:我知道我們可以備份文件並在解除安裝後恢復它們。我只是想知道是否有更清潔、更優雅的選擇。

聽起來軟體包已配置為未將 httpd.conf 文件聲明為“配置”文件,因此在刪除軟體包時未保存它們。如果 httpd.conf 已被聲明為配置文件並在安裝後更改,則在刪除軟體包期間它會保存為 httpd.conf.rpmsave。請參閱http://ftp.rpm.org/max-rpm/ch-rpm-erase.html了解在刪除軟體包期間採取的步驟。

您必須提前預測這種情況以便為它做好準備——或者使用文件備份和恢復,正如您提到的,或者通過使用rpm -qc <package>.

  • 如果您查詢軟體包的配置文件並且在其中沒有找到 httpd.conf,那麼您可以預期該文件會在軟體包刪除期間被刪除,並且可以提前將其複製到安全的地方。
  • 如果軟體包確實將 httpd.conf 列為配置文件,那麼:(1)您對該文件進行了有意義的更改,並且在軟體包刪除期間將保留該文件,或者(2)該文件自軟體包的安裝,並且在軟體包刪除期間將被(無害地)刪除。

引用自:https://unix.stackexchange.com/questions/208722