“Linux trigger 不触发”这个问题比较宽泛,因为 trigger(触发器) 在 Linux 里可能指很多东西。下面按常见场景给你一个排查思路,你可以对照看是哪一种。
systemd.path / systemd.timer)unit 没有 enable
systemctl enable xxx.path
systemctl enable xxx.timer
否则重启或服务重载后不会生效。
path unit 监听的文件/目录没变化
close_write 等事件touch 有时不触发(取决于配置)未启动
systemctl start xxx.path
trigger 依赖的服务失败
journalctl -u xxx.service
✅ 排查:
systemctl status xxx.path
journalctl -u xxx.path
IN_MODIFY | IN_CREATE
✅ 排查:
inotifywait -m /path
/etc/udev/rules.d/
udevadm control --reload
udevadm trigger
✅ 测试:
udevadm test /sys/class/...
如果是 Linux 上跑的数据库 trigger 不触发:
为了更准确回答,你可以说:
我可以直接帮你定位问题。