卵化如何工作?


14

根据维基百科

inotify是一个Linux内核子系统,它注意到文件系统的更改。它取代了以前的通知。

程序,同步文件(如crashplan,保管箱,GIT)建议更换中用户指南,用户增加max_user_watches123)。

据我对inotify的了解,操作系统“被告知”文件已更改,而不是要求操作系统“去寻找”更改。

我假设在每个目录中都创建了一个“ inotify”文件。它是否正确?有没有办法从命令行与inotify进行交互?

资源
为什么inotify事件在NFS挂载上有所不同?
Inotify等待目录中有大量文件


您可能不会以这种方式(至少,不容易)找到问题的答案,但是您应该grep --exclude=arch -r inotify在Linux内核源代码中运行。

Answers:


21

Inotify是内部内核工具。没有“ inotify文件”。有专门的系统调用inotify_initinotify_add_watchinotify_rm_watch允许进程进行登记时,某些文件系统事件发生时自己被通知。事件发生时,流程通过通过返回的文件描述符接收事件的描述inotify_init

操作系统不会“告诉”文件已更改:它知道,因为它正在进行更改。通知应用程序的是文件已更改,而不必查找。

该程序inotifywait提供了一种从命令行使用inotify的简单方法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.