Ubuntu inotify能监控的文件及功能
inotify是Ubuntu(及所有Linux发行版)内核提供的实时文件系统事件监控机制,可用于跟踪文件或目录的变化。通过工具(如inotify-tools)或编程接口(如C语言的inotify_init/inotify_add_watch),用户可以监控以下内容:
inotify可监控本地文件系统中的所有文件(包括普通文件、目录、符号链接等),但不支持直接监控网络文件系统(如NFS、Samba)(部分网络文件系统可能通过特殊配置支持,但并非原生兼容)。
inotify支持多种事件类型,覆盖文件生命周期中的常见操作,主要包括:
cat、vim打开文件);echo写入、vim编辑保存);chmod、时间戳touch、所有者chown修改);IN_MODIFY更适合检测文件保存操作);inotifywait -m /path/to/file -e modify);-r(递归)选项,监控指定目录及其所有子目录中的文件变化(如inotifywait -m -r /path/to/directory -e create,delete)。/proc/sys/fs/inotify/max_user_watches查看,默认值通常为8192),超过需调整(如echo 100000 | sudo tee /proc/sys/fs/inotify/max_user_watches);