Pyinotify — monitoruj zmiany w systemie plików w czasie rzeczywistym w systemie Linux
Pyinotify to prosty, ale przydatny moduł Pythona do monitorowania zmian w systemach plików w czasie rzeczywistym w systemie Linux.
Jako administrator systemu możesz go używać do monitorowania zmian zachodzących w wybranym katalogu, takim jak katalog internetowy lub katalog przechowywania danych aplikacji i nie tylko.
Sugerowana lektura: fswatch – monitoruje zmiany lub modyfikacje plików i katalogów w systemie Linux
Zależy to od inotify (funkcji jądra Linuksa włączonej do jądra 2.6.13), która jest powiadamianiem sterowanym zdarzeniami. Jego powiadomienia są eksportowane z przestrzeni jądra do przestrzeni użytkownika za pomocą trzech wywołań systemowych.
Celem pyinotiy jest powiązanie trzech wywołań systemowych i obsługa implementacji na nich, zapewniając wspólne i abstrakcyjne środki do manipulowania tymi funkcjonalnościami.
W tym artykule pokażemy, jak zainstalować i używać pyinotify w systemie Linux do monitorowania zmian lub modyfikacji systemu plików w czasie rzeczywistym.
Zależności
Aby móc korzystać z pyinotify, Twój system musi działać:
- Jądro Linuksa 2.6.13 lub nowsze
- Python 2.4 lub nowszy
Jak zainstalować Pyinotify w systemie Linux
Najpierw zacznij od sprawdzenia wersji jądra i Pythona zainstalowanych w twoim systemie w następujący sposób:
uname -r
python -V
Po spełnieniu zależności użyjemy pip do zainstalowania pynotify. W większości dystrybucji Linuksa Pip jest już zainstalowany, jeśli używasz pobranych plików binarnych Python 2 >=2.7.9 lub Python 3 >=3.4 z python.org, w przeciwnym razie zainstaluj go w następujący sposób:
yum install python-pip [On CentOS based Distros]
apt-get install python-pip [On Debian based Distros]
dnf install python-pip [On Fedora 22+]
Teraz zainstaluj pyinotify w następujący sposób:
pip install pyinotify
Zainstaluje dostępną wersję z domyślnego repozytorium. Jeśli szukasz najnowszej stabilnej wersji pyinotify, rozważ sklonowanie repozytorium git, jak pokazano.
git clone https://github.com/seb-m/pyinotify.git
cd pyinotify/
ls
python setup.py install
Jak korzystać z pyinotify w systemie Linux
W poniższym przykładzie monitoruję wszelkie zmiany w katalogu domowym użytkownika tecmint (/home/tecmint) jako użytkownik root (zalogowany przez ssh), jak pokazano na zrzucie ekranu:
python -m pyinotify -v /home/tecmint
Następnie będziemy obserwować wszelkie zmiany w katalogu internetowym (/var/www/html/linux-console.net):
python -m pyinotify -v /var/www/html/linux-console.net
Aby wyjść z programu, po prostu naciśnij [Ctrl+C]
.
Uwaga: po uruchomieniu pyinotify bez określenia katalogu do monitorowania, domyślnie brany jest pod uwagę katalog /tmp
.
Znajdź więcej o Pyinotify na Githubie: https://github.com/seb-m/pyinotify
To wszystko na teraz! W tym artykule pokazaliśmy, jak zainstalować i używać pyinotify, przydatnego modułu Pythona do monitorowania zmian w systemach plików w systemie Linux.
Czy natknąłeś się na podobne moduły Pythona lub powiązane narzędzia/narzędzia systemu Linux? Daj nam znać w komentarzach, być może równie dobrze możesz zadać dowolne pytanie dotyczące tego artykułu.