关键是要明确日志路径、权限和筛选方法:ubuntu/debian查syslog/auth.log/kern.log,centos/rhel查messages/secure/kern.log,用tail、less、grep、zgrep等命令配合sudo高效定位问题。

直接读 /var/log 下的文本日志,关键不是“能不能打开”,而是“打开哪个、怎么筛、权限够不够”。现代 systemd 系统虽推荐用 journalctl,但很多场景仍得查这些文件——比如审计归档、排查旧问题、或系统没启用 journald。
先确认你该看哪几个核心文件
别一上来就 ls /var/log 全扫。按用途锁定这几类:
-
系统综合事件:Ubuntu/Debian 看
/var/log/syslog;CentOS/RHEL 看/var/log/messages -
登录与权限操作:Ubuntu/Debian 查
/var/log/auth.log;CentOS/RHEL 查/var/log/secure -
内核级异常:如硬件报错、OOM killer 触发、驱动崩溃,盯
/var/log/kern.log -
启动过程细节:
/var/log/boot.log或/var/log/dmesg(后者内容等同于dmesg命令输出) -
服务专属日志:Nginx 在
/var/log/nginx/error.log,MySQL 错误日志常在/var/log/mysql/error.log
用对命令,别硬翻大文件
日志动辄几百 MB,cat 会刷屏。优先用带筛选和分页能力的组合:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 看最新几行:
tail -n 20 /var/log/messages - 实时跟踪新增:
tail -f /var/log/auth.log(按 Ctrl+C 退出) - 翻页查看:
less /var/log/syslog(空格翻页,/ 搜索,q 退出) - 查关键词(注意大小写):
grep -i "failed password" /var/log/auth.log - 同时匹配多关键词(如 error + 时间段):
awk '/May 29.*0[8-12]:[0-5][0-9]/ && /error|fail/' /var/log/messages
处理权限和压缩旧日志
普通用户常被拒绝读取,尤其 kern.log 或 secure。别跳过 sudo:
- 加权限再查:
sudo grep "Out of memory" /var/log/kern.log - 旧日志被轮转压缩了?用
zgrep直接搜:zgrep "connection refused" /var/log/messages.1.gz - 列出所有相关文件(含压缩版):
ls -lt /var/log/messages*,看清时间顺序再选
留意 logrotate 的影响
系统默认每天或按大小轮转日志,比如 messages 变成 messages.1,再变 messages.2.gz。如果你查不到“昨天”的记录,很可能它已被压缩归档——不是丢了,是换名字了。配置通常在 /etc/logrotate.d/ 下,各服务独立规则。










