在 Linux 系统中清空 syslog 日志,取决于你使用的是 syslog 还是 rsyslog / journald。下面按常见情况说明。
/var/log/syslog
/var/log/messages
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/messages
✅ 优点:
cat /dev/nullsudo cat /dev/null > /var/log/syslog
sudo rm /var/log/syslog
sudo systemctl restart rsyslog
⚠️ 风险:
如果你的系统使用 systemd,日志可能由 journald 管理。
journalctl --disk-usage
sudo journalctl --vacuum-time=1s
或按大小清空:
sudo journalctl --vacuum-size=1M
或彻底清空:
sudo rm -rf /var/log/journal/*
sudo systemctl restart systemd-journald
⚠️ 注意:
/var/log/journal 可能是只读或受保护rm -rfsudo sh -c 'echo > /var/log/syslog'
检查:
ls /etc/logrotate.d/rsyslog
示例配置:
/var/log/syslog {
rotate 7
daily
missingok
notifempty
compress
postrotate
/usr/lib/rsyslog/rsyslog-rotate 2>/dev/null || true
endscript
}
ps -ef | grep rsyslog
ps -ef | grep systemd-journal
或:
ls /var/log/syslog
ls /var/log/journal
✅ 清空 syslog(最安全)
sudo truncate -s 0 /var/log/syslog
✅ 清空 journal 日志
sudo journalctl --vacuum-time=1d
如果你能告诉我:
我可以给你更精确的命令 ✅