Il y a quelque temps, j'ai remarqué que les événements signalés par inotify sont différents lorsque le fichier est enregistré sur un montage NFS par rapport à un système de fichiers local.
Le VFS sous-jacent ne devrait-il pas fournir une vue uniforme des opérations sur les fichiers?
Ce qui suit est la trace de VIM enregistrant un fichier dans Debian 7.1 (Linux 3.2)
Sur un montage NFS:
wd=1 mask = 32 (IN_OPEN)
wd=1 mask = 16 (IN_CLOSE_NOWRITE)
wd=1 mask = 2048 (IN_MOVE_SELF)
wd=1 mask = 4 (IN_ATTRIB)
wd=1 mask = 1024 (IN_DELETE_SELF)
wd=1 mask = 32768 )
Sur un système de fichiers local
wd=1 mask = 32 (IN_OPEN)
wd=1 mask = 16 (IN_CLOSE_NOWRITE)
wd=1 mask = 2 (IN_MODIFY)
wd=1 mask = 32 (IN_OPEN)
wd=1 mask = 8 (IN_CLOSE_WRITE)
wd=1 mask = 4 (IN_ATTRIB)
L'enregistrement d'un fichier avec EMACS révèle également différents beahvior
Sur un montage NFS:
wd=1 mask = 32 (IN_OPEN)
wd=1 mask = 16 (IN_CLOSE_NOWRITE)
wd=1 mask = 2048 (IN_MOVE_SELF)
Sur un système de fichiers local:
wd=1 mask = 32 (IN_OPEN)
wd=1 mask = 16 (IN_CLOSE_NOWRITE)
wd=1 mask = 2 (IN_MODIFY)
wd=1 mask = 32 (IN_OPEN)
wd=1 mask = 2 (IN_MODIFY)
wd=1 mask = 8 (IN_CLOSE_WRITE)
Ces tests ont été exécutés avec inotify-touch.c
inotify
événements sur NFS.