温馨提示×

如何查找linux异常日志

小樊
69
2026-10-08 08:53:35
栏目: 智能运维

在 Linux 系统中,“异常日志”通常指系统错误、服务崩溃、内核异常、登录失败、资源耗尽等问题的记录。下面按思路 → 工具 → 常见位置 → 实战命令给你一个清晰指南。


一、先确认日志系统类型(很重要)

不同 Linux 发行版日志方式不同:

系统 日志方式
CentOS 6 / 老系统 /var/log + rsyslog
CentOS 7+ / Ubuntu systemd-journald + /var/log
容器环境 可能只有 stdout/stderr

二、最常用:用 journalctl 查异常(推荐)

适用于 systemd 系统(绝大多数现代 Linux)

1️⃣ 查看所有错误日志

journalctl -p err -xb
  • -p err:只显示 error 及以上
  • -x:显示说明
  • -b:本次启动

2️⃣ 查看某服务异常

journalctl -u nginx -p err
journalctl -u docker.service --since "1 hour ago"

3️⃣ 实时看异常

journalctl -f -p warning

三、传统日志文件(/var/log)

即使有 systemd,这些仍然很有用:

核心异常日志位置

/var/log/messages      # CentOS 系统日志
/var/log/syslog        # Ubuntu 系统日志
/var/log/dmesg         # 内核启动信息
/var/log/secure        # 登录、认证(暴力破解)
/var/log/kern.log      # 内核错误
/var/log/cron          # 定时任务异常

快速查找异常关键词

grep -iE "error|fail|timeout|panic|denied" /var/log/messages

四、内核 / 硬件异常(非常重要)

查看内核日志

dmesg | grep -i error
dmesg -T | tail -50

OOM(内存耗尽)

dmesg | grep -i "out of memory"

五、服务异常排查套路

服务起不来?

systemctl status nginx
journalctl -xe

看退出码

systemctl show nginx -p Result

六、安全相关异常(入侵排查)

grep "Failed password" /var/log/secure
lastb                 # 失败登录
last                  # 成功登录

七、CPU / 磁盘 / 内存异常

虽然不算“日志”,但常一起看:

top
df -h
free -h
iostat -x 1

八、实用“异常日志一键脚本”(示例)

journalctl -p err -xb | tail -100
echo "---- /var/log ----"
grep -iE "error|fail" /var/log/messages 2>/dev/null | tail -50

九、常见异常对应日志速查表

异常现象 查哪里
系统卡死 dmesg, journalctl -p err
服务起不来 journalctl -u 服务名
网络异常 /var/log/messages, dmesg
被攻击 /var/log/secure
磁盘满 df -h, /var/log

如果你愿意,可以告诉我:

  • ✅ 具体 Linux 发行版
  • ✅ 遇到的异常现象(如“SSH 连不上”“Nginx 500”)
  • ✅ 是否有 systemd

我可以直接给你精确命令。

0 踩