Arch Linux 是使用最廣泛的滾動發布 Linux 發行版之一。但是,這些軟件包在更新後可能會出現問題。例如,內核更新會干擾您的安裝,因此禁用它們可能沒問題(除非您有新硬件)。
Pacman 是 Arch Linux 和基於 Arch 的發行版(例如 Artix、Manjaro 和 Endeavor OS)的默認包管理器。 您可以通過編輯 pacman.conf 文件來禁用特定軟件包的更新。
如果您的電池電量消耗很快,請查看我們的快速指南以提高您的 Arch Linux 電池壽命。
禁用特定軟件包更新的原因是什麼?
由於這是一個滾動發布的發行版,一旦開發人員發布包,包的更新就會發布。這使開發人員可以花更少的時間修復錯誤。這些有問題的包可能會導致應用程序停止工作,如果包太關鍵,甚至會導致系統崩潰。
如果軟件包的已知版本已經過廣泛測試並且在您的系統上運行良好,則停止軟件包升級應該可以解決問題。
防止 Arch Linux 上的包更新
只需使用您喜歡的文本編輯器編輯 /etc/ 目錄中的 pacman.conf 文件。打開終端並輸入:
# For Vim Users sudo vim /etc/pacman.conf # For nano users sudo nano /etc/pacman.conf
如果您使用 vim 編輯器,請按鍵盤上的“i”進入插入模式。然後向下滾動,直到找到類似“IgnorePkg 和 IgnoreGroup”的內容。
通過刪除前導“#”取消註釋 IgnorePkg 行,並添加要在更新期間排除的包的名稱。
如果你想從升級中排除多個包,你可以用空格分隔它們。現在,如果您使用的是 nano 文本編輯器,請按 Ctrl+O 保存並按 Ctrl+X 退出。 對於 vim 用戶,按 Esc 並輸入 :wq
結束。
如果上述方法不起作用,這裡有 10 種退出 VIM 編輯器的方法。
您也可以排除整個應用程序組,但不推薦(除非您知道自己在做什麼)像這樣取消 pacman.conf 文件中 IgnoreGroup 行的註釋。
IgnoreGroup = kde-applications
下次更新排除包時,您需要修改 pacman.conf 文件。
您還可以通過鍵入帶有忽略選項的 pacman -Syu 來排除包,如下所示:
sudo pacman -Syu --ignore=vim,linux,linux-headers

總結
Linux 無疑給了你更多的自由。 與 Windows 不同,在 Linux 發行版中更新本質上是強制性的,您可以選擇升級內容和時間。 Manjaro Linux 不需要以上步驟。 Manjaro 團隊會保留這個包直到它“足夠穩定”,但是你可能會遇到依賴錯誤。出於同樣的原因,應用更新不應推遲太久。
參考
吃豆人 – ArchWiki