Dentro de los diversos roles de soporte o gestión de infraestructura de IT es vital llevar un control sobre todos los cambios que ocurren dentro de los sistemas operativos ejecutados ya que de allí depende una óptima organización y administración de toda la seguridad y accesibilidad a la información.
Dentro de los entornos Linux es muy importante saber cuándo y de qué manera han sucedido cambios dentro de los directorios del sistema ya que de allí depende gestionar toda la estructura de datos y conocer en detalle qué cambios pueden afectar el normal funcionamiento de la organización.
Desde la versión 2.6.13 de Linux se incorporó una funcionalidad de seguridad llamada inotify la cual permite que un programa de monitorización del sistema abra un único descriptor de archivos y allí tengamos acceso a los eventos que ocurren en un directorio o archivo y de este modo llevar un control centralizado sobre estos.
Gracias a inotify se pueden tener acceso a atributos sobre los directorios como open, créate, close, move/rename, delete, change, entre otros.
Pyinotify ha sido desarrollado para mejorar aún más los niveles de administración de estos parámetros y hoy Solvetic analizara como configurarlo en un entorno Ubuntu 16.10. Dentro del tutorial también encontrarás el videotutorial explicándolo todo.
- Variables: Contienen objetos Python
- Señales: Son básicamente listas de manejadores los cuales son activados al momento de emitirse una señal.
- Condiciones: Estas son variables booleanas ligadas a una señal que se emite cuando su estado cambia.
- Linux kernel 2.6.13 o superior
- Python 2.4 o superior
uname -r (Versión del kernel) python -V (Versión de Python)
1. Cómo instalar y ejecutar Pyinotify en Linux
Para instalar la aplicación haremos uso de pip y para ello ejecutaremos los siguientes comandos dependiendo de la distro de Linux usada:
sudo yum install python-pip
sudo apt install python-pip
sudo dnf install python-pip
Aceptamos la descarga y respectiva instalación de pyinotify en, este caso, Ubuntu 16.10. Ahora ejecutamos el siguiente comando para la instalación de la aplicación:
sudo pip install pyinotify
Allí instalaremos la aplicación más reciente en el repositorio. En caso de desear contar con la versión más reciente de Pyinotify ejecutaremos los siguientes comandos en su orden:
git clone https://github.com/seb-m/pyinotify.git cd pyinotify/ ls python setup.py install
2. Cómo usar Pyinotify en Ubuntu 16.10
Para usar pyinotify en el monitoreo de un determinado directorio ejecutaremos el siguiente comando:
python -m pyinotify -v /home/Solvetic
Con esto analizaremos los cambios en el directorio /home.
Hemos creado una nueva carpeta en /home llamada Prueba y podemos ver como en tiempo real pyinotify detecta el cambio y lo registra con su respectivo evento:
Podemos ver que la estructura de pyinotify es:
- Fecha y hora del evento.
- Tamaño del evento.
- Tipo de evento.
- Ruta donde ocurrió el evento.
Para salir del monitoreo de pyinotify usaremos la combinación de teclas siguiente. Si no especificamos un directorio a analizar la herramienta usara el directorio /tmp por defecto.
Ctrl + C
Para que te sea aún más fácil conseguir monitorizar tu sistema Ubuntu de Linux, aquí tienes el videotutorial donde se explica todo.
Pyinotify es una valiosa herramienta como administradores que nos permitirá llevar un control específico sobre los eventos ocurridos en tiempo real en un directorio en Linux y de esta manera conocer en detalle qué tipo de evento ocurrió y tomar las medidas necesarias. Te dejamos otra alternativa para poder monitorizar todo lo que ocurre en tu equipo Ubuntu de Linux: