在 Debian(以及大多数 Linux 发行版)中,message 和 syslog 通常指的是系统日志记录相关的文件和机制,二者既有联系也有区别。下面从“概念”和“实际文件”两个层面说明。
syslog 是一种日志系统标准/协议,也常指:
rsyslog、syslog-ng)它的作用是:
/var/log/messages 是 syslog 系统生成的一个日志文件,用于记录:
它是 syslog 规则的“输出结果”之一。
程序 / 内核
↓
syslog 服务(rsyslog)
↓
/var/log/messages
/var/log/syslog
在 Debian 中(使用 rsyslog 时):
| 文件 | 内容 |
|---|---|
/var/log/syslog |
所有 syslog 消息(最完整) |
/var/log/messages |
部分系统消息(常不含 auth) |
注意:并非所有 Debian 默认都启用
/var/log/messages,有时只有/var/log/syslog。
在 /etc/rsyslog.conf 或 /etc/rsyslog.d/ 中:
*.info;mail.none;authpriv.none;cron.none /var/log/messages
含义:
*.info:所有 info 级别以上消息/var/log/messages而:
*.* /var/log/syslog
表示所有日志都进 syslog。
现代 Debian 使用 systemd + journald:
journalctl 查看日志(原始来源)关系:
systemd-journald
↓
rsyslog
↓
/var/log/messages
/var/log/syslog
syslog 是日志系统,messages 是 syslog 写出的一个日志文件;messages 属于 syslog 的一部分。
如果你愿意,我也可以:
messages vs syslog 内容差异/var/log/messages