GNU/Linux >> Tutoriels Linux >  >> Linux

Process Monitor équivalent pour Linux ?

Le grand-père de tous les moniteurs de processus est top , et de nombreux outils de surveillance du système sont appelés top . Par exemple, il y a iotop pour surveiller les E/S disque, atop pour un tas de ressources système, powertop pour la consommation d'énergie.

Si vous souhaitez des informations plus détaillées, elles ne sont pas suivies par défaut. Pour observer ce qu'est un processus particulier est en train de faire, appelez le strace dessus. Par exemple, si vous n'êtes intéressé que par les accès au système de fichiers :

strace -s9999 -efile command_name    # trace a program during its whole execution
strace -s9999 -efile -p1234          # trace a running program with the given PID

strace est spécifique à Linux, mais d'autres systèmes ont un outil similaire :truss sur Solaris, ktrace ou dtrace sous *BSD, etc.

Pour voir ce qui se passe dans un fichier particulier ou dans un répertoire particulier ou une arborescence de répertoires, utilisez la fonction inotify.

inotifywait -m .

Encore une fois, l'installation est spécifique à Linux, mais la plupart des autres unices ont un système similaire, par ex. kqueue sous *BSD et FAM (à l'origine de SGI mais maintenant disponible en tant qu'API sur de nombreux systèmes).

Pour regarder tous les appels système sous Linux, vous pouvez utiliser le sous-système d'audit. C'est relativement récent et il n'y a pas beaucoup de littérature sur le sujet; rechercher auditctl ou lire le auditctl page de manuel. Il y a quelques exemples sur ce site :suivi des accès aux fichiers, suivi de l'exécution des processus.


La console en attente pour cela est top , mais il existe des alternatives comme mon htop préféré qui vous donnent un peu plus de flexibilité d'affichage et vous permettent quelques opérations supplémentaires sur les processus.

Une vue moins interactive qui convient mieux à une utilisation dans les scripts serait le ps programme et tous ses proches.

Modifier : Sur la base de votre question clarifiée, vous remarquerez peut-être que strace gère la surveillance des appels système effectués par un processus donné, y compris toutes les opérations de lecture-écriture et les appels de fonction os. Vous pouvez l'activer sur la ligne de commande avant le programme que vous souhaitez suivre ou attacher à un processus en cours d'exécution en appuyant sur s sur un processus sélectionné en htop .


Vous voudrez peut-être jeter un œil à lsof et strace . Process Monitor de Sysinternal est en fait Filemon et Regmon combinés avec quelques améliorations supplémentaires. Le top La commande ressemble plus à Process Explorer.


Linux
  1. 8 commandes Linux pour une gestion efficace des processus

  2. Linux Command Basics :7 commandes pour la gestion des processus

  3. 30 exercices de processus Linux pour les administrateurs système

  4. Linux - Limiter l'utilisation de la mémoire pour un seul processus Linux ?

  5. Irfanview équivalent le plus proche pour Linux

25 meilleurs exemples de commandes pour surveiller les performances du serveur Linux

30 meilleurs exemples de commandes pour la surveillance sous Linux

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

Commandes pour la gestion des processus sous Linux

Équivalent à Sysinternals Process Explorer sous Linux

Bon moniteur de processus léger basé sur une interface graphique pour Linux