Linux 的系统日志(syslog)存放在哪里?
Linux 系统日志集中存放在 /var/log 目录:Ubuntu/Debian 的系统日志在 /var/log/syslog,RHEL/CentOS 在 /var/log/messages;systemd 系统还可用 journalctl 查看。本文列出各发行版路径对照。
统一答案:都在 /var/log/ 目录下,具体文件名因发行版而异——Ubuntu/Debian 是 /var/log/syslog,RHEL/CentOS 是 /var/log/messages,systemd 系统还可以用 journalctl 命令直接查询。
各发行版对照
| 发行版 | 系统日志文件 |
|---|---|
| Ubuntu / Debian | /var/log/syslog |
| RHEL / CentOS / Fedora | /var/log/messages |
| systemd 通用 | journalctl(二进制日志,不在文本文件里) |
常用相关文件
/var/log/auth.log(Ubuntu)//var/log/secure(RHEL):登录认证;/var/log/kern.log:内核日志;/var/log/dmesg:启动与硬件信息;/var/log/nginx/、/var/log/mysql/:各应用自己的子目录。
journalctl 用法
journalctl -u nginx.service # 看某服务的日志
journalctl --since "1 hour ago" # 按时间过滤
journalctl -f # 实时滚动
常见问题(FAQ)
Q:/var/log 下没有 syslog 文件? 可能是极简系统没装 rsyslog(apt install rsyslog),或系统纯用 systemd-journald。
Q:日志会自动清理吗? 由 logrotate 按 /etc/logrotate.conf 配置轮转,默认按周保留数周。