Ubuntu Syslog日志文件位置:如何查找和定位
小樊
35
2025-12-16 23:22:36
Ubuntu Syslog 日志位置与定位指南
一 核心路径与默认文件
- 系统日志集中位于 /var/log。Ubuntu 默认使用 rsyslog,主日志文件为 /var/log/syslog,常见相关文件及用途如下:
| 文件路径 |
用途说明 |
| /var/log/syslog |
全局系统日志(内核、服务、守护进程等) |
| /var/log/auth.log |
认证与授权日志(SSH 登录、sudo 等) |
| /var/log/kern.log |
内核与驱动日志 |
| /var/log/dmesg |
内核环缓冲区消息(启动阶段硬件初始化等) |
- 说明:部分发行版使用 /var/log/messages,而 Ubuntu 通常使用 /var/log/syslog。以上路径及用途适用于 Ubuntu 16.04+ 等使用 systemd 与 rsyslog 的版本。
二 快速定位与查看命令
- 直接查看与检索
- 查看完整文件:
cat /var/log/syslog
- 分页浏览:
less /var/log/syslog
- 查看末尾行:
tail -n 50 /var/log/syslog
- 实时跟踪:
tail -f /var/log/syslog
- 关键字过滤:
grep -i "error" /var/log/syslog
- 使用 systemd 的 journalctl(与 syslog 并行)
- 查看全部:
journalctl
- 按服务查看:
journalctl -u nginx.service
- 本次启动的错误:
journalctl -p err -b
- 实时跟踪:
journalctl -f
- 时间范围:
journalctl --since "2025-12-16 00:00:00" --until "2025-12-16 12:00:00"
- 结构化输出:
journalctl -o json
- 图形化工具
- 使用 Log File Viewer(GNOME 日志查看器),可集中查看 syslog、auth.log 等,并支持关键字搜索与过滤。
三 找不到或为空时的排查
- 确认日志服务与配置
- 检查服务:
sudo systemctl status rsyslog
- 重启服务:
sudo systemctl restart rsyslog
- 主配置与包含目录:/etc/rsyslog.conf 与 /etc/rsyslog.d/(默认规则常位于 /etc/rsyslog.d/50-default.conf)
- 检查日志轮转与归档
- 当前日志可能已轮转为 .1、.2.gz 等,例如 /var/log/syslog.1、/var/log/syslog.2.gz
- 使用
zless /var/log/syslog.2.gz 查看压缩归档
- 轮转与保留策略由 logrotate 管理(常见为按日轮转并保留若干天)
- 权限与磁盘
- 检查日志目录与文件权限(常见属主为 syslog:adm)
- 检查磁盘空间:
df -h /var/log
- 内核日志
- 若关注启动阶段或硬件相关,使用
dmesg 或查看 /var/log/dmesg。
四 自定义 Syslog 输出路径
- 编辑 /etc/rsyslog.conf 或在 /etc/rsyslog.d/ 下新增配置,将日志写入自定义目录,例如:
- 示例规则(写入自定义文件):
*.* /var/log/mylogs/syslog.log
- 创建目标目录并重启服务:
sudo mkdir -p /var/log/mylogs
sudo systemctl restart rsyslog
- 注意:修改路径前确保目录存在且权限正确,变更会影响系统与其他服务的日志收集。