Estou procurando um método simples que registre as operações do sistema de arquivos. Ele deve exibir o nome do arquivo que está sendo acessado ou modificado.
Eu estou familiarizado com o powertop, e parece que isso funciona até certo ponto, tanto que mostra os arquivos do usuário que foram gravados. Existem outros utilitários que suportam esse recurso.
Algumas das minhas descobertas:
powertop : melhor para o log de acesso de gravação, mas mais focado na atividade da CPU
iotop : mostra o acesso ao disco em tempo real por processo, mas não o nome do arquivo
lsof : mostra os arquivos abertos por processo, mas não o acesso ao arquivo em tempo real
iostat : mostra o tempo real / O desempenho do disco / matrizes, mas não indica arquivo ou processo
fanotify
é uma nova estrutura de notificação do sistema de arquivos no kernel do Linux (adicionada recentemente por volta de 2012). Você pode verificar isso. As ferramentas e utilitários que o utilizam ainda estão sendo gravados, portanto você pode ter que escrever um, mas é muito mais robusto do que inotificar, famin ou qualquer outra coisa que você já tenha visto até agora.fatrace
a partir daqui .nmbd
nostrace
comando fornecido ?Outra opção é http://linux.die.net/man/7/inotify, onde muitas distribuições fornecem "inotify-tools" para que você possa observar um caminho via
fonte
Recentemente me deparei com o fatrace, que usa o fanotify . Funciona bonito, então eu pensei em compartilhar. Ele registra todos os tipos de operações de arquivo, incluindo abrir / criar / modificar para stdout ou, opcionalmente, um arquivo e você pode até filtrar para obter apenas alguns tipos de operações. Por padrão, ele monitora todas as montagens, exceto as virtuais. O próprio autor explica bem aqui.
fonte
Para registro (em vez de monitoramento), você deve considerar o uso do daemon de auditoria Linux, introduzido no kernel 2.6.
fonte
fonte