Este tutorial superará como implementar um script simples que usa Python e Linux Inotify API para monitorar as alterações em um diretório específico e registrar as alterações do console.
Antes de chegarmos ao script, discutimos brevemente como o Inotify funciona.
O que é inotificar? Como funciona?
O Inotify é um subsistema de kernel que fornece o mecanismo para monitorar os eventos dentro do sistema de arquivos e relatá -los a vários aplicativos que os exigem. O inotificar é incrivelmente poderoso porque funciona nos níveis mais baixos do kernel e é personalizável para expandir a funcionalidade. A inotificar pode monitorar alterações nos diretórios e arquivos individuais.
Embora o inotificar seja poderoso, ele tem algumas limitações. Essas limitações incluem:
No entanto, o Inotify ainda é uma escolha muito melhor do que o Dnotify, seu antecessor. A inotificar é altamente aplicável em aplicativos de segurança como antivírus.
Agora que temos a teoria básica do INOTIFITY Fora do caminho, vamos mergulhar na construção do script que nos ajudará a monitorar mudanças de diretório.
Instalando Python e Watchdog
Antes de mergulhar no código, vamos configurar alguns requisitos, como a instalação do Python e o pacote de Watchdog.
Para instalar o Python3 no Debian, use o comando apt como:
Atualização de sudo apt-get
sudo apt-get install python3.7 python3 -pip -y
Para instalar o pacote Watchdog, use o comando pip3, como mostrado abaixo:
https: // pypi.org/project/watchdog/
sudo pip3 install watchdog
Escrevendo o script
O script que criaremos neste tutorial é muito simples. Considere o código -fonte mostrado abaixo:
Importar sistemasComeçamos importando os módulos necessários, incluindo Watchdog. Em seguida, criamos uma função de monitor simples e definimos a configuração, como o formato de saída e a data. Em seguida, definimos os argumentos do caminho do diretório.
Em seguida, nos movemos para criar um objeto observador e configurá -lo para monitorar recursivamente as alterações no diretório especificado, a menos que uma interrupção do teclado seja encontrada (Ctrl + C)
Finalmente, chamamos a função e executamos o script. Você obterá uma saída como mostrado abaixo:
Conclusão
Usando este tutorial, criamos um script simples que monitora as mudanças em um diretório e as registra constantemente no console.