GNU/Linux >> Linux Esercitazione >  >> Linux

Traccia l'attività di Syscall in Linux con Process Monitor (Procmon)

Negli ultimi anni Microsoft ha svolto un lavoro lodevole a vantaggio sia di Linux che dell'open source. Hanno aperto molte applicazioni, come VSCode, .NET, Teams, browser Edge, ecc. Una recente aggiunta all'elenco è Monitoraggio processo . Process Monitor, a breve Procmon , consente a uno sviluppatore di tracciare comodamente e facilmente l'attività di syscall nei sistemi Linux.

Process Monitor è una rivisitazione Linux del classico strumento Procmon della suite Sysinternals di strumenti per Windows. La suite Sysinternals comprende diversi strumenti per gestire, diagnosticare, risolvere i problemi e monitorare un sistema Microsoft Windows. Process Monitor fa parte della suite Sysinternals.

Process Monitor è uno strumento di monitoraggio avanzato per Windows che mostra in tempo reale il file system, il registro e l'attività di processo/thread. Monitora l'attività di file system, registro, processo, thread e DLL in tempo reale nei sistemi operativi Windows.

Naturalmente, Linux ha un'utilità della riga di comando nativa denominata Strace per tracciare le chiamate e i segnali di sistema. Strace è interessante, ma secondo me le visualizzazioni di Procmon sono sempre state più pulite e più belle.

Microsoft ha rilasciato Procmon per Linux diversi mesi fa. Procmon è scritto in C++ e il suo codice sorgente è disponibile gratuitamente in GitHub.

Installa Process Monitor in Linux

Assicurati di aver aggiunto il repository software Linux di Microsoft nel tuo sistema Linux. Ad esempio, esegui i seguenti comandi per aggiungere il repository Microsoft Linux su Ubuntu Linux:

$ wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
$ sudo apt update

Dopo aver abilitato il repository Microsoft, esegui il seguente comando per installare Procmon su Ubuntu:

$ sudo apt install procmon

Su altre distribuzioni Linux, sostituisci apt con il gestore di pacchetti della tua distribuzione. Ad esempio, puoi installare Procmon in Fedora, RHEL usando il comando:

$ sudo dnf install procmon

Traccia l'attività Syscall in Linux con Process Monitor

Per tracciare tutti i processi e le syscall sul tuo sistema Linux, avvia Process Monitor come sudo o root utente senza alcuna opzione:

$ sudo procmon

Risultato di esempio:

Per visualizzare le proprietà dell'evento di qualsiasi processo, selezionalo e premi il tasto INVIO.

Puoi utilizzare i tasti funzione F1 su F9 per eseguire varie attività, come visualizzare la guida, ordinare processi, cercare, filtrare, esportare, visualizzare statistiche ecc. Ad esempio, premi F8 per visualizzare le prime 10 statistiche di syscall. Per uscire da Process Monitor, premere q o F9 chiave.

Al momento Procmon per Linux contiene solo un set limitato di funzionalità. In effetti, sembra una frazione di ciò che monitor di processo fa su Windows. Se Procmon può essere completo come lo è sotto Windows, sarebbe più utile per gli sviluppatori Linux. Per maggiori dettagli, fare riferimento alla pagina GitHub del progetto.


Linux
  1. Monitora il tuo sistema Linux nel tuo terminale con procps-ng

  2. Come monitorare l'attività Ethernet in Linux utilizzando Arpwatch

  3. Come monitorare l'attività dell'utente in Linux

  4. Come monitorare la sicurezza del server Linux con Osquery

  5. Equivalente di Process Monitor per Linux?

Comando Wait in Linux spiegato con esempi

Gestione dei processi Linux migliorata con htop

Htop – Un monitor/visualizzatore di processi interattivo di sistema Linux

Monitora attività Linux con SysMonTask

Come monitorare i tuoi server Linux con Checkmk

Come tracciare e tracciare un processo Linux