Ubuntu系統(tǒng)磁盤清理的方法大全
當Ubuntu系統(tǒng)磁盤空間告急時,可以通過清理一些特定文件和目錄來快速釋放空間。
| 清理類別 | 具體方法 | 主要命令或操作 | 潛在釋放空間 & 說明 |
|---|---|---|---|
| 快速安全清理 | 1. 卸載無用軟件包 2. 清理APT緩存 3. 清理縮略圖緩存 | 1. sudo apt autoremove2. sudo apt clean3. rm -rf ~/.cache/thumbnails/* | 適合日常清理,操作簡單且風險低。 |
| 深度清理 | 1. 清理系統(tǒng)日志 2. 刪除舊內(nèi)核 3. 清理Snap緩存 | 1. sudo journalctl --vacuum-time=3d2. sudo apt purge linux-image-舊內(nèi)核版本號3. sudo rm -rf /var/lib/snapd/cache/* | 釋放空間顯著,但需要一定的操作技巧,需謹慎。 |
| 可視化管理 | 1. 查找大文件 2. 使用圖形化工具 | 1. sudo du -sh /*2. 使用 ncdu或Stacer | 定位準確,可以直觀地找到并刪除占用空間最大的文件或目錄。 |
一、清理前的準備
在開始清理前,建議先檢查一下磁盤空間的使用情況,做到心中有數(shù)。
查看磁盤整體使用情況:
df -h
這個命令可以確定是哪個分區(qū)(比如 / 或 /home)空間緊張。

定位大目錄:
進入根目錄或家目錄,使用以下命令查看各個子目錄的大小:
sudo du -sh /*
這能快速找到占用空間最大的目錄。

二、快速安全清理
這幾項操作非常安全,可以定期執(zhí)行。
卸載無用軟件包:sudo apt autoremove
這個命令會自動刪除那些之前作為依賴被安裝,但現(xiàn)在不再被任何程序使用的軟件包。
清理APT緩存:sudo apt clean
系統(tǒng)會將下載的所有軟件包(.deb文件)緩存在 /var/cache/apt/archives/ 目錄中。這個命令會清空整個緩存,釋放可觀的空間。如果只想刪除過時的軟件包,可以使用 sudo apt autoclean。
清理縮略圖緩存:rm -rf ~/.cache/thumbnails/*
這個命令會刪除用戶家目錄下的縮略圖緩存。這些是預覽圖片時自動生成的,刪除后再次瀏覽時系統(tǒng)會重新創(chuàng)建,所以可以安全清理。
三、 深度清理
以下操作可以釋放更多空間,但需要額外小心。
清理系統(tǒng)日志:
使用 journalctl 命令可以管理系統(tǒng)的日志。以下命令可以刪除3天前的所有日志:
#清理所有早于3天的日志 sudo journalctl --vacuum-time=3d #或限制日志系統(tǒng)占用的最大磁盤空間 sudo journalctl --vacuum-size=100M #也可以使用 logrotate 工具管理或手動刪除舊的日志文件(如 *.log.1, *.gz)
刪除舊內(nèi)核:
注意:這是一個高風險操作,務必確保至少保留一個當前可用的內(nèi)核版本,切勿刪除當前正在運行的內(nèi)核。
- 首先,查看已安裝的所有內(nèi)核:
dpkg --list | grep linux-image
- 使用
uname -r查看當前正在使用的內(nèi)核版本。 - 然后,使用
sudo apt purge linux-image-版本號來刪除那些舊的、不再使用的內(nèi)核鏡像。建議保留最新的1-2個備用內(nèi)核即可。

清理Snap緩存:
如果使用Snap軟件包,可以清理其緩存:
sudo rm -rf /var/lib/snapd/cache/*
此外,還可以使用 flatpak uninstall --unused 清理未使用的Flatpak運行時。
四、/snap、/swapfile、/usr 和 /var 文件
| 目錄/文件 | 核心作用 | 是否可以直接刪除? | 清理/處理建議 |
|---|---|---|---|
| /snap | Snap軟件包的安裝目錄、核心運行時。 | 絕對不能直接刪除! | 可以卸載不用的Snap應用,或清理其緩存。 |
| /swapfile | 虛擬內(nèi)存/交換文件,作為物理內(nèi)存的擴展。 | 絕對不能直接刪除! | 可以調(diào)整其大小或禁用(需確保內(nèi)存充足)。 |
| /usr | 系統(tǒng)核心資源庫,包含用戶安裝的應用程序、庫文件、文檔等。 | 絕對不能直接刪除! | 幾乎不能手動清理,依賴包管理器(如apt)。 |
| /var | 可變數(shù)據(jù),如日志、緩存、數(shù)據(jù)庫、郵件等。 | 不能直接刪除整個目錄! | 是清理的重點區(qū)域,可以有選擇地清理其子目錄(如緩存、舊日志)。 |
4.1/snap- Snap 軟件包容器
- 作用:這是 Snap 格式軟件包的安裝目錄。Snap 是一種軟件打包和分發(fā)方式,它將應用程序及其所有依賴項打包成一個獨立的、自包含的單元。每個 Snap 應用都在自己的沙箱中運行。
- 為什么不能直接刪除:
- 如果使用了任何 Snap 應用(如 Slack、VS Code、Spotify 等),它們的核心文件就在這里。刪除目錄會導致所有 Snap 應用無法運行。
- 即使現(xiàn)在沒用,它也是 Snap 系統(tǒng)的一部分,直接刪除會破壞系統(tǒng)的包管理結構。
- 如何安全清理:
- 卸載不用的 Snap 應用:
# 列出已安裝的 Snap 包 snap list # 卸載不需要的 Snap 包 sudo snap remove <package-name>
- 清理 Snap 緩存:Snap 會保留舊版本以便回滾,這可能會占用空間??梢郧謇砭彺妫?strong>系統(tǒng)會自動管理,通常不需要手動干預。如果非要手動清理,可以刪除緩存目錄(風險自擔):
sudo rm -rf /var/lib/snapd/cache/*
4.2/swapfile- 交換文件
- 作用:在物理內(nèi)存(RAM)不足時,系統(tǒng)會將內(nèi)存中不常用的數(shù)據(jù)暫時寫入到交換文件(Swap)中,從而為更需要內(nèi)存的程序騰出空間。它對于系統(tǒng)的穩(wěn)定性和休眠(Hibernate)功能至關重要。
- 為什么不能直接刪除:
- 直接刪除
swapfile可能會導致系統(tǒng)在內(nèi)存壓力大時崩潰、卡死或出現(xiàn)不可預知的行為。 - 如果系統(tǒng)啟用了休眠功能,刪除交換文件將使休眠失效。
- 直接刪除
- 如何安全處理:
- 調(diào)整大小:如果交換文件太大,并且確信內(nèi)存充足(例如,16GB以上內(nèi)存且不休眠),可以先創(chuàng)建一個新的、更小的交換文件,然后再刪除舊的。這是一個安全的過程,不是簡單的
rm命令。 - 禁用交換文件:同樣,這是一個安全的配置過程,而不是直接刪除文件??梢允褂?
sudo swapoff /swapfile然后刪除,但通常不建議完全禁用。
- 調(diào)整大小:如果交換文件太大,并且確信內(nèi)存充足(例如,16GB以上內(nèi)存且不休眠),可以先創(chuàng)建一個新的、更小的交換文件,然后再刪除舊的。這是一個安全的過程,不是簡單的
4.3/usr- Unix System Resources
- 作用:這是系統(tǒng)的“軟件庫”,存放了所有用戶安裝的應用程序、系統(tǒng)的核心工具、庫文件、頭文件、共享的只讀數(shù)據(jù)等??梢园阉斫鉃?Windows 下的
C:\Program Files和C:\Windows\System32的結合體。 - 為什么不能直接刪除:
- 刪除
/usr等于摧毀了整個系統(tǒng)的軟件生態(tài),系統(tǒng)將立即癱瘓,無法啟動任何非內(nèi)置命令的程序。 - 它的內(nèi)容完全由包管理器(如
apt、dpkg)管理,手動刪除會破壞依賴關系。
- 刪除
- 如何安全清理:
- 幾乎無法手動清理。唯一安全的方式是使用包管理器:
# 刪除不需要的軟件包 sudo apt autoremove --purge # 查找并手動卸載不常用的大型軟件 apt list --installed
4.4/var- Variable Data
- 作用:存放系統(tǒng)運行過程中經(jīng)常變化的可變數(shù)據(jù)。這是磁盤清理中最值得關注的目錄。
- 為什么不能直接刪除整個目錄:因為它包含了重要數(shù)據(jù),如數(shù)據(jù)庫(MySQL/PostgreSQL)、郵件、網(wǎng)站數(shù)據(jù)、Docker 鏡像等。刪除整個目錄會導致服務崩潰、數(shù)據(jù)丟失。
- 如何安全清理(重點?。?/strong>:
/var/cache/apt/archives/:APT 軟件包緩存目錄。這是清理的首選目標。
# 清空所有已下載的 .deb 軟件包(最徹底) sudo apt clean # 或只刪除過時的軟件包(更安全) sudo apt autoclean
/var/log/:系統(tǒng)日志目錄。日志文件會隨時間增長。
# 清理所有早于3天的日志 sudo journalctl --vacuum-time=3d # 或限制日志系統(tǒng)占用的最大磁盤空間 sudo journalctl --vacuum-size=100M # 也可以使用 logrotate 工具管理或手動刪除舊的日志文件(如 *.log.1, *.gz)
/var/lib/snapd/cache/:如前所述,Snap 的緩存目錄。/var/tmp/:臨時文件目錄,但這里的文件通常會被保留更長時間??梢詸z查并刪除不必要的文件。
五、操作指南
當 Ubuntu 磁盤空間用完時,請按以下順序安全高效地清理:
第一優(yōu)先級(安全快捷):
sudo apt autoremove(卸載無用依賴)sudo apt clean(清空APT緩存,在/var/cache/apt/archives/)rm -rf ~/.cache/thumbnails/*(清理用戶縮略圖緩存)
第二優(yōu)先級(深度清理 /var):
sudo journalctl --vacuum-time=3d(清理系統(tǒng)日志)- 檢查并清理
/var/lib/snapd/cache/
第三優(yōu)先級(應用級別):
- 使用
snap list和sudo snap remove卸載不用的 Snap 應用。 - 使用
apt list --installed查找并卸載不常用的大型軟件。
注意:在 Linux 系統(tǒng)里,永遠不要直接刪除不完全理解其作用的系統(tǒng)級目錄??偸莾?yōu)先使用系統(tǒng)提供的包管理工具(apt, snap)或?qū)S妹睿?code>journalctl)來進行清理。
清理日志

刪除日志

查看磁盤使用情況

以上就是Ubuntu系統(tǒng)磁盤清理的方法大全的詳細內(nèi)容,更多關于Ubuntu系統(tǒng)磁盤清理的資料請關注腳本之家其它相關文章!
相關文章
Openssl實現(xiàn)雙向認證教程(附服務端客戶端代碼)
這篇文章主要介紹了Openssl實現(xiàn)雙向認證教程(附服務端客戶端代碼),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-05-05
linux下用tar命令將當前目錄下文件按子目錄壓縮歸檔的實現(xiàn)
下面小編就為大家?guī)硪黄猯inux下用tar命令將當前目錄下文件按子目錄壓縮歸檔的實現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12

