一、清理臨時文件
臨時文件是系統垃圾的主要來源之一,通常存儲在/tmp、/var/tmp及用戶目錄的.cache、.local/share/Trash中。
sudo rm -rf /tmp/*清除/tmp目錄下的所有臨時文件(系統重啟后會重新創建);同理,sudo rm -rf /var/tmp/*清理/var/tmp目錄。rm -rf ~/.cache/*刪除當前用戶的緩存文件,rm -rf ~/.local/share/Trash/*清空回收站中的文件。systemd-tmpfiles工具設置定時規則(如編輯/etc/tmpfiles.d/cleanup.conf添加w /tmp 1777 root root -,表示每周清理/tmp),或添加cron任務(如0 3 * * * root rm -rf /tmp/*,每天凌晨3點執行)。二、清理包管理器緩存
包管理器(yum/dnf)下載的RPM包和元數據會占用大量磁盤空間,需定期清理。
sudo yum clean all命令清理所有緩存(包括已下載的RPM包、元數據);也可單獨清理元數據(sudo yum clean metadata)或RPM包(sudo yum clean packages)。sudo dnf clean all命令,功能與yum類似,覆蓋所有緩存類型。三、清理日志文件
日志文件(如/var/log/messages、/var/log/secure)會隨時間增長占用大量空間,需合理清理。
sudo journalctl --vacuum-time=2weeks刪除兩周前的日志;sudo journalctl --vacuum-size=100M將日志限制在100MB以內。sudo rm -f /var/log/messages(系統消息日志)、sudo rm -f /var/log/secure(認證日志)等,操作前需確認日志無重要信息。logrotate工具(默認已安裝)自動壓縮、刪除舊日志,編輯/etc/logrotate.conf調整輪轉策略(如保留7天日志)。四、清理無用軟件包及依賴
卸載軟件后,殘留的無用依賴會占用空間,需自動檢測并清理。
sudo yum list installed(CentOS 7)或sudo dnf list installed(CentOS 8+),查看不需要保留的軟件。sudo yum remove package_name(如sudo yum remove firefox)或sudo dnf remove package_name。sudo yum autoremove(CentOS 7)或sudo dnf autoremove(CentOS 8+),刪除不再被任何軟件依賴的無用包。五、清理舊內核
舊內核版本會占用磁盤空間,且不會自動刪除,需手動清理。
rpm -q kernel,顯示所有已安裝的內核版本(當前使用的內核不會被列出)。sudo yum remove kernel-version(如sudo yum remove kernel-3.10.0-1160.el7.x86_64);或使用package-cleanup工具(需安裝yum-utils):sudo package-cleanup --oldkernels --count=2,保留最近2個內核版本。六、查找并清理大文件/目錄
使用工具快速定位占用空間大的文件或目錄,針對性清理。
sudo yum install ncdu(CentOS 7)或sudo dnf install ncdu(CentOS 8+),運行sudo ncdu /掃描根目錄,通過界面查看大文件/目錄,按d鍵刪除。sudo find / -type f -size +100M -exec ls -lh {} \;查找大于100MB的文件,sudo find / -type f -size +500M -exec rm -f {} \;刪除大于500MB的文件(操作前需確認文件用途)。七、清理Docker日志(若有Docker服務)
Docker容器的日志文件會快速增長,需定期清理。
docker ps獲取容器ID,sudo truncate -s 0 /var/lib/docker/containers/container_id/container_id-json.log清空指定容器日志。sudo find /var/lib/docker/containers/ -name "*.log" -exec truncate -s 0 {} \;清空所有容器日志。注意事項
/home、/etc等關鍵目錄,防止誤刪。/usr、/bin)操作。