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按大小清理。