在 Debian 系统中,message 日志通常指 /var/log/messages(由 rsyslog 或 syslog-ng 生成)。清空方式取决于你是否有服务在持续写入该文件。
truncate(推荐)sudo truncate -s 0 /var/log/messages
✅ 清空内容
✅ 保留文件权限和 inode
✅ 不影响正在写入的日志服务
: > 重定向sudo : > /var/log/messages
或
sudo > /var/log/messages
echo 清空sudo echo -n > /var/log/messages
Debian 通常已配置 logrotate,你可以手动触发:
sudo logrotate -f /etc/logrotate.conf
或只针对 messages:
sudo logrotate -f /etc/logrotate.d/rsyslog
较新 Debian 默认使用 systemd-journald,可能:
/var/log/messagesjournal查看系统日志:
journalctl
清空 journal 日志:
sudo journalctl --vacuum-size=1M
# 或
sudo journalctl --rotate
sudo journalctl --vacuum-time=1s
❌ 直接 rm /var/log/messages
如果已删除,可恢复:
sudo touch /var/log/messages
sudo chown syslog:adm /var/log/messages
sudo systemctl restart rsyslog
ps aux | grep rsyslog
systemctl status rsyslog
sudo truncate -s 0 /var/log/messages
如果你是用 Docker / LXC / 特定版本 Debian,可以告诉我,我可以给更精确的方法。