在 Ubuntu 中,“日志清理”通常分为 查看日志、手动清理、自动清理(推荐) 三种方式。下面按常见场景给你说明。
主要日志目录:
/var/log/:系统日志(最常见)/var/log/journal/:systemd 日志(journald)/var/log/syslog、/var/log/auth.log、/var/log/kern.logjournalctl 清理 systemd 日志(最重要)查看日志占用:
journalctl --disk-usage
清理方式:
# 只保留最近 7 天
sudo journalctl --vacuum-time=7d
# 只保留 500MB
sudo journalctl --vacuum-size=500M
永久限制大小(推荐):
sudo nano /etc/systemd/journald.conf
修改:
SystemMaxUse=500M
MaxRetentionSec=7day
重启:
sudo systemctl restart systemd-journald
logrotate(系统自带,自动轮转)Ubuntu 默认已启用:
/etc/logrotate.conf
/etc/logrotate.d/
手动执行一次:
sudo logrotate -f /etc/logrotate.conf
sudo du -sh /var/log/*
清理示例(谨慎):
sudo rm -f /var/log/*.log.*
sudo rm -f /var/log/syslog.*
⚠️ 不要直接删 syslog、auth.log 本身,应先清空:
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log
sudo apt autoremove
sudo apt clean
df -h
sudo journalctl --vacuum-size=100M
❌ 直接 rm -rf /var/log
❌ 关掉日志(不利于排错)
❌ 删除正在写入的日志文件
如果你愿意,可以告诉我:
我可以给你一套更精确的方案。