在Linux系统中,错误日志是排查系统故障、应用异常的核心依据,不同发行版和服务类型的错误日志存储位置、查看方式存在差异,掌握这些规则能大幅提升问题定位效率。

系统级错误日志的默认存储路径
大多数Linux发行版默认使用rsyslog服务管理日志,系统级错误日志通常存储在/var/log/目录下,常见路径如下:
- /var/log/messages:记录系统通用信息,包括部分错误提示,适用于RHEL、CentOS、Fedora等发行版。
- /var/log/syslog:功能与messages类似,是Debian、Ubuntu等发行版的默认系统日志文件。
- /var/log/secure:记录系统安全相关日志,包括登录失败、权限错误等信息,常见于RHEL系系统。
- /var/log/dmesg:记录系统启动过程中的内核日志,包含硬件检测、驱动加载相关的错误信息。
使用systemd_journal查看日志
使用systemd作为初始化系统的Linux发行版,默认使用journald服务管理结构化日志,无需依赖传统日志文件,可通过journalctl命令查看:
# 查看所有日志,按时间倒序排列 journalctl # 查看本次启动以来的错误级别日志 journalctl -p err # 查看指定服务的错误日志,以nginx为例 journalctl -u nginx.service -p err # 查看指定时间段的错误日志 journalctl --since "2024-05-01 00:00:00" --until "2024-05-01 12:00:00" -p err
应用服务的独立错误日志路径
多数应用服务会将自身错误日志存储在独立路径,常见服务的错误日志位置如下:
| 服务名称 | 常见错误日志路径 |
|---|---|
| Nginx | /var/log/nginx/error.log |
| Apache | /var/log/apache2/error.log(Debian系)/var/log/httpd/error_log(RHEL系) |
| MySQL | /var/log/mysql/error.log |
| Docker | /var/log/docker.log 或 journalctl -u docker.service查看 |
错误日志的筛选与查看技巧
查看日志时通常需要筛选错误信息,常用的命令组合如下:
# 查看/var/log/messages中最近100条错误日志 tail -n 100 /var/log/messages | grep -i "error" # 实时监控错误日志新增内容 tail -f /var/log/syslog | grep -i "error" # 查看指定时间段的错误日志,以2024年5月1日为例 grep "May 1" /var/log/syslog | grep -i "error"
注意事项
查看部分日志文件需要root权限,可在命令前添加sudo获取权限。如果系统修改过rsyslog或journald的默认配置,日志存储路径可能会发生变化,可通过查看对应服务的配置文件确认实际存储位置。
日志文件会随时间增长占用磁盘空间,建议定期清理过期日志,或配置日志轮转策略避免磁盘占满。
Linux错误日志日志路径rsyslogsystemd_journal修改时间:2026-07-11 01:51:30