利用Ubuntu inotify进行故障排查可从以下方面入手:
查看inotify资源使用情况
cat /proc/sys/fs/inotify/max_user_watches。find /proc/*/fd -ls 2>/dev/null | grep inotify | cut -d '/' -f 3 | xargs -I '{}' sh -c 'echo -n "{} "; cat /proc/{}/cmdline'。调整inotify资源限制
sudo sysctl fs.inotify.max_user_watches=524288。/etc/sysctl.conf,添加fs.inotify.max_user_watches=524288,执行sudo sysctl -p。分析inotify相关日志
dmesg查看内核日志:dmesg | grep inotify。grep -i inotify /var/log/syslog或使用journalctl -u <服务名>。优化监控配置
inotifywait -m /path实时监控,观察异常事件触发情况。排查应用程序配置