Top

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Monitoring système (CPU, mémoire, processus)
Commande top
Contexte Interactif temps réel, disponible sur toute distribution — voir htop pour une alternative plus lisible
Voir aussi Sar · Nmon (monitoring historisé/temps réel)

top est la commande de référence pour surveiller en temps réel l'activité des processus sur un système Linux : charge CPU, mémoire, et détail par processus. Contrairement à Sar ou Nmon, top n'historise rien nativement (sauf via son mode batch redirigé vers un fichier) : c'est un outil de diagnostic instantané plutôt que d'investigation a posteriori.

Installation

yum install procps-ng   # top fait partie du paquet procps(-ng), présent par défaut sur la plupart des distributions

Utilisation de base

top                              # mode interactif classique
top -b -n 1                      # mode batch, une seule itération (pour scripts/logs)
top -b -n 6 -d 5 -u apache        # mode batch, 6 collectes toutes les 5 secondes, filtré sur l'utilisateur apache
top -o cpu -n 5                   # trie par CPU, 5 itérations

Extraire uniquement l'en-tête récapitulatif (charge, mémoire) d'une capture batch :

top -b -n 1 | head -n 12 | tail -n 5

Ajouter des champs à surveiller

En mode interactif, la touche f ouvre la sélection des colonnes affichées. Par exemple pour ajouter la colonne SWAP utilisée par chaque processus :

top
f        # ouvrir la sélection des champs
p        # activer/désactiver le champ SWAP (repérage selon la version de top)

La touche W (majuscule) enregistre la configuration courante dans ~/.toprc, pour ne pas avoir à refaire la manipulation à chaque lancement (utile notamment avant de passer en mode batch).

Mode multi-fenêtres

top propose un mode avec plusieurs vues (fenêtres) indépendantes, chacune avec son propre tri et sa propre configuration de champs :

  • A : activer le mode multi-fenêtres
  • w : passer à la fenêtre suivante
  • G puis un chiffre : aller directement à la fenêtre correspondante (ex. G3)
  • z : changer la couleur de la fenêtre courante
  • < / > : changer la colonne utilisée pour le tri
  • R : inverser le sens du tri

États des processus

La colonne STAT de ps (et la colonne S de top) utilise ces codes, issus des états internes du noyau Linux :

  • R : TASK_RUNNING — en cours d'exécution ou prêt à l'être
  • S : TASK_INTERRUPTIBLE — en sommeil, réveillable par un signal
  • D : TASK_UNINTERRUPTIBLE — en sommeil, non réveillable par un signal (attente I/O typiquement)
  • K : TASK_KILLABLE — variante de D qui reste sensible aux signaux fatals
  • T : TASK_STOPPED ou TASK_TRACED — arrêté (signal STOP) ou tracé (débogueur)
  • Z : EXIT_ZOMBIE — terminé mais dont le parent n'a pas encore récupéré le code de retour
  • X : EXIT_DEAD — en cours de destruction finale, ne devrait apparaître qu'un instant

Colonnes clés

  • USER : propriétaire du processus
  • VIRT (VSZ) : mémoire virtuelle totale utilisée par le processus, y compris la mémoire résidente, les bibliothèques partagées et toutes les pages mappées ou swappées
  • RES (RSS) : mémoire résidente, c'est-à-dire la mémoire physique réellement occupée, bibliothèques partagées comprises
  • SHR : partie de la mémoire résidente partagée avec d'autres processus (bibliothèques communes)
  • %CPU / %MEM : part de CPU et de mémoire physique utilisée par le processus
  • TIME+ : temps CPU cumulé consommé par le processus depuis son démarrage

Alternative moderne

htop reprend les mêmes informations que top avec une interface plus lisible (couleurs, barres de charge par cœur, arborescence des processus, sélection à la souris) et une navigation au clavier plus intuitive (pas besoin de connaître les raccourcis one-letter de top). Il ne remplace pas le mode batch de top pour les scripts, mais reste souvent préféré pour le diagnostic interactif.

yum install htop

Voir aussi

  • Sar — monitoring historisé (CPU, mémoire, disques, réseau) via cron, complémentaire à top pour l'investigation a posteriori
  • Nmon — monitoring temps réel et enregistrement, alternative plus complète (disques, réseau, NFS)