在 Ubuntu 中,系统日志主要由 systemd-journald 和 rsyslog 管理。下面按最常用、最安全的方法给你说明如何清理。
Ubuntu 使用 journalctl 来管理 systemd 日志。
journalctl --disk-usage
例如只保留 最近 7 天 的日志:
sudo journalctl --vacuum-time=7d
可选时间单位:
1h(1 小时)2d(2 天)1w(1 周)1m(1 个月)例如限制为 200MB:
sudo journalctl --vacuum-size=200M
编辑配置文件:
sudo nano /etc/systemd/journald.conf
修改或取消注释:
SystemMaxUse=200M
然后重启服务:
sudo systemctl restart systemd-journald
sudo du -sh /var/log/*
Ubuntu 通常已经自动轮转日志,但你可以手动清理:
sudo rm -f /var/log/*.log.*
sudo rm -f /var/log/syslog.*
sudo rm -f /var/log/kern.log.*
⚠️ 不要直接删除正在写入的日志文件(如 syslog、kern.log)
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/kern.log
sudo apt clean
sudo apt autoclean
sudo journalctl --vacuum-time=3d
sudo apt clean
✅ 使用 journalctl --vacuum-*
✅ 限制日志最大大小
❌ 不建议直接 rm -rf /var/log
只要把下面命令的输出发我即可:
journalctl --disk-usage
df -h