使用 apt 遞歸清除的正確方法是什麼?

使用 apt 遞歸清除的正確方法是什麼?

我剛剛意識到我不確定如何使用 Apt 執行清除,這也會清除所有依賴項。我到處閱讀,但仍然不確定是否有這些候選人:

apt purge --auto-remove <packagename>

並且(先清除一些套件之後):

apt autoremove --purge

它們正確嗎?相等的?有沒有更好的辦法?

答案1

它們都是正確的,但並不完全等同。

apt purge --auto-remove <packagename>

清除packagename和任何因刪除而變得不必要的包,以及任何其他不需要的包。

apt autoremove --purge

清除所有不需要的套件(標記為“自動安裝”並且沒有依賴套件)。

第一種形式是您在操作單一套件時使用的形式;後者是對所有包的清理操作。

您也可以APT::Get::AutomaticRemoveapt設定中啟用apt始終自動刪除(或使用aptitude預設的行為)。

答案2

OP的建議命令和現有答案是正確的,特別是根據手冊頁,但事實證明apt的行為比文件建議的稍微靈活一些。

為了在刪除套件及其自動安裝的依賴項時使命令列更加簡潔,您向 autoremove 指令提供套件名稱,如 中apt autoremove <pkg>,在這種情況下它的行為與 一樣apt remove --autoremove <pkg>。因此,apt autoremove --purge <pkg>兩者apt purge --autoremove <pkg>都會產生相同的結果。

更進一步,apt autopurge <pkg>其行為方式與規範形式相同apt remove --purge --autoremove <pkg>,並且似乎是實現遞歸清除的最簡潔的方法。

是否記錄這種行為顯然已經曾引起爭議開發商之中。

相關內容