Ubuntu日志清理策略主要通過以下工具和方法實現,核心目的是高效管理日志、釋放磁盤空間并保障系統穩定性:
journalctl(Systemd日志管理)
journalctl --disk-usage
。sudo journalctl --vacuum-time=1w
(保留1周日志,時間可自定義)。sudo journalctl --vacuum-size=500M
(保留500MB日志,自動刪除舊日志)。logrotate(日志輪轉工具)
/etc/logrotate.conf
和/etc/logrotate.d/
目錄下的配置文件,設置日志輪轉周期(如daily
)、保留數量(如rotate 7
)、壓縮(compress
)等參數。sudo logrotate -f /etc/logrotate.conf
。# /etc/logrotate.d/syslog 配置示例
/var/log/syslog {
daily
rotate 7
compress
missingok
notifempty
create 0640 root adm
}
find命令(手動清理特定文件)
sudo find /var/log -type f -name "*.log" -exec truncate -s 0 {} \;
。sudo find /var/log -type f -name "*.log" -mtime +7 -delete
(刪除7天前日志)。journalctl
和logrotate
管理日志,避免手動刪除關鍵文件導致系統異常。cron
定時任務(如每日運行logrotate
),實現自動化清理。/var/log/auth.log
)單獨備份。rm -rf
:直接刪除日志文件可能導致服務異常,僅建議在確認無用時使用。/var/lib/logrotate/status
查看輪轉記錄,確保策略生效。以上策略可根據實際需求組合使用,例如對系統日志用logrotate
按天輪轉保留7天,對臨時服務日志用journalctl
按大小清理。