在 Linux 上“定位日志异常”通常有一套比较固定的思路和方法,可以按下面步骤来做。
/var/log/messages # 系统通用日志(CentOS/RHEL)
/var/log/syslog # 系统通用日志(Ubuntu/Debian)
/var/log/dmesg # 内核启动和硬件信息
/var/log/secure # 安全、登录、sudo(RHEL系)
/var/log/auth.log # 登录认证(Debian系)
journalctl # 查看全部日志
journalctl -xe # 查看最近错误并展开
journalctl -u nginx # 某个服务
journalctl --since "10 min ago"
/var/log/nginx/
/var/log/mysql/
/var/log/app/ # 自定义路径
grep -i error /var/log/syslog
grep -i "failed\|denied\|exception" /var/log/messages
tail -n 100 /var/log/syslog
tail -f /var/log/nginx/error.log
journalctl --since "2026-01-21 10:00" --until "2026-01-21 10:30"
journalctl -p err
dmesg -T | grep -i error
dmesg | grep -i oom
df -h
top / htop / iostat
systemctl status xxx
journalctl -u xxx -xe
logwatch:日志汇总fail2ban:安全异常ELK / Grafana Loki:大规模日志awk / sed:批量分析现象:网站访问慢
# 1. 看系统
dmesg -T | tail
df -h
# 2. 看服务
systemctl status nginx
journalctl -u nginx -xe
# 3. 看错误日志
tail -f /var/log/nginx/error.log
grep -i "timeout\|502" /var/log/nginx/access.log
如果你愿意,可以告诉我:
我可以直接给你“针对性的命令”。