Pesquisa de site

Pyinotify - Monitore alterações no sistema de arquivos em tempo real no Linux


Pyinotify é um módulo Python simples, mas útil para monitorar mudanças em sistemas de arquivos em tempo real no Linux.

Como administrador do sistema, você pode usá-lo para monitorar alterações que ocorrem em um diretório de interesse, como diretório da web ou diretório de armazenamento de dados de aplicativos e muito mais.

Leitura sugerida: fswatch – Monitora alterações ou modificações em arquivos e diretórios no Linux

Depende do inotify (um recurso do kernel Linux incorporado no kernel 2.6.13), que é um notificador orientado a eventos, suas notificações são exportadas do espaço do kernel para o espaço do usuário por meio de três chamadas de sistema.

O objetivo do pyinotiy é vincular as três chamadas do sistema e suportar uma implementação sobre elas, fornecendo um meio comum e abstrato para manipular essas funcionalidades.

Neste artigo, mostraremos como instalar e usar o pyinotify no Linux para monitorar alterações ou modificações no sistema de arquivos em tempo real.

Dependências

Para usar o pyinotify, seu sistema deve estar executando:

  1. Kernel Linux 2.6.13 ou superior
  2. Python 2.4 ou superior

Como instalar o Pyinotify no Linux

Primeiro comece verificando as versões do kernel e do Python instaladas em seu sistema da seguinte forma:

uname -r 
python -V

Assim que as dependências forem atendidas, usaremos pip para instalar o pynotify. Na maioria das distribuições Linux, o Pip já está instalado se você estiver usando os binários Python 2 >=2.7.9 ou Python 3 >=3.4 baixados em python.org, caso contrário, instale-o da seguinte maneira:

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

Agora, instale o pyinotify assim:

pip install pyinotify

Ele instalará a versão disponível do repositório padrão. Se você deseja ter uma versão estável mais recente do pyinotify, considere clonar seu repositório git conforme mostrado.

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

Como usar o pyinotify no Linux

No exemplo abaixo, estou monitorando quaisquer alterações no diretório inicial do usuário tecmint (/home/tecmint) como usuário root (logado via ssh), conforme mostrado na captura de tela:

python -m pyinotify -v /home/tecmint

A seguir, ficaremos atentos a quaisquer alterações no diretório web (/var/www/html/linux-console.net):

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

Para sair do programa, basta pressionar [Ctrl+C].

Nota: Quando você executa pyinotify sem especificar nenhum diretório para monitorar, o diretório /tmp é considerado por padrão .

Encontre mais sobre Pyinotify no Github: https://github.com/seb-m/pyinotify

É tudo por agora! Neste artigo, mostramos como instalar e usar o pyinotify, um módulo Python útil para monitorar alterações nos sistemas de arquivos no Linux.

Você encontrou algum módulo Python semelhante ou ferramentas/utilitários Linux relacionados? Deixe-nos saber nos comentários, talvez você também possa fazer qualquer pergunta em relação a este artigo.