在 Debian 系统中,“日志不记录”通常不是单一原因,而是日志系统配置、服务状态或权限问题导致的。下面按最常见原因逐条说明,并给出排查方法。
Debian 常见日志方案有两种:
日志位置:
/var/log/syslog/var/log/messages/var/log/auth.logjournalctl(内存或 /var/log/journal)systemctl status rsyslog
如果未运行:
systemctl start rsyslog
systemctl enable rsyslog
✅ 未启动就不会写 /var/log/*
检查 rsyslog 配置:
grep -R "null" /etc/rsyslog.conf /etc/rsyslog.d/
例如:
*.* /dev/null
或:
*.* stop
如果配置成只记录 crit 以上:
*.crit /var/log/syslog
普通 info 日志不会写。
查看:
grep -R "*.info" /etc/rsyslog.conf
df -h
df -i
如果 100%:
ls -l /var/log/syslog
正常应为:
-rw-r----- 1 root adm
修复:
chown root:adm /var/log/syslog
chmod 640 /var/log/syslog
有些程序只输出到 journalctl
查看:
journalctl -u 服务名
如果这里有,但 /var/log 没有,是正常的。
默认 journal 在内存中:
cat /etc/systemd/journald.conf | grep Storage
若:
Storage=volatile
改为:
Storage=persistent
然后:
mkdir -p /var/log/journal
systemctl restart systemd-journald
ls -lh /var/log/
可能已被轮转或删除。
systemctl status rsyslog
df -h
df -i
ls -l /var/log
journalctl -xe
我可以直接帮你定位配置问题。