Pyinotify: supervisa els canvis del sistema de fitxers en temps real a Linux


Pyinotify és un mòdul Python senzill però útil per supervisar els canvis dels sistemes de fitxers en temps real a Linux.

Com a administrador del sistema, podeu utilitzar-lo per supervisar els canvis que es produeixen a un directori d'interès, com ara un directori web o un directori d'emmagatzematge de dades d'aplicacions i més enllà.

Depèn d'inotify (una característica del nucli de Linux incorporada al nucli 2.6.13), que és un notificador basat en esdeveniments, les seves notificacions s'exporten de l'espai del nucli a l'espai d'usuari mitjançant tres trucades al sistema.

El propòsit de pyinotiy és vincular les tres trucades al sistema i donar suport a una implementació a sobre d'elles proporcionant un mitjà comú i abstracte per manipular aquestes funcionalitats.

En aquest article, us mostrarem com instal·lar i utilitzar pyinotify a Linux per supervisar els canvis o modificacions del sistema de fitxers en temps real.

Per utilitzar pyinotify, el vostre sistema ha d'estar executant:

  1. Nucli de Linux 2.6.13 o superior
  2. Python 2.4 o superior

Com instal·lar Pyinotify a Linux

Primer comenceu comprovant les versions del nucli i Python instal·lades al vostre sistema de la següent manera:

# uname -r 
# python -V

Un cop es compleixin les dependències, utilitzarem pip per instal·lar pynotify. A la majoria de distribucions de Linux, Pip ja està instal·lat si utilitzeu Python 2 >=2.7.9 o Python 3 >=3.4 binaris baixats de python.org, en cas contrari, instal·leu-lo de la següent manera:

# yum install python-pip      [On CentOS based Distros]
# apt-get install python-pip  [On Debian based Distros]
# dnf install python-pip      [On Fedora 22+]

Ara, instal·leu pyinotify així:

# pip install pyinotify

Instal·larà la versió disponible des del dipòsit predeterminat, si voleu tenir una darrera versió estable de pyinotify, considereu clonar-ne el dipòsit git tal com es mostra.

# git clone https://github.com/seb-m/pyinotify.git
# cd pyinotify/
# ls
# python setup.py install

Com utilitzar pyinotify a Linux

A l'exemple següent, estic supervisant qualsevol canvi al directori d'inici de l'usuari tecmint (/home/tecmint) com a usuari root (iniciat sessió mitjançant ssh), tal com es mostra a la captura de pantalla:

# python -m pyinotify -v /home/tecmint

A continuació, estarem atents a qualsevol canvi al directori web (/var/www/html/linux-console.net):

# python -m pyinotify -v /var/www/html/linux-console.net

Per sortir del programa, simplement premeu [Ctrl+C].

Nota: quan executeu pyinotify sense especificar cap directori per supervisar, el directori /tmp es considera per defecte.

Trobeu més informació sobre Pyinotify a Github: https://github.com/seb-m/pyinotify

Això és tot per ara! En aquest article, us vam mostrar com instal·lar i utilitzar pyinotify, un mòdul Python útil per supervisar els canvis dels sistemes de fitxers a Linux.

Us heu trobat amb mòduls Python similars o eines/utilitats relacionades amb Linux? Feu-nos-ho saber als comentaris, potser també podeu fer qualsevol pregunta en relació a aquest article.