Tutoriel Linux : Utiliser pstree pour voir les processus | video2brain.com
Table des matières:
- Comment utiliser la commande
pstree - Afficher les PID et PGID
- Afficher les arguments de la ligne de commande
- Mise en évidence
- Conclusion
Lorsque vous travaillez sur une machine Linux, vous devrez parfois découvrir les processus en cours d'exécution. Il existe un certain nombre de commandes que vous pouvez utiliser pour rechercher des informations sur les processus en cours d'exécution,
ps
et
top
étant les plus couramment utilisés., nous parlerons de la commande
pstree
. Il est similaire à
ps
, mais au lieu de répertorier les processus en cours d'exécution, il les affiche dans une arborescence. Le format arborescent est un moyen plus pratique d'afficher la hiérarchie des processus et rend la sortie plus attrayante visuellement.
Comment utiliser la commande
pstree
La syntaxe générale de la commande
pstree
est la suivante:
ps
Dans sa forme la plus simple lorsqu'il est invoqué sans aucune option ni argument,
pstree
affiche une structure arborescente hiérarchique de tous les processus en cours d'exécution:
pstree
systemd─┬─VBoxService───7* ├─accounts-daemon───2* ├─2* ├─atd ├─cron ├─dbus-daemon ├─irqbalance───{irqbalance} ├─2* ├─lvmetad ├─lxcfs───2* ├─networkd-dispat───{networkd-dispat} ├─nginx───2*…
L'élément supérieur / racine dans l'arborescence est le processus parent de tous les processus système. Dans cet exemple, c'est
systemd
, qui est le premier processus qui démarre au démarrage.
pstree
fusionne des branches identiques en les mettant entre crochets et en les préfixant avec un entier qui représente le nombre de branches. Cela rend la sortie plus lisible et visuellement attrayante.
Voici un exemple montrant comment les crochets sont utilisés:
├─2*
est identique à:
├─agetty ├─agetty
Pour désactiver la fusion des branches identiques, utilisez l'option
-c
:
pstree -c
Les fils d'un processus sont affichés sous le processus parent et affichés en utilisant le nom du processus entre accolades. Voici un exemple:
├─lxcfs───2*
Utilisez l'option
-t
pour afficher les noms complets des threads. Si vous souhaitez masquer les threads et afficher uniquement les processus, utilisez l'option
-T
.
En règle générale,
pstree
affiche de nombreuses lignes de sortie qui ne tiennent pas sur l'écran. Pour afficher la sortie une page à la fois, dirigez-la vers la commande
less
:
pstree | less
Si un nom d'utilisateur est donné comme argument,
pstree
affiche uniquement les processus appartenant à cet utilisateur. Par exemple, la commande suivante n'affichera que les processus qui ont été démarrés par un utilisateur nommé «linuxize»:
pstree linuxize
Lorsque PID est spécifié comme argument,
pstree
affiche un arbre avec le processus donné comme racine de l'arbre. Voici un exemple:
pstree 1943
sshd───bash───pstree
Pour afficher les processus parents du processus donné, utilisez l'option
-s
suivie du processus PID:
pstree -s 1943
systemd───sshd───sshd───bash───pstree
Afficher les PID et PGID
Habituellement, lors de l'exécution de la commande
pstree
, les informations les plus importantes que l'utilisateur recherche sont l'ID de processus. Par exemple, connaître le PID vous permet de tuer un processus défectueux.
L'option
-p
demande à
pstree
d'afficher les PID:
pstree -p
Les PID sont affichés entre parenthèses après chaque processus ou thread.
systemd(1)─┬─VBoxService(955)─┬─{VBoxService}(956) │ ├─{VBoxService}(957) │ ├─{VBoxService}(958) │ ├─{VBoxService}(959) │ ├─{VBoxService}(960) │ ├─{VBoxService}(961) │ └─{VBoxService}(962)…
Par défaut,
pstree
, trie les processus avec le même parent par nom. L'option
-n
indique à
pstree
d'utiliser un tri numérique, c'est-à-dire un tri par PID:
pstree -pn
L'ID de groupe de processus ou PGID est l'ID de processus du premier membre du groupe de processus. Pour afficher les PGID, utilisez l'option
-g
:
pstree -g
Les PID sont également affichés entre parenthèses après chaque processus ou thread.
systemd(1)─┬─VBoxService(954)─┬─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ ├─{VBoxService}(954) │ └─{VBoxService}(954)…
Lorsque les PID ou PGID sont affichés, la fusion est implicitement désactivée.
Afficher les arguments de la ligne de commande
Certains programmes peuvent être appelés avec des options de configuration spécifiées comme arguments de ligne de commande.
Par défaut, le
pstree
ne vous montre pas les arguments de ligne de commande pour les processus en cours d'exécution. Pour voir comment le processus a été démarré, utilisez la commande avec l'option
-a
:
pstree -a
… ├─agetty -o -p -- \\u --keep-baud 115200, 38400, 9600 ttyS0 vt220 ├─agetty -o -p -- \\u --noclear tty1 linux…
Mise en évidence
pstree
vous permet également de mettre en évidence les processus pour une meilleure représentation visuelle.
L'option
-h
demande à
pstree
de mettre en évidence le processus en cours et tous ses ancêtres.
pstree -h
Pour mettre en évidence un processus spécifique, utilisez l'option
-H
suivie de l'ID du processus:
pstree -H PID_NUMBER
Si la mise en surbrillance n'est pas prise en charge, la commande se termine avec une erreur.
Conclusion
La commande
pstree
affiche les processus en cours sous la forme d'une structure arborescente.
Pour plus d'informations sur toutes les options
pstree
disponibles, tapez
man pstree
dans votre terminal.
Commande chmod sous linux (autorisations de fichiers)
Sous Linux, l'accès aux fichiers est géré via les autorisations, les attributs et la propriété des fichiers. Ce didacticiel explique comment utiliser la commande chmod pour modifier les autorisations d'accès aux fichiers et aux répertoires.
Commande chgrp sous linux (changement de groupe)
Sous Linux, chaque fichier est associé à un propriétaire et à un groupe et dispose d'autorisations qui déterminent quels utilisateurs peuvent lire, écrire ou exécuter le fichier. La commande chgrpc change la propriété du groupe des fichiers donnés.
Commande cp sous linux (copier des fichiers)
cp est un utilitaire de ligne de commande pour copier des fichiers et des répertoires sur les systèmes Unix et Linux.







