Pyinotify - Monitorea los cambios del sistema de archivos en tiempo real en Linux


Pyinotify es un módulo de Python simple pero útil para monitorear los cambios de los sistemas de archivos en tiempo real en Linux.

Como administrador del sistema, puede usarlo para monitorear los cambios que ocurren en un directorio de interés, como el directorio web o el directorio de almacenamiento de datos de la aplicación y más.

Depende de inotify (una característica del kernel de Linux incorporada en el kernel 2.6.13), que es un notificador controlado por eventos, sus notificaciones se exportan desde el espacio del kernel al espacio del usuario a través de tres llamadas al sistema.

El propósito de pyinotiy es vincular las tres llamadas al sistema, y ​​respaldar una implementación sobre ellas proporcionando un medio común y abstracto para manipular esas funcionalidades.

En este artículo, le mostraremos cómo instalar y usar pyinotify en Linux para monitorear los cambios o modificaciones del sistema de archivos en tiempo real.

Para utilizar pyinotify , su sistema debe estar ejecutándose:

  1. Linux kernel 2.6.13 or higher
  2. Python 2.4 or higher

Cómo instalar Pyinotify en Linux

Primero comience verificando las versiones del kernel y Python instaladas en su sistema de la siguiente manera:

# uname -r 
# python -V

Una vez que se cumplan las dependencias, usaremos pip para instalar pynotify . En la mayoría de las distribuciones de Linux, Pip ya está instalado si está utilizando Python 2 & gt; = 2.7.9 o Python 3 & gt; = 3.4 binarios descargados de python.org; de lo contrario, instálelo de la siguiente 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+]

Ahora, instale pyinotify así:

# pip install pyinotify

Instalará la versión disponible desde el repositorio predeterminado, si está buscando tener una versión estable más reciente de pyinotify , considere la posibilidad de clonar el repositorio git como se muestra.

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

Cómo usar pyinotify en Linux

En el siguiente ejemplo, estoy monitoreando cualquier cambio en el directorio de inicio de tecmint del usuario (/home/tecmint ) como usuario root (registrado a través de ssh) como se muestra en la captura de pantalla:

# python -m pyinotify -v /home/tecmint

A continuación, haremos un seguimiento de cualquier cambio en el directorio web ( /var/www/html/tecmint.com ):

# python -m pyinotify -v /var/www/html/tecmint.com

Para salir del programa, simplemente presione [Ctrl + C] .

rojo

Encuentre más sobre Pyinotify en Github: https://github.com/seb-m/pyinotify

¡Eso es todo por ahora! En este artículo, le mostramos cómo instalar y usar pyinotify, un módulo útil de Python para monitorear los cambios de los sistemas de archivos en Linux.

¿Ha encontrado algún módulo Python similar o herramientas/utilidades relacionadas con Linux? Háganos saber en los comentarios, quizás también pueda hacer cualquier pregunta en relación con este artículo.