CentOS Syslog日志清理策略
一 核心策略总览
二 基于 logrotate 的 syslog 轮转配置
/var/log/messages
/var/log/secure
/var/log/maillog
/var/log/cron {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 640 root adm
sharedscripts
postrotate
/usr/bin/systemctl kill -s HUP rsyslog.service >/dev/null 2>&1 || true
endscript
}
logrotate -f /etc/logrotate.conf 或针对单个配置:logrotate -f /etc/logrotate.d/rsyslogtail -f /var/log/messages、tail -f /var/log/logrotate.log0 1 * * * /usr/sbin/logrotate -f /etc/logrotate.conf。三 基于 journalctl 的 systemd 日志清理
journalctl --vacuum-time=2weeks(保留最近两周)journalctl --vacuum-size=1G(保留最近 1GB)journalctl --rotate(便于快速释放空间)四 临时清理与风险控制
> /var/log/messages 或 truncate -s 0 /var/log/messagescp /var/log/messages /var/log/messages.bakrm 删除日志文件,可能导致应用无法继续写入或审计线索中断。五 策略选择与落地建议
kill -HUP rsyslog。journalctl --vacuum-time 或 --vacuum-size 做容量控制。