Messages in this thread | | | From | Michael Kerrisk <> | Date | Mon, 21 Apr 2014 09:24:47 +0200 | Subject | Re: inotify, new idea? |
| |
On Mon, Apr 21, 2014 at 12:22 AM, Richard Weinberger <richard.weinberger@gmail.com> wrote: > On Fri, Apr 18, 2014 at 6:15 AM, Michael Kerrisk <mtk.manpages@gmail.com> wrote: >> On Thu, Apr 17, 2014 at 11:28 PM, Lennart Sorensen >> <lsorense@csclub.uwaterloo.ca> wrote: >>> On Thu, Apr 17, 2014 at 11:00:37PM +0200, Jos Huisken wrote: >>>> I was trying to maintain a local and remote directory in sync with >>>> lsync, using inotify. >>>> I happen to have >4M files and >400k directories... running over >>>> /proc/sys/fs/inotify/max_user_watches >>> >>> Would fanotify perhaps be a better interface to use? >> >> (One of us is misunderstanding fanotify; it might be me.) >> >> Did you look at fanotify closely? I don't think it could be used for >> this task -- does not notify linka dn unlink events, difficult to set >> up recursive monitoring, etc. > > Does recursive monitoring even work with inotify? > Last time I've tried it did failed as soon I did a mkdir -p a/b/c/d because > mkdir() raced against the thread which installes the new watches.
As I understand it, you have to program to deal with the races (rescan directories after adding watches). I recently did a lot of work updating the inotify(7) man page to discuss all the issues that I know of, and their remedies. If I missed anything, I'd appreciate a note on it, so that it can be added. See http://man7.org/linux/man-pages/man7/inotify.7.html#NOTES
Cheers,
Michael
-- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Author of "The Linux Programming Interface", http://blog.man7.org/
| |