Linux spool文件夾清理策略
/var/spool是Linux系統中用于存儲任務隊列和緩沖數據的關鍵目錄,主要服務于打印、郵件、計劃任務等系統服務。常見子目錄及用途如下:
sudo rm -f /var/spool/mail/*
sudo postsuper -d ALL
(需停止Postfix服務后再執行,避免新任務進入)。lpstat -o
;cancel -a
;sudo rm -rf /var/spool/cups/*
。sudo rm -f /var/spool/cron/*
sudo rm -f /var/spool/at/*
(或用atq
查看任務后再刪除)。創建統一的清理腳本(如/usr/local/bin/cleanup_spool.sh
),包含常用清理步驟:
#!/bin/bash
# 停止郵件服務(避免清空隊列時影響新任務)
systemctl stop postfix
# 清空郵件spool
rm -rf /var/spool/mail/*
# 啟動郵件服務
systemctl start postfix
# 清空打印隊列
cancel -a && rm -rf /var/spool/cups/*
# 清空cron任務
rm -f /var/spool/cron/*
echo "Spool cleanup completed on $(date)"
賦予執行權限:sudo chmod +x /usr/local/bin/cleanup_spool.sh
。
使用crontab設置定期執行(如每天凌晨2點):
sudo crontab -e
添加以下內容:
0 2 * * * /usr/local/bin/cleanup_spool.sh >> /var/log/spool_cleanup.log 2>&1
說明:日志會記錄到/var/log/spool_cleanup.log
,便于后續審計。
df -h /var/spool
查看spool目錄占用情況,及時調整清理頻率。