Monitor de arquivos (como o Filemon da Sysinternal) para Linux?


23

Existe um monitor de arquivo, semelhante ao FileMon da Sysinternals, para Linux?

Eu sei sobre lsof, mas isso só mostra os arquivos que foram abertos no momento em que eu o executei.



1
File :: Monitor, FAM, Gamin, inotify, etc. estão todos relacionados, mas não parecem o que o Simon está pedindo. O Filemon permite que você veja todas as operações de arquivos em todo o sistema, enquanto o File :: Monitor, etc, é mais para assistir a eventos de arquivos em um único arquivo ou diretório AFAIUI.
24910 Mikel

Respostas:


5

Uma ferramenta que funciona no Linux de maneira semelhante ao software Sysinternals pode ser encontrada aqui: http://temasoft.com/products/filemonitor . É um monitor de arquivo em tempo real, baseado em agente, para Windows e Linux, que pode fornecer detalhes relevantes sobre várias operações de arquivo, incluindo o nome do usuário e o processo.

Nota: Eu trabalho para a empresa que desenvolve este produto.

Captura de tela do produto


4

O subsistema de auditoria pode dizer todos os tipos de coisas.


1
Incluindo todos os arquivos abertos e os processos responsáveis? Existe algum tipo de interface do usuário para auditoria?
9788 Simon's Eugster

A auditoria funciona no nível do kernel, por isso captura tudo. Provavelmente não existe uma interface de usuário para isso. Você precisará usar as ferramentas de linha de comando ou criar sua própria interface de usuário.
Ignacio Vazquez-Abrams

Você pode fazer consultas pontuais usando ausearche aureport, mas se quiser todas as informações em tempo real, precisará escrever seu próprio programa. Há mais informações na página inicial da auditoria < people.redhat.com/sgrubb/audit >, mas não é fácil de fazer.
24910 Mikel

2
Por que o Linux é equivalente a tudo uma ferramenta de linha de comando que você não pode usar até ler e reler várias páginas de manual?
Pieter

Porque geralmente o comando é extremamente poderoso e flexível e permite que você "atire no próprio pé".
21730 LawrenceC

3

Aqui está outro aplicativo que faz algo relacionado: http://archive09.linux.com/feature/124903 . Chama-se kfsmd.

Aqui está um exemplo disso em ação:

$ mkdir /tmp/k
$ cd /tmp/k
$ date > df1.txt
$ date > df2.txt
$ kernel-filesystem-monitor-daemon-cat -v  watch .
setting up watch for:.
setting up watches
calling run
event on wd:1 . filename:df5.txt
CLOSE  URL:./df5.txt
event on wd:1 . filename:df5.txt
DELETE_FILE  URL:./df5.txt

2

Na linha de comando, strace e ltrace podem ser o que você deseja.


Posso de alguma forma criar strace / ltrace para monitorar todos os processos disponíveis? Até agora, só consegui obter informações sobre um processo (-p PID).
9788 Simon's Eugster

Não, você só pode rastrear um processo (e seus filhos, usando -f)
Florian Diesch

2
Sua resposta é sem detalhes e difícil de entender completamente. Por favor, considere revisar sua resposta para fornecer mais detalhes. Por exemplo, o que eles fazem exatamente e como você os usa corretamente?
James Mertz

2

O SystemTap fornece infraestrutura de software livre (GPL) para simplificar a coleta de informações sobre o sistema Linux em execução. Isso auxilia no diagnóstico de um desempenho ou problema funcional. O SystemTap elimina a necessidade de o desenvolvedor passar pela sequência tediosa e disruptiva, recompilar, instalar e reiniciar a sequência que, de outra forma, seria necessária para coletar dados.

O SystemTap fornece uma interface simples de linha de comando e linguagem de script para escrever instrumentação para um kernel em execução ao vivo. Estamos publicando amostras, bem como ampliando a biblioteca de scripts "tapset" interna para ajudar na reutilização e abstração.

Entre outras ferramentas de rastreamento / sondagem, o SystemTap é a ferramenta escolhida para tarefas complexas que podem exigir análise ao vivo, resposta on-line programável e acesso simbólico ao sistema inteiro. O SystemTap também pode lidar com tarefas simples de rastreamento.

http://sourceware.org/systemtap/


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.