inotify 是 Linux 内核提供的一套文件系统事件通知机制。
它能在文件或目录发生变化时,立刻通知你,比如:
- 文件被创建(create)
- 文件被修改(modify)
- 文件被删除(delete)
- 文件被重命名(move)
- 权限变化(attrib)
核心特点
- 实时触发:事件发生就触发
- 被动监听:不主动轮询
- 基于文件系统事件
- 内核级机制,效率高
- 常见使用场景
- 自动同步文件(如 rsync、lsyncd)
- 日志文件变更后立即处理
- 监控配置文件变动并自动 reload
- 开发工具的“热更新”(watch 文件)
示例(命令行)
inotifywait -m /var/log
意思是:持续监听 /var/log 目录的变化。