accueil > Gestion des processus > ps

Guide de la commande ps : Vérification de l'état des processus

La commande `ps` (process status) est utilisée pour afficher un instantané des processus actuellement en cours d'exécution sur les systèmes d'exploitation Linux et Unix. C'est un outil essentiel pour vérifier quels programmes fonctionnent sur le système et quel est l'état de chaque programme. Grâce à ce guide, apprenez à utiliser les différentes options de la commande `ps` pour interroger et analyser efficacement les informations sur les processus.

Aperçu de ps

La commande `ps` est un outil d'instantané qui montre les informations sur les processus à un moment donné. Contrairement à `top` ou `htop` qui se mettent à jour en temps réel, elle affiche les informations uniquement à l'instant où la commande est exécutée. Cela est utile pour comprendre quelles tâches sont en cours d'exécution sur le système.

Rôle principal de ps

La commande `ps` est principalement utilisée pour les objectifs suivants :

Domaines d'application principaux

  • Vérification des processus en cours: Permet de comprendre quels programmes ou services fonctionnent actuellement sur le système.
  • Recherche de l'ID de processus (PID): Trouver le PID d'un processus spécifique pour l'arrêter ou le contrôler.
  • Vérification de l'état des processus: Vérifier si un processus est en cours d'exécution, en attente, ou en état de zombie.
  • Vérification de l'utilisation du CPU et de la mémoire: Vérifier brièvement les informations sur les ressources utilisées par chaque processus.
  • Débogage de scripts: Vérifier l'état des scripts ou programmes s'exécutant en arrière-plan.

Comprendre les colonnes de sortie de ps

Lors de l'exécution de la commande `ps`, les informations suivantes sont généralement affichées :

Colonnes de sortie principales

  • **PID**: Identifiant de processus. C'est un identifiant unique pour chaque processus.
  • **TTY**: Terminal (tty) sur lequel le processus s'exécute. `?` indique un processus (démon) qui n'est pas connecté à un terminal.
  • **TIME**: Temps total CPU utilisé par le processus.
  • **CMD**: Commande utilisée pour démarrer le processus.
  • **STAT**: Code d'état actuel du processus (ex: `R` - en cours d'exécution, `S` - en sommeil, `Z` - zombie, `D` - sommeil non interrompu, `T` - arrêté, `<` - haute priorité, `N` - basse priorité, `s` - leader de session, `l` - multithread, `+` - fait partie d'un groupe de processus au premier plan).
  • **USER**: Nom de l'utilisateur qui a exécuté le processus.
  • **%CPU**: Taux d'utilisation du CPU par le processus.
  • **%MEM**: Taux d'utilisation de la mémoire physique (RAM) par le processus.
  • **VSZ (Taille de la mémoire virtuelle)**: Quantité totale de mémoire virtuelle utilisée par le processus.
  • **RSS (Taille de l'ensemble résident)**: Quantité réellement résidente en mémoire physique (RAM) du processus.

Principales options de la commande ps

La commande `ps` propose une grande variété d'options, généralement classées en trois styles : style Unix, style BSD et style GNU. Ici, nous abordons les options les plus couramment utilisées.

1. Options de sélection des processus (style BSD/Unix)

2. Options de format de sortie

3. Arbre de processus et threads

Commande générée :

Essayez de combiner les commandes.

Description:

`ps` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Apprenez à interroger et analyser efficacement l'état des processus du système à travers divers exemples d'utilisation de la commande `ps`.

Vérifier tous les processus du terminal actuel

ps

Affiche simplement la liste des processus en cours d'exécution dans le terminal (shell) où vous êtes connecté.

Vérifier les détails de tous les processus des utilisateurs

ps aux

Affiche des informations détaillées sur les processus des utilisateurs (a), y compris ceux qui ne sont pas connectés à un terminal (x). C'est la combinaison la plus couramment utilisée.

Vérifier tous les processus sous forme d'arbre

ps -ef

Visualise tous les processus sous la forme d'un arbre de relations parent-enfant. Utile pour comprendre la structure des processus du système.

Vérifier les informations d'un processus spécifique (ex : Nginx)

ps aux | grep nginx

Filtre pour afficher uniquement les processus contenant la chaîne `nginx` dans le résultat de `ps aux`. Utile pour vérifier l'état du processus du serveur Nginx.

Vérifier les 10 processus avec la plus haute utilisation CPU

ps aux --sort -%cpu | head -n 10

Affiche les 10 premiers processus triés par utilisation du CPU, en ordre décroissant. Utile pour identifier les processus consommant beaucoup de ressources système.

Sélectionner et afficher uniquement certaines colonnes

ps -eo pid,user,%cpu,%mem,cmd

Affiche uniquement le PID, le nom d'utilisateur, le taux d'utilisation du CPU, le taux d'utilisation de la mémoire et la ligne de commande du processus. Utile pour voir uniquement les informations nécessaires de manière concise.

Trouver des processus zombies

ps aux | grep 'Z'

Recherche les processus ayant un état (STAT) de 'Z', afin de diagnostiquer les causes du gaspillage de ressources système.


Commandes de la même catégorie