在 Ubuntu 里清空 syslog(系统日志) 常见有几种安全、常用的方法,按推荐顺序给你:
truncate(最推荐)安全、不会破坏服务
sudo truncate -s 0 /var/log/syslog
适用于:
/var/log/syslog(rsyslog 默认日志)> 重定向(最常用)sudo > /var/log/syslog
或:
sudo bash -c '> /var/log/syslog'
systemctl 重载 rsyslog(清空后仍生效)清空后建议重启日志服务,防止文件句柄问题:
sudo systemctl restart rsyslog
如果你是想彻底清理系统日志:
sudo rm -f /var/log/syslog.*
sudo rm -f /var/log/kern.log.*
sudo rm -f /var/log/messages.*
❌ 直接删除 syslog 文件:
sudo rm /var/log/syslog
会导致 rsyslog 无法继续写入,必须重启 rsyslog
ls -lh /var/log/syslog
Ubuntu 默认已有 logrotate,配置文件在:
/etc/logrotate.d/rsyslog
一般不需要手动清理,日志会自动轮转并压缩。
| 场景 | 命令 |
|---|---|
| 安全清空 syslog | sudo truncate -s 0 /var/log/syslog |
| 快速清空 | sudo > /var/log/syslog |
| 清空后刷新 | sudo systemctl restart rsyslog |
如果你是想清 Docker / journalctl / apt 日志,也可以告诉我,我可以给你专门的命令。