GNU/Linux >> Tutoriels Linux >  >> Linux

Suivre l'activité Syscall sous Linux avec Process Monitor (Procmon)

Microsoft a fait un travail louable au profit de Linux et de l'open source ces dernières années maintenant. Ils ont ouvert de nombreuses applications, telles que VSCode, .NET, Teams, le navigateur Edge, etc. Un ajout récent à la liste est Process Monitor . Moniteur de processus, sous peu Procmon , permet à un développeur de suivre facilement et facilement l'activité des appels système dans les systèmes Linux.

Process Monitor est une réinvention Linux de l'outil Procmon classique de la suite Sysinternals d'outils pour Windows. La suite Sysinternals comprend plusieurs outils pour gérer, diagnostiquer, dépanner et surveiller un système Microsoft Windows. Process Monitor fait partie de la suite Sysinternals.

Process Monitor est un outil de surveillance avancé pour Windows qui affiche en temps réel le système de fichiers, le registre et l'activité des processus/threads. Il surveille le système de fichiers, le registre, les processus, les threads et l'activité DLL en temps réel dans les systèmes d'exploitation Windows.

Bien sûr, Linux dispose d'un utilitaire de ligne de commande natif nommé Strace pour tracer les appels système et les signaux. Strace est cool mais les vues Procmon étaient toujours plus propres et plus agréables à mon avis.

Microsoft a publié Procmon pour Linux il y a plusieurs mois. Procmon est écrit en C++ et son code source est disponible gratuitement sur GitHub.

Installer Process Monitor sous Linux

Assurez-vous d'avoir ajouté le dépôt de logiciels Linux de Microsoft dans votre système Linux. Par exemple, exécutez les commandes suivantes pour ajouter le référentiel Microsoft Linux sur 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

Après avoir activé le référentiel Microsoft, exécutez la commande suivante pour installer Procmon sur Ubuntu :

$ sudo apt install procmon

Sur les autres distributions Linux, remplacez apt avec le gestionnaire de paquets de votre distribution. Par exemple, vous pouvez installer Procmon dans Fedora, RHEL en utilisant la commande :

$ sudo dnf install procmon

Tracer l'activité Syscall sous Linux avec Process Monitor

Pour tracer tous les processus et appels système sur votre système Linux, lancez Process Monitor en tant que sudo ou root utilisateur sans aucune option :

$ sudo procmon

Exemple de résultat :

Pour afficher les propriétés d'événement de n'importe quel processus, sélectionnez-le et appuyez sur la touche ENTRÉE.

Vous pouvez utiliser les touches de fonctions F1 à F9 pour effectuer diverses tâches, telles que l'affichage de l'aide, le tri des processus, la recherche, le filtrage, l'exportation, l'affichage des statistiques, etc. Par exemple, appuyez sur F8 pour afficher les statistiques des 10 principaux appels système. Pour quitter Process Monitor, appuyez sur q ou F9 clé.

À l'heure actuelle, Procmon pour Linux ne contient qu'un ensemble limité de fonctionnalités. En fait, cela ressemble à une fraction de ce que fait le moniteur de processus sur Windows. Si Procmon peut être aussi complet que sous Windows, il serait plus utile aux développeurs Linux. Pour plus de détails, consultez la page GitHub du projet.


Linux
  1. Surveillez votre système Linux dans votre terminal avec procps-ng

  2. Comment surveiller l'activité Ethernet sous Linux à l'aide d'Arpwatch

  3. Comment surveiller l'activité des utilisateurs sous Linux

  4. Pourquoi exécuter une commande shell Linux avec '&' ?

  5. Process Monitor équivalent pour Linux ?

La commande Wait sous Linux expliquée avec des exemples

Gestion des processus Linux améliorée avec htop

Htop - Un moniteur de système Linux interactif / visualiseur de processus

Surveiller la tâche Linux avec SysMonTask

Comment surveiller vos serveurs Linux avec Checkmk

Comment suivre et tracer un processus Linux