Linux 日志体系与日志分析

Linux 日志体系与日志分析

一、Linux 日志体系概述

Linux 中的大多数服务都会生成日志文件,日志用于记录系统运行状态、服务异常、访问请求以及用户操作记录。

常见日志类型:

日志类型 作用
系统日志 记录系统运行与内核事件
安全日志 记录 SSH、sudo 登录行为
服务日志 记录 nginx、mysql 等服务状态
应用日志 记录程序运行与报错信息

日志目录通常位于:

1
/var/log

查看日志目录:

1
2
cd /var/log
ls

二、常见核心日志文件

系统日志

CentOS:

1
/var/log/messages

Ubuntu:

1
/var/log/syslog

主要记录:

  • 系统运行信息
  • 服务异常
  • 内核事件

安全日志

CentOS:

1
/var/log/secure

Ubuntu:

1
/var/log/auth.log

主要记录:

  • SSH 登录
  • sudo 操作
  • 登录失败信息

查看 SSH 登录失败:

1
grep "Failed password" /var/log/secure

定时任务日志

1
/var/log/cron

用于排查:

  • crontab 未执行
  • 定时任务异常

Nginx 日志

访问日志:

1
/var/log/nginx/access.log

错误日志:

1
/var/log/nginx/error.log

三、日志查看命令

tail

查看最后内容:

1
tail access.log

实时监控日志:

1
tail -f access.log

查看最后 50 行:

1
tail -n 50 error.log

less

适合查看大日志文件:

1
less error.log

常用操作:

操作 作用
/keyword 搜索关键字
n 下一个匹配
N 上一个匹配
Shift + G 跳到文件尾
gg 跳到文件头
q 退出

grep

用于日志过滤与关键字搜索。

搜索 ERROR:

1
grep ERROR app.log

忽略大小写:

1
grep -i error app.log

显示行号:

1
grep -n ERROR app.log

实时过滤错误:

1
tail -f app.log | grep ERROR

四、journalctl 与 systemd 日志

现代 Linux 使用 systemd 管理服务,其日志统一由 journalctl 管理。

查看服务日志:

1
journalctl -u nginx

查看最近 20 行:

1
journalctl -u nginx -n 20

实时监控:

1
journalctl -u nginx -f

查看系统错误:

1
journalctl -xe

五、日志分析思路

运维排查问题时,应建立以下流程:

1
2
3
4
5
6
7
服务状态

系统日志

错误日志

定位原因

典型流程:

1
2
3
systemctl status nginx
journalctl -u nginx
tail -f /var/log/nginx/error.log

六、常见故障排查

Nginx 启动失败

检查状态:

1
systemctl status nginx

查看日志:

1
journalctl -u nginx

常见错误:

1
bind() failed

通常表示:

  • 端口被占用
  • 配置错误

SSH 无法登录

实时查看安全日志:

1
tail -f /var/log/secure

常见错误:

1
Failed password

表示认证失败。


网站出现 500 错误

查看错误日志:

1
tail -f /var/log/nginx/error.log

常用于定位:

  • PHP 报错
  • Python 程序异常
  • 权限问题

七、日志分析常用组合

查看监听异常:

1
netstat -an | grep LISTEN

统计错误数量:

1
grep -c ERROR app.log

提取访问 IP:

1
awk '{print $1}' access.log

筛选 500 请求:

1
grep "500" access.log

八、日志轮转

Linux 使用 logrotate 管理日志文件,避免日志无限增长。

主要功能:

  • 自动切分日志
  • 压缩历史日志
  • 删除旧日志

常见配置目录:

1
/etc/logrotate.d/

九、运维中的日志意识

日志是 Linux 运维最重要的信息来源。

排查问题时应优先:

1
2
3
查看日志
分析错误
定位原因

而不是直接:

  • 重启服务
  • 重装程序
  • 修改系统配置

具备日志分析能力,是 Linux 运维的重要基础。


Linux 日志体系与日志分析
https://blog.sh462li.top/2026/06/09/Linux/Linux 日志体系与日志分析/
作者
SHAO
发布于
2026年6月9日
许可协议