facile · Durée estimée : 25 min
Comprendre ce qu'est un processus, comment lister ceux qui tournent, surveiller leur consommation, et les arrêter proprement (ou de force). Ces commandes sont utilisées tous les jours par tout administrateur système.
Ouvre la console dans un autre onglet avant de commencer.
Un processus est un programme en cours d'exécution. Chaque processus possède :
Le tout premier processus est init (ou
systemd sur les systèmes modernes), avec
le PID 1. Tous les autres descendent de lui.
ps
ps (process status) affiche un
instantané des processus.
ps
Sans option, ps n'affiche que les processus
de ton terminal. Pour tout voir :
ps aux
USER PID %CPU %MEM STAT COMMAND
user 123 0.0 0.2 Ss /bin/sh
user 456 1.5 3.1 Sl /usr/bin/firefox
root 1 0.0 0.1 Ss init
Variantes utiles :
ps -ef # format UNIX, avec PPID
ps aux | grep sh # filtrer sur un mot
ps -u user # seulement l'utilisateur user
ps aux | grep mot est une combinaison
extrêmement courante. Retiens-la.
ps aux et repère ton propre shell
(probablement /bin/sh). Note son PID.
/bin/sh ou ash en COMMAND.
top
top affiche les processus en temps réel,
classés par consommation CPU.
top
top - 10:30:45 up 2:15, 1 user, load average: 0.05, 0.03, 0.01
Tasks: 45 total, 1 running, 44 sleeping, 0 zombie
%Cpu(s): 2.3 us, 0.5 sy, 0.0 ni, 97.2 id
MiB Mem : 191.9 total, 45.2 free, 89.1 used, 57.6 buff/cache
PID USER PR NI VIRT RES SHR S %CPU %MEM COMMAND
456 user 20 0 45120 12345 3456 S 1.5 3.1 firefox
q → quitter
M → trier par mémoire
P → trier par CPU (défaut)
k → tuer un processus (demande le PID)
h → aide
1 → voir chaque cœur CPU séparément
top est fourni par BusyBox.
Il est plus simple que la version GNU, mais fonctionne
pareil pour l'essentiel.
top, appuie sur M pour
trier par mémoire, puis q pour quitter.
q.
pgrep
pgrep cherche un processus par nom et
retourne son PID.
pgrep sh
123 (le PID du shell)Avec le nom complet :
pgrep -l sh # affiche PID + nom
pgrep -a sh # affiche PID + ligne de commande complète
pgrep est plus pratique que
ps aux | grep sh car il ne renvoie que
le PID, directement exploitable.
pgrep -l sh.
sh
ou ash.
&
Ajouter & à la fin d'une commande la
lance en arrière-plan, sans bloquer le terminal.
sleep 60 &
[1] 789 → job n°1, PID 789Voir les jobs en cours :
jobs
[1]+ Running sleep 60 &Ramener un job au premier plan :
fg %1
Suspendre le processus au premier plan :
Ctrl+Z
Reprendre en arrière-plan :
bg %1
Ctrl+Z suspend, Ctrl+C tue.
C'est une distinction essentielle.
sleep 120 &, vérifie avec
jobs, puis tue-le avec kill %1.
jobs après le kill ne doit plus
afficher le job.
kill
kill envoie un signal à un processus.
Par défaut, c'est SIGTERM (15) — demande
d'arrêt propre.
kill 1234
Si le processus résiste, forcer avec SIGKILL :
kill -9 1234
SIGTERM (15) → arrêt propre (défaut)
SIGKILL (9) → arrêt immédiat, ne peut pas être ignoré
SIGHUP (1) → recharger la configuration
SIGSTOP (19) → suspendre
SIGCONT (18) → reprendre
Tuer par nom plutôt que par PID :
pkill sleep # tue tous les processus nommés sleep
killall sleep # idem (si disponible)
kill -9 ne laisse pas le processus se
terminer proprement. Il peut laisser des fichiers
temporaires ou des verrous. Utilise-le en dernier recours,
après avoir essayé kill seul.
sleep 300 &, récupère son PID avec
jobs ou pgrep sleep, puis
tue-le avec kill.
jobs ne doit plus afficher le processus.
Si tu tapes pgrep sleep il ne doit plus rien
retourner.
free et uptime
free affiche l'utilisation mémoire :
free -h
total 191M, used 89M, free 45M, available 57M
uptime affiche depuis combien de temps le
système tourne et la charge moyenne :
uptime
10:30:45 up 2:15, 1 user, load average: 0.05, 0.03, 0.01
Trois nombres : charge moyenne sur 1, 5 et 15 minutes. Sur un système mono-cœur, une charge de 1.0 signifie que le CPU est saturé. Sur 4 cœurs, c'est à partir de 4.0.
free -h + uptime + top
= diagnostic rapide d'un système lent.
free -h puis uptime.
Note la valeur available et la charge 1 min.
who et wwho # utilisateurs connectés
w # idem, avec ce qu'ils font
whoami # juste mon nom
who → user tty1 2026-11-20 10:30
who et
w permettent de voir qui est connecté et
depuis quand. Utile pour repérer une connexion suspecte.
who et w. Vérifie que
tu apparais bien.
ps aux → tous les processus
ps aux | grep sh → filtrer
top → temps réel (q pour quitter)
pgrep sh → PID d'un processus par nom
sleep 60 & → lancer en arrière-plan
jobs → jobs du terminal
fg %1 / bg %1 → premier plan / arrière-plan
Ctrl+Z / Ctrl+C → suspendre / tuer
kill PID → demander l'arrêt
kill -9 PID → forcer l'arrêt
pkill nom → tuer par nom
free -h → mémoire
uptime → charge système
who / w → utilisateurs connectés
15 SIGTERM arrêt propre (défaut de kill)
9 SIGKILL arrêt forcé
1 SIGHUP recharger la config
19 SIGSTOP suspendre
18 SIGCONT reprendre
sleep 500 & en arrière-plansleep 600 & aussijobs qu'ils tournentpgrep sleepkill PIDkill -9 PIDjobs est videtop, observer, quitter avec qfree -hpgrep sleep ne doit plus rien
retourner, jobs non plus.