Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
O monitoramento de arquivos é uma tarefa essencial para administradores de sistemas e desenvolvedores que precisam acompanhar alterações em arquivos e diretórios. No ambiente Linux, uma das ferramentas mais eficazes para realizar essa tarefa é o inotify
, uma interface do kernel que permite monitorar eventos do sistema de arquivos.
Exemplos:
Instalando o Inotify Tools:
Para utilizar o inotify
, você pode instalar o pacote inotify-tools
, que fornece utilitários de linha de comando para interagir com o inotify.
sudo apt-get update
sudo apt-get install inotify-tools
Monitorando um Diretório:
Após a instalação, você pode usar o comando inotifywait
para monitorar um diretório. Por exemplo, para monitorar o diretório /home/user/documents
para qualquer criação, exclusão ou modificação de arquivos, execute:
inotifywait -m /home/user/documents
O parâmetro -m
faz com que o inotifywait
continue rodando, monitorando continuamente o diretório.
Filtrando Eventos Específicos:
Você pode especificar quais eventos deseja monitorar. Por exemplo, para monitorar apenas a criação de novos arquivos:
inotifywait -m -e create /home/user/documents
Usando um Script para Ações Automáticas:
É possível integrar o inotify
com scripts shell para executar ações automáticas quando eventos específicos ocorrem. Aqui está um exemplo de script que monitora um diretório e faz backup de qualquer arquivo novo criado:
#!/bin/bash
MONITORED_DIR="/home/user/documents"
BACKUP_DIR="/home/user/backup"
inotifywait -m -e create "$MONITORED_DIR" --format '%w%f' | while read NEWFILE
do
cp "$NEWFILE" "$BACKUP_DIR"
echo "Backup realizado para $NEWFILE"
done
Salve este script em um arquivo, por exemplo, monitor.sh
, e execute-o com:
bash monitor.sh
Monitorando Múltiplos Eventos:
Para monitorar múltiplos tipos de eventos, você pode combiná-los. Por exemplo, para monitorar criação, exclusão e modificação de arquivos:
inotifywait -m -e create -e delete -e modify /home/user/documents