File monitor (come Filemon di Sysinternal) per Linux?


23

Esiste un monitor di file, simile a FileMon di Sysinternals, per Linux?

Conosco lsof, ma questo mi mostra solo i file che sono stati aperti nel momento in cui l'ho eseguito.



1
File :: Monitor, FAM, Gamin, inotify, ecc. Sono tutti correlati, ma non suonano come quello che chiede Simon. Filemon consente di visualizzare tutte le operazioni sui file sull'intero sistema, mentre File :: Monitor, ecc. Sono più utili per la visualizzazione di eventi su un singolo file o directory AFAIUI.
Mikel,

Risposte:


5

Uno strumento che funziona su Linux in modo simile al software Sysinternals è disponibile qui: http://temasoft.com/products/filemonitor . Si tratta di un monitor di file in tempo reale basato su agente per Windows e Linux che può fornire dettagli pertinenti su varie operazioni sui file, incluso il nome utente e il processo.

Nota: lavoro per l'azienda che sviluppa questo prodotto.

Schermata del prodotto


4

Il sottosistema di controllo può dirti ogni sorta di cose.


1
Compresi tutti i file aperti e i processi responsabili? Esiste una sorta di interfaccia utente per l'audit?
Simon A. Eugster,

audit funziona a livello di kernel, quindi cattura tutto. Probabilmente non esiste un'interfaccia utente per questo. Dovrai utilizzare gli strumenti della riga di comando o creare la tua interfaccia utente.
Ignacio Vazquez-Abrams,

Puoi eseguire query una tantum utilizzando ausearche aureport, ma se desideri tutte le informazioni in tempo reale, devi scrivere il tuo programma. Ulteriori informazioni sono disponibili nella home page dell'audit < people.redhat.com/sgrubb/audit >, ma non è facile.
Mikel,

2
Perché l'equivalente di Linux di tutto è uno strumento da riga di comando che non puoi usare finché non hai letto e riletto diverse manpage?
Pieter,

Perché di solito detto comando è estremamente potente e flessibile, e ti permetterà di "spararti nel piede".
LawrenceC,

3

Ecco un'altra applicazione che fa qualcosa di simile: http://archive09.linux.com/feature/124903 . Si chiama kfsmd.

Ecco un esempio in azione:

$ 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

Sulla riga di comando strace e ltrace possono essere ciò che desideri.


Posso in qualche modo creare strace / ltrace per monitorare tutti i processi disponibili? Finora sono riuscito a ottenere informazioni su un solo processo (-p PID).
Simon A. Eugster,

No, puoi tracciare solo un processo (e i suoi figli, usando -f)
Florian Diesch

2
La tua risposta è senza dettagli e difficile da comprendere appieno. Considera di rivedere la tua risposta per fornire maggiori dettagli. Ad esempio, cosa fanno esattamente questi e come li usi correttamente?
James Mertz,

2

SystemTap fornisce l'infrastruttura di software libero (GPL) per semplificare la raccolta di informazioni sul sistema Linux in esecuzione. Ciò aiuta la diagnosi di una prestazione o di un problema funzionale. SystemTap elimina la necessità per lo sviluppatore di passare attraverso la noiosa e distruttiva strumento, ricompilare, installare e riavviare la sequenza che potrebbe essere altrimenti richiesta per raccogliere dati.

SystemTap fornisce una semplice interfaccia a riga di comando e un linguaggio di scripting per scrivere strumenti per un kernel in esecuzione dal vivo. Pubblichiamo esempi, oltre ad ampliare la libreria di script "tapset" interna per favorire il riutilizzo e l'astrazione.

Tra gli altri strumenti di tracciamento / sondaggio, SystemTap è lo strumento preferito per attività complesse che potrebbero richiedere analisi in tempo reale, risposta online programmabile e accesso simbolico all'intero sistema. SystemTap può anche gestire semplici lavori di tracciamento.

http://sourceware.org/systemtap/


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.