GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verfolgen Sie die Syscall-Aktivität in Linux mit Process Monitor (Procmon)

Microsoft hat in den letzten Jahren lobenswerte Arbeit zum Wohle von Linux und Open Source geleistet. Sie haben viele Anwendungen wie VSCode, .NET, Teams, Edge-Browser usw. als Open Source bereitgestellt. Eine neue Ergänzung der Liste ist Process Monitor . Process Monitor, kurz Procmon , ermöglicht es einem Entwickler, Syscall-Aktivitäten in Linux-Systemen bequem und einfach nachzuverfolgen.

Process Monitor ist eine Linux-Neuinterpretation des klassischen Procmon-Tools aus der Sysinternals-Suite von Tools für Windows. Die Sysinternals-Suite besteht aus mehreren Tools zum Verwalten, Diagnostizieren, Beheben und Überwachen eines Microsoft Windows-Systems. Process Monitor ist Teil der Sysinternals-Suite.

Process Monitor ist ein erweitertes Überwachungstool für Windows, das Dateisystem-, Registrierungs- und Prozess-/Thread-Aktivitäten in Echtzeit anzeigt. Es überwacht das Dateisystem, die Registrierung, Prozesse, Threads und DLL-Aktivitäten in Echtzeit in Windows-Betriebssystemen.

Natürlich hat Linux ein natives Befehlszeilenprogramm namens Strace um die Systemaufrufe und -signale zu verfolgen. Strace ist cool, aber die Ansichten von Procmon waren meiner Meinung nach immer sauberer und schöner.

Microsoft hat Procmon vor einigen Monaten für Linux veröffentlicht. Procmon ist in C++ geschrieben und sein Quellcode ist auf GitHub frei verfügbar.

Prozessmonitor unter Linux installieren

Stellen Sie sicher, dass Sie das Linux-Software-Repository von Microsoft hinzugefügt haben in Ihrem Linux-System. Führen Sie beispielsweise die folgenden Befehle aus, um das Microsoft Linux-Repository unter Ubuntu Linux hinzuzufügen:

$ 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

Führen Sie nach dem Aktivieren des Microsoft-Repositorys den folgenden Befehl aus, um Procmon auf Ubuntu zu installieren:

$ sudo apt install procmon

Ersetzen Sie bei anderen Linux-Distributionen apt mit dem Paketmanager Ihrer Distribution. Beispielsweise können Sie Procmon in Fedora, RHEL mit folgendem Befehl installieren:

$ sudo dnf install procmon

Syscall-Aktivität in Linux mit Process Monitor verfolgen

Um alle Prozesse und Systemaufrufe auf Ihrem Linux-System zu verfolgen, starten Sie Process Monitor als sudo oder root Benutzer ohne Optionen:

$ sudo procmon

Beispielausgabe:

Um die Ereigniseigenschaften eines beliebigen Prozesses anzuzeigen, wählen Sie ihn einfach aus und drücken Sie die EINGABETASTE.

Sie können die Funktionstasten F1 verwenden zu F9 um verschiedene Aufgaben auszuführen, wie z. B. Hilfe anzeigen, Prozesse sortieren, suchen, filtern, exportieren, Statistiken anzeigen usw. Drücken Sie beispielsweise F8 um die Top 10 der Syscall-Statistiken anzuzeigen. Um Process Monitor zu beenden, drücken Sie q oder F9 Schlüssel.

Derzeit enthält Procmon für Linux nur eine begrenzte Anzahl von Funktionen. Tatsächlich sieht es aus wie ein Bruchteil dessen, was der Prozessmonitor unter Windows tut. Wenn Procmon so vollständig sein kann wie unter Windows, wäre es für die Linux-Entwickler hilfreicher. Weitere Einzelheiten finden Sie auf der GitHub-Seite des Projekts.


Linux
  1. Überwachen Sie Ihr Linux-System in Ihrem Terminal mit procps-ng

  2. So überwachen Sie die Ethernet-Aktivität unter Linux mit Arpwatch

  3. So überwachen Sie die Benutzeraktivität unter Linux

  4. So überwachen Sie die Sicherheit von Linux-Servern mit Osquery

  5. Warum einen Linux-Shell-Befehl mit '&' ausführen?

Wait-Befehl in Linux anhand von Beispielen erklärt

Linux-Prozessverwaltung mit htop verbessert

Htop – Ein interaktiver Linux-Systemmonitor/Prozessbetrachter

Überwachen Sie die Linux-Aufgabe mit SysMonTask

So überwachen Sie Ihre Linux-Server mit Checkmk

So verfolgen und verfolgen Sie einen Linux-Prozess