温馨提示×

linux syslog怎么解读

小樊
50
2026-09-20 01:04:03
栏目: 智能运维

Linux 里的 syslog 本质上是“系统日志协议 + 日志收集机制”的统称。要“解读 syslog”,可以从 日志在哪、格式是什么、怎么看、常见含义 这几个层面来理解。


一、syslog 日志一般放在哪

常见位置(不同发行版略有差异):

/var/log/syslog        # Debian / Ubuntu
/var/log/messages      # RHEL / CentOS
/var/log/auth.log      # 认证相关(登录、sudo)
/var/log/kern.log      # 内核日志
/var/log/cron          # 定时任务

如果用了 systemd:

journalctl            # 查看所有日志
journalctl -u nginx   # 看某个服务
journalctl -p err     # 只看错误

二、syslog 日志的基本格式

一条典型 syslog 内容:

Jun 12 10:23:45 hostname sshd[1234]: Failed password for root from 1.2.3.4 port 5678 ssh2

拆解含义:

部分 含义
Jun 12 10:23:45 时间
hostname 产生日志的主机名
sshd[1234] 进程名[进程PID]
Failed password ... 具体日志内容

三、syslog 的“级别(Severity)”

syslog 定义了 8 个级别(从严重到普通):

0 emerg   系统不可用
1 alert   必须立即处理
2 crit    严重错误
3 err     错误
4 warning 警告
5 notice  注意
6 info    信息
7 debug   调试

查看高优先级日志:

grep -E 'err|crit|alert|emerg' /var/log/syslog

四、syslog 的“设施(Facility)”

表示“谁产生的日志”:

  • auth / authpriv:认证
  • kern:内核
  • daemon:后台服务
  • cron:定时任务
  • mail:邮件
  • user:用户程序

例如:

authpriv.warning

五、常见日志内容怎么解读

1️⃣ 登录安全相关

Failed password for root from 1.2.3.4

→ 有人尝试暴力破解 root

Accepted password for user from 10.0.0.5

→ 登录成功

2️⃣ 内核相关

kernel: Out of memory: Kill process 1234

→ 内存不足,OOM 杀进程

3️⃣ 服务异常

systemd[1]: nginx.service: Failed with result 'exit-code'

→ nginx 启动失败

4️⃣ 磁盘

EXT4-fs error (device sda1)

→ 文件系统错误


六、如何实时看日志

tail -f /var/log/syslog

或:

journalctl -f

七、syslog 配置文件(进阶)

  • /etc/rsyslog.conf
  • /etc/rsyslog.d/*.conf

示例规则:

*.err    /var/log/error.log
auth.*   /var/log/auth.log

八、一句话总结

syslog = 时间 + 主机 + 进程 + 日志内容
看日志重点看:时间、来源、错误级别、关键字(fail / error / denied / oom)

如果你有具体的一条 syslog 想让我帮你解读,直接贴出来就行。

0 踩