如何清除 APT 緩存來回收寶貴的磁碟空間
如何清除 APT 緩存?你只需使用這個 apt-get 命令選項:
sudo apt-get clean
但是,清理 APT 緩存不僅僅是運行上面的命令。
在本教程中,我將解釋什麼是 APT 緩存、為什麼會使用它、為什麼你要清理它,以及關於清理 APT 緩存你應該知道的其他事情。
我將在這裡使用 Ubuntu 作為參考,但由於這是關於 APT 的,因此它也適用於 Debian 和其他基於 Debian 和 Ubuntu 的發行版,比如 Linux Mint、Deepin 等等。
什麼是 APT 緩存?為什麼要使用它?
當你使用 apt-get
或 apt 命令安裝一個軟體包時(或在軟體中心安裝 DEB 包),APT 包管理器會以 .deb 格式下載軟體包及其依賴關係,並將其保存在 /var/cache/apt/archives
文件夾中。
下載時,apt
將 deb 包保存在 /var/cache/apt/archives/partial
目錄下。當 deb 包完全下載完畢後,它會被移到 /var/cache/apt/archives
目錄下。
下載完包的 deb 文件及其依賴關係後,你的系統就會從這些 deb 文件中安裝包。
現在你明白緩存的用途了吧?系統在安裝軟體包之前,需要一個地方把軟體包文件存放在某個地方。如果你了解 Linux 目錄結構,你就會明白,/var/cache
是合適的地方。
為什麼安裝包後要保留緩存?
下載的 deb 文件在安裝完成後並不會立即從目錄中刪除。如果你刪除了一個軟體包,然後重新安裝,你的系統會在緩存中查找這個軟體包,並從這裡獲取它,而不是重新下載(只要緩存中的軟體包版本與遠程倉庫中的版本相同)。
這樣就快多了。你可以自己嘗試一下,看看一個程序第一次安裝,刪除後再安裝需要多長時間。你可以使用 time 命令來了解完成一個命令需要多長時間:time sudo apt install package_name
。
我找不到任何關於緩存保留策略的內容,所以我無法說明 Ubuntu 會在緩存中保留下載的包多長時間。
你應該清理 APT 緩存嗎?
這取決於你。如果你的根目錄下的磁碟空間用完了,你可以清理 APT 緩存來回收磁碟空間。這是 Ubuntu 上釋放磁碟空間的幾種方法之一。
使用 du 命令檢查緩存佔用了多少空間:
有的時候,這可能會佔用幾百兆,如果你正在運行一個伺服器,這些空間可能是至關重要的。
如何清理 APT 緩存?
如果你想清除 APT 緩存,有一個專門的命令來做。所以不要去手動刪除緩存目錄。只要使用這個命令就可以了:
sudo apt-get clean
這將刪除 /var/cache/apt/archives
目錄的內容(除了鎖文件)。以下是 apt-get clean
命令模擬刪除內容:
還有一個命令是關於清理 APT 緩存的:
sudo apt-get autoclean
與 clean
不同的是,autoclean
只刪除那些無法從倉庫中下載的包。
假設你安裝了包 xyz。它的 deb 文件仍然保留在緩存中。如果現在倉庫中有新的 xyz 包,那麼緩存中現有的這個 xyz 包就已經過時了,沒有用了。autoclean
選項會刪除這種不能再下載的無用包。
刪除 apt 緩存安全嗎?
是的,清除 APT 創建的緩存是完全安全的。它不會對系統的性能產生負面影響。也許如果你重新安裝軟體包,下載時間會更長一些,但也僅此而已。
再說一次,使用 apt-get clean
命令。它比手動刪除緩存目錄更快、更簡單。
你也可以使用像 Stacer 或 Bleachbit 這樣的圖形工具來實現這個目的。
總結
在寫這篇文章的時候,新的 apt
命令沒有這樣的內置選項。不過,為了保持向後的兼容性,仍然可以運行 apt clean
(內部應該是運行了 apt-get clean
)。請參考這篇文章來了解 apt 和 apt-get 的區別。
我希望你覺得這個關於 APT 緩存的解釋很有趣。雖然這不是什麼必要的東西,但了解這些小東西會讓你對你的 Linux 系統更加了解。
歡迎你在評論區提出反饋和建議。
via: https://itsfoss.com/clear-apt-cache/
作者:Abhishek Prakash 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive