CodeGym /Cours /Docker SELF /Gestion des processus système : ps, top, htop

Gestion des processus système : ps, top, htop

Docker SELF
Niveau 2 , Leçon 4
Disponible

Gestion des processus système : ps, top, htop

1. Commande ps — vue statique des processus

Si Linux était un restaurant, alors un processus serait le chef en cuisine. C'est une instance exécutable d'un programme qui existe en mémoire. Quand tu lances une application ou exécutes un fichier depuis la ligne de commande, un processus est créé, qui effectue ensuite ses tâches jusqu'à sa terminaison.

Du point de vue de la programmation, les processus sont gérés par le noyau de Linux, et chacun a un identifiant unique — PID (Process ID).

La commande ps (process status) est une commande de base pour voir la liste des processus. Elle donne une capture statique des processus actuels du système. En utilisant ps, tu peux obtenir des infos sur les processus en cours : leur ID, propriétaire, ligne de commande et ressources utilisées.

Syntaxe principale

Voici à quoi ressemble une commande de base :

ps

Cela affichera les processus lancés dans le terminal actuel.

Mais c'est un peu ennuyant ! Ajoutons un peu de piment :

ps aux

Ici :

  • a — montre les processus d'autres utilisateurs.
  • u — ajoute un format plus lisible.
  • x — inclut les processus qui ne sont pas attachés à un terminal.

Exemple de sortie :

USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root           1  0.0  0.1  22556  1044 ?        Ss   12:34   0:01 /sbin/init
student      2345  0.1  0.2  34567  2048 pts/0    S+   12:35   0:02 bash
student      4567  0.3  0.5  56789  5144 pts/0    R+   12:36   0:03 ps aux
  • USER: utilisateur ayant lancé le processus.
  • PID: identifiant du processus.
  • %CPU: pourcentage d'utilisation du CPU.
  • %MEM: pourcentage d'utilisation de la mémoire.
  • COMMAND: commande ayant initié le processus.

Options avancées

  1. Regardons la structure en arbre des processus :

    ps -ejH
    

    Cela permet de comprendre quels processus sont les "enfants" d'autres processus.

  2. Filtrer par PID :

    ps -p 1234
    

    1234 est ton PID. Affiche uniquement le processus spécifié.

  3. Afficher tous les processus avec la ligne de commande complète :

    ps -ef
    

2. La commande top — surveillance dynamique des processus

top — c'est comme une télé pour les processus. Tu peux voir comment les processus évoluent en temps réel. Si tu utilises un serveur ou si ton ordi commence à "ramer", top est ton meilleur allié. Avec lui, tu verras quels processus consomment le plus de CPU et de mémoire.

Les bases de l'utilisation

Il suffit de taper dans le terminal :

top

Exemple de sortie :

  • La ligne du haut montre la "charge" du système.
  • La partie centrale donne des infos sur les tâches (total, actives, en sommeil, zombies).
  • La partie inférieure concerne la mémoire.
  • Le bloc du bas est une liste de processus, avec plein d'infos utiles comme PID, USER, %CPU et COMMAND.

Navigation dans top

  • Appuie sur k pour terminer un processus. Entre le PID.
  • Appuie sur P pour trier les processus par CPU.
  • Appuie sur M pour trier par utilisation de mémoire.
  • Appuie sur q pour quitter.

3. L'utilitaire htop — une interface pratique

Si top te semble un peu trop "brut", bienvenue dans htop. C'est une interface visuelle pour monitorer les processus. Elle est colorée, supporte la souris et est vraiment intuitive.

Installation

Si htop n'est pas installé, ajoute-le :

sudo apt-get install htop # Pour les distributions basées sur Debian
sudo yum install htop     # Pour les distributions basées sur RedHat

Lancement

Pour lancer htop, il suffit de taper :

htop

Exemple d'interface :

Avantages de htop :

  • Possibilité de faire défiler la liste des processus.
  • Mise en évidence des couleurs pour CPU, mémoire, swap.
  • Touches pratiques pour terminer les processus (par exemple, F9).

4. Exercice pratique

Tâche 1 : Trouve le processus le plus "gourmand"

  • Ouvre top ou htop.
  • Trie les processus par CPU et trouve son PID.

Tâche 2 : Termine un processus

  • Utilise kill pour "tuer" un processus :
    kill <PID>
    

Tâche 3 : Analyse un processus

  • Utilise ps pour analyser le PID d’un processus :
    ps -p <PID> -o pid,user,%cpu,%mem,cmd
    

Pièges et recommandations

  1. Ne tue pas les processus si tu n’es pas sûr qu’ils ne sont pas critiques pour le système. Par exemple, le processus avec le PID 1 — c'est init, le noyau du système.
  2. L'outil htop doit être installé séparément s’il n’est pas déjà présent. Si la commande ne fonctionne pas, vérifie son installation.
  3. Fais attention aux droits. Terminer des processus lancés par un autre utilisateur peut nécessiter des droits administrateur.

En pratique, tu verras que ces outils rendent le travail avec Linux incroyablement flexible et clair. Maintenant, c’est toi le boss des processus !

Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION