Ubuntu 系统日志管理优化实操指南
一 核心架构与关键路径
二 容量控制与日常维护
sudo journalctl --vacuum-size=100M(保留最近 100MB)或 sudo journalctl --vacuum-time=7d(保留最近 7 天)。sudo journalctl --rotate,可避免正在写入的日志被截断。/var/log/syslog {
daily
rotate 7
compress
delaycompress
missingok
notifempty
create 0640 root adm
}
sudo logrotate -f /etc/logrotate.conf。sudo truncate -s 0 /var/log/syslog;删除旧轮转文件(如 syslog.1.gz)相对更安全。sudo crontab -e 中加入如 0 3 * * * /usr/sbin/logrotate /etc/logrotate.conf 的任务。三 保留策略与配置示例
Storage=persistent,并确保 /var/log/journal 存在;重启后 journalctl 可查询更完整历史。SystemMaxUse=、SystemKeepFree=、MaxRetentionSec= 等参数,实现按容量或时间更细粒度控制(修改后执行 sudo systemctl restart systemd-journald 生效)。size 100M)。daily|rotate|compress|delaycompress|missingok|notifempty|create 等通用选项,确保应用日志也受控增长。四 查询分析与告警
sudo journalctl -u nginxsudo journalctl --since today、sudo journalctl --since "1 hour ago"sudo journalctl -fsudo journalctl -b -1sudo apt install logwatch;示例:sudo logwatch --detail high --mailto admin@example.com --range today。sudo apt install swatch。五 安全与合规实践
sudo chmod 640 /var/log/syslog、sudo chown root:adm /var/log/syslog,防止非授权读取。