Событие pyinotify python из файла, созданного извне

У меня есть экземпляр pyinotify, наблюдающий за смонтированным сетевым диском (смонтированным с помощью CIFS) на наличие событий IN_WRITE_CLOSE, который безошибочно улавливает события, созданные системой (sudo cp, sudo mv и т. д.), если сам сервер помещает файлы в этот каталог.

Однако я хотел бы получить события для файлов, созданных на этом сетевом диске другим сервером и программой.

По какой-то причине мой экземпляр inotify не видит эти события... Это нормальное поведение или что-то не так с моим кодом? Если это ЯВЛЯЕТСЯ нормальным поведением, есть ли способ обойти это или мне нужно найти другой инструмент мониторинга, отличный от inotify, для сбора этих событий?

ОБНОВЛЕНИЕ

согласно ответу @Cedric, я изменил точку монтирования на NFS, но по-прежнему не получаю никаких событий.


person sadmicrowave    schedule 21.12.2011    source источник
comment
какое сетевое крепление вы используете? НФС, СИФС...?   -  person Cédric Julien    schedule 21.12.2011


Ответы (1)


Согласно этой ветке на linux cifs клиент, это не было реализовано (и не запланировано) в 2009 году.

Что касается части NFS, то это работает при монтировании NFS, но только в том случае, если прослушиватель является той же машиной, что и создатель/модификатор/удалитель файла.... :( (источник здесь)

Наконец, я нашел хук (прямо здесь), это скрипт Python, который вы должны запустить на удаленный сервер, который будет отправлять вам события (скрипт сделан для связи с сервером MediaTomb по http, но вы можете реализовать свой собственный отправитель)

person Cédric Julien    schedule 21.12.2011
comment
@sadmicrowave кажется, что ответ ДА, к сожалению? - person Cédric Julien; 21.12.2011
comment
на самом деле это не проблема (в данном случае), так как мой сетевой диск также можно монтировать через NFS. Я просто получаю сообщение об ошибке «Отказано в доступе» прямо сейчас, и я пытаюсь понять это. Знаете ли вы о журнале ошибок, куда отправляются ошибки монтирования в ОС * nix (ubuntu) - person sadmicrowave; 21.12.2011
comment
@sadmicrowave: должно быть в /var/log/syslog - person Cédric Julien; 21.12.2011
comment
Наконец-то я правильно смонтировал свою NFS, но экземпляр pyinotify по-прежнему не находит события, когда файлы создаются другой серверной программой. Я даже изменил обработчик события на ALL_EVENTS, но ничего не найдено... - person sadmicrowave; 21.12.2011
comment
@sadmicrowave: ну, это работает при монтировании NFS, но только если слушатель - это та же машина, что и создатель/модификатор/удалитель файла .... Я отредактировал свой ответ с моими последними результатами поиска. - person Cédric Julien; 22.12.2011