Linux Trigger故障排查实战指南
一 明确含义与范围
二 通用排查流程
三 常见场景与命令清单
| 场景 | 快速定位 | 关键命令与要点 |
|---|---|---|
| systemd 服务未按定时器触发 | 查 .timer 是否启用、最近一次触发时间、服务是否成功启动 | 查看状态:systemctl status |
| cron 任务未执行 | 查 cron 日志、脚本输出与路径、环境变量 | 查看日志:grep CRON /var/log/syslog 或 /var/log/cron;脚本加日志:/path/script.sh >/path/log 2>&1;使用绝对路径;必要时在 crontab 顶部显式设置 PATH、SHELL、HOME;赋权:chmod +x |
| 服务被依赖触发但未起来 | 查依赖链、失败原因 | 依赖树:systemctl list-dependencies |
| 内核/硬件触发事件异常 | 查内核与硬件日志 | 内核环形缓冲:dmesg -T;系统日志:journalctl -k;关注设备插拔、驱动加载、I/O 错误等 |
| 网络相关触发失败 | 查连通性与监听 | 连通性:ping、traceroute;监听与连接:ss -lntp、ss -s、netstat -anp;必要时抓包:tcpdump -i any -nn port |
| 脚本/程序触发逻辑异常 | 跟踪执行流与变量 | 跟踪:strace -f -o /tmp/trace.log |
| 日志过大或难以检索 | 集中检索与归档 | 检索:**journalctl -u |
四 高频问题与对策
五 最小化复现实战示例