在 Debian(以及大多数 Linux 发行版)里,日志格式主要取决于“用什么日志系统”。Debian 常见的日志系统有:
下面按常见情况给你讲怎么“看”和“怎么读格式”。
/var/log/syslog # 系统总日志(最常用)
/var/log/messages # 类似 syslog(部分版本)
/var/log/auth.log # 登录、sudo、SSH
/var/log/kern.log # 内核日志
/var/log/dpkg.log # 软件安装记录
/var/log/nginx/ # Nginx 日志
cat /var/log/syslog
less /var/log/syslog
tail -f /var/log/syslog # 实时看
grep sshd /var/log/auth.log
一条典型 syslog 日志长这样:
Jun 25 10:32:14 debian sshd[1234]: Failed password for root from 192.168.1.10 port 22 ssh2
时间 主机名 进程[PID]: 日志内容
| 部分 | 说明 |
|---|---|
Jun 25 10:32:14 |
月 日 时:分:秒 |
debian |
主机名 |
sshd |
服务/进程名 |
[1234] |
进程 PID |
Failed password ... |
日志正文 |
注意:syslog 默认没有年份(当年日志)
Debian 9+ 默认用 systemd,很多日志在 journal 里。
journalctl # 全部日志
journalctl -xe # 最近错误,带解释
journalctl -u ssh.service # 只看 ssh
journalctl --since "2024-06-25 10:00"
Jun 25 10:32:14 debian sshd[1234]: Failed password for root from 192.168.1.10
和 syslog 类似,但更结构化,可输出 JSON:
journalctl -o json-pretty
journalctl -o short-iso
输出:
2024-06-25T10:32:14+08:00 debian sshd[1234]: ...
Accepted password for user from 1.2.3.4 port 55555 ssh2
✅ 登录成功
Failed password for invalid user admin
❌ 暴力破解尝试
kernel: Out of memory: Killed process 1234
⚠️ 内存不足
# 按时间实时看
tail -f /var/log/syslog
# 看某个服务
journalctl -u nginx -f
# 看错误
journalctl -p err -xb
你可以直接贴一段 Debian 日志,我帮你逐字解释。