FANOTIFY API To Become More Useful With The Linux 5.1 Kernel
Fanotify allows monitoring objects on a file-system for accesses, opening, modifying, closing, reads, and opening while traditionally the inotify API has filled in the blanks for capabilities not offered by fanotify. With the upcoming Linux 5.1 kernel, there is fanotify support for directory events and other improvements to fill in some of those gaps for fanotify.
With the fanotify additions for Linux 5.1 there is finally support for create, move, and delete events as part of the new "directory events" addition along with events for the changing of attributes/metadata. The newly-added events indicate changes to meta-data, file moved from / move to, create sub-file, delete sub-file, delete self, and move self. There is also a change now to use interruptible waits when waiting on permission events so they can be properly stopped.
The fanotify changes for Linux 5.1 were already submitted as part of this pull request by SUSE's Jan Kara. For those wanting to dig more into the technical details of the changes can see this fsnotify branch while the Linux 5.1 merge window should be opening on Sunday night.
This API for monitoring of file-system events has been used for various storage management applications as well as virus /malware scanning, and other real-time file scanning applications.