/home
、/etc
、數據庫文件),避免誤刪導致數據丟失。df -h
查看磁盤空間使用率,du -sh /*
分析各目錄大小,free -h
查看內存占用,明確清理優先級(如磁盤空間不足時優先清理大文件)。yum clean all
(CentOS 7及以下)或dnf clean all
(CentOS 8及以上),清除軟件包緩存;使用package-cleanup --oldkernels --count=1
刪除舊內核(僅保留最新1個),釋放/boot
分區空間。/tmp
和/var/tmp
下的臨時文件(無重要數據),命令:rm -rf /tmp/* /var/tmp/*
。.cache
目錄(如/home/user/.cache
),避免瀏覽器、應用緩存占用過多空間。logrotate
(默認路徑/etc/logrotate.conf
),設置日志保留天數(如rotate 7
保留7天)、壓縮選項(compress
),自動輪轉/var/log
下的日志文件(如*.log
)。truncate
清空大日志文件(如/var/log/messages
),或用find
刪除指定天數前的日志(如find /var/log -name "*.log" -mtime +30 -delete
)。yum list installed
列出已安裝軟件,刪除不再需要的包(如yum remove package_name
)。yum autoremove
(或dnf autoremove
),刪除不再被任何軟件依賴的無用包,減少系統冗余。find / -type f -size +100M -exec ls -lh {} \;
查找大于100MB的文件,確認后刪除無用文件(如舊備份、視頻、ISO鏡像)。find / -type f -mtime +30 -delete
刪除30天前的舊文件(謹慎使用,避免刪除系統關鍵文件)。sync
同步數據到磁盤,然后執行echo 3 > /proc/sys/vm/drop_caches
清理頁面緩存、目錄項和inode緩存(不影響正在運行的程序)。編寫清理腳本:將上述清理任務整合到一個腳本(如/usr/local/bin/cleanup.sh
),添加日志記錄(如LOG_FILE="/var/log/cleanup.log"
)和錯誤處理,示例腳本結構:
#!/bin/bash
LOG_FILE="/var/log/cleanup.log"
echo "Cleanup started at $(date)" >> $LOG_FILE
# 清理YUM緩存
yum clean all >> $LOG_FILE 2>&1
# 清理臨時文件
rm -rf /tmp/* /var/tmp/* >> $LOG_FILE 2>&1
# 清理舊內核
package-cleanup --oldkernels --count=1 >> $LOG_FILE 2>&1
# 清理系統緩存
sync; echo 3 > /proc/sys/vm/drop_caches >> $LOG_FILE 2>&1
echo "Cleanup completed at $(date)" >> $LOG_FILE
賦予執行權限:chmod +x /usr/local/bin/cleanup.sh
。
設置定時任務:使用crontab -e
添加定時任務,例如每天凌晨2點執行清理腳本:
0 2 * * * /usr/local/bin/cleanup.sh
或每周日凌晨3點執行:0 3 * * 0 /usr/local/bin/cleanup.sh
。
yum install bleachbit -y
,運行后選擇清理項目即可。yum install ncdu -y
安裝,運行ncdu /
掃描磁盤,直觀查看大文件和目錄,便于針對性清理。df -h
和free -h
檢查磁盤和內存使用情況,確認清理效果。