Rpm

將 rpm 包標記為自動安裝

  • January 23, 2021

在 debian 系統上,我可以使用aptitude markauto並將aptitude unmarkauto軟體包標記為手動或自動安裝。我使用它通過標記我知道我想要的包來刪除不需要的包。然後apt-get autoremove將刪除所有不需要的包。

我現在在 Fedora 系統上,希望在 rpm 或 yum 或其他程序中具有類似的功能。rpm/yum 甚至有像 debian 系統這樣的手動/自動安裝包的概念嗎?

至少較新的 yum 版本(在 yum 3.4.3 的 Fedora 20 上測試)能夠區分手動安裝的軟體包和作為依賴項安裝的軟體包。此資訊使用鍵“reason”儲存在 yumdb 中,該鍵可以設置為“user”或“dep”。

# yumdb set reason dep [package name or wildcard]

應該等同於“aptitude markauto”。如果您不提供包名稱,則更改將應用於所有包。我不會那樣做,不太激進的方法是使用

# yumdb search reason user

並手動刪除您不想要的包。

如果你跑

# yum autoremove

如果其他包不再引用它們,則所有標記為“dep”的包都將被刪除。應該等同於“aptitude autoremove”。

不使用 yum 安裝的包(例如 rpm -i)可能沒有“原因”鍵,我假設自動刪除的預設行為是將它們視為“使用者”包,但它們沒有使用“yumdb 搜尋”命令列出。

引用自:https://serverfault.com/questions/369451