Gestion des processus Linux

LinuxLinuxBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Ce laboratoire présente les outils essentiels de Linux pour la gestion des processus et des ressources système. En tant que débutant, vous apprendrez à utiliser les commandes ps, top et free pour surveiller et analyser les processus système et l'utilisation de la mémoire. Ces outils sont fondamentaux pour comprendre ce qui se passe sur votre système Linux.

Objectifs

À la fin de ce laboratoire, vous serez en mesure de :

  • Lister et filtrer les processus à l'aide de ps
  • Surveiller les processus en temps réel avec top
  • Vérifier l'utilisation de la mémoire système à l'aide de free

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux/SystemInformationandMonitoringGroup -.-> linux/ps("Process Displaying") linux/SystemInformationandMonitoringGroup -.-> linux/top("Task Displaying") linux/SystemInformationandMonitoringGroup -.-> linux/free("Memory Reporting") subgraph Lab Skills linux/ps -.-> lab-46{{"Gestion des processus Linux"}} linux/top -.-> lab-46{{"Gestion des processus Linux"}} linux/free -.-> lab-46{{"Gestion des processus Linux"}} end

Lister tous les processus

Commençons par lister tous les processus en cours d'exécution sur le système à l'aide de la commande ps.

  1. Ouvrez votre terminal. Vous devriez être dans le répertoire /home/labex/project. Si vous n'êtes pas sûr, vous pouvez toujours vérifier votre répertoire actuel en tapant pwd puis en appuyant sur Entrée.

  2. Exécutez la commande suivante pour lister tous les processus :

    ps -e

    Cela affichera une liste de tous les processus, y compris leur identifiant de processus (PID - Process ID), le terminal (TTY), le temps CPU et le nom de la commande.

  3. Prenez un moment pour examiner la sortie. Vous verrez des processus système et des processus utilisateur. Voici ce que signifie chaque colonne :

    • PID : L'identifiant unique du processus
    • TTY : Le type de terminal associé au processus
    • TIME : La quantité de temps CPU utilisée par le processus
    • CMD : Le nom de la commande ou du programme

    Ne vous inquiétez pas si vous voyez des noms de processus inconnus ; beaucoup d'entre eux sont des processus système qui s'exécutent en arrière - plan.

Afficher des informations détaillées sur les processus

Maintenant, récupérons des informations plus détaillées sur les processus.

  1. Exécutez la commande suivante :

    ps aux

    Cette commande affiche une liste détaillée de tous les processus, y compris l'utilisateur qui a lancé le processus, l'utilisation du CPU et de la mémoire, ainsi que la ligne de commande complète.

  2. La sortie peut être assez longue. Vous pouvez utiliser la commande less pour la visualiser plus facilement :

    ps aux | less

    Cela envoie la sortie de ps aux à less, vous permettant de la parcourir.

  3. Dans le visualiseur less :

    • Utilisez les flèches haut et bas pour faire défiler
    • Appuyez sur Espace pour avancer d'une page
    • Appuyez sur b pour reculer d'une page
    • Appuyez sur q pour quitter le visualiseur less une fois terminé
  4. Analysons ce que vous voyez :

    • USER : Le propriétaire du processus
    • PID : Identifiant de processus (Process ID)
    • %CPU : Utilisation du CPU
    • %MEM : Utilisation de la mémoire
    • VSZ : Taille de la mémoire virtuelle
    • RSS : Taille du jeu résident (mémoire physique non échangée utilisée)
    • TTY : Type de terminal
    • STAT : État du processus
    • START : Heure de démarrage du processus
    • TIME : Temps CPU cumulé
    • COMMAND : La commande avec tous ses arguments

Ne vous inquiétez pas si vous ne comprenez pas tout de suite. Au fur et à mesure que vous gagnerez plus d'expérience, vous vous familiariserez avec ces termes.

Filtrer les processus par utilisateur

Vous pouvez filtrer les processus pour n'afficher que ceux appartenant à un utilisateur spécifique. Cela est utile lorsque vous souhaitez vous concentrer sur les processus appartenant à un compte utilisateur particulier.

  1. Pour voir les processus appartenant à l'utilisateur root, exécutez :

    ps -u root

    L'utilisateur root est le superutilisateur dans les systèmes Linux, ayant des droits d'accès complets au système. De nombreux processus système s'exécutent sous le compte root.

  2. Pour voir les processus appartenant à votre utilisateur actuel (labex), exécutez :

    ps -u labex

    Cela vous montrera tous les processus que vous avez lancés sous votre compte utilisateur.

  3. Comparez les sorties de ces deux commandes. Vous verrez probablement plus de processus sous le compte root que sous votre compte utilisateur.

Surveiller les processus en temps réel avec top

La commande top fournit une vue dynamique et en temps réel des processus en cours d'exécution. C'est comme un tableau de bord en direct pour votre système.

  1. Exécutez la commande suivante :

    top
  2. Vous verrez un affichage en continu mis à jour des processus système, triés par utilisation du CPU. L'affichage est divisé en deux sections principales :

    • La zone de résumé en haut, affichant des informations sur l'ensemble du système
    • La liste des processus, affichant les détails des processus individuels
  3. Lorsque vous êtes dans top, vous pouvez utiliser diverses commandes :

    • Appuyez sur M pour trier par utilisation de la mémoire au lieu du CPU
    • Appuyez sur P pour revenir au tri par utilisation du CPU
    • Appuyez sur T pour trier par temps d'exécution
    • Appuyez sur N pour trier par PID
    • Utilisez les flèches haut et bas pour naviguer dans la liste des processus
    • Appuyez sur q pour quitter top
  4. La zone de résumé inclut des informations importantes sur le système :

    • Le temps de fonctionnement du système et les moyennes de charge
    • Le résumé des tâches (total, en cours d'exécution, en veille, arrêtées, zombies)
    • Les états du CPU (utilisateur, système, inactif, etc.)
    • L'utilisation de la mémoire (totale, libre, utilisée, tampons/mémoire mise en cache)
    • L'utilisation de la mémoire échangeable (swap)

Prenez le temps d'explorer top. C'est un outil puissant pour comprendre ce qui se passe sur votre système en temps réel.

Vérifier l'utilisation de la mémoire système

La commande free vous permet de vérifier rapidement et facilement l'utilisation de la mémoire du système.

  1. Exécutez la commande suivante pour voir l'utilisation de la mémoire dans un format lisible par l'homme :

    free -h

    L'option -h signifie "lisible par l'homme", qui affiche les tailles en puissances de 1024 (par exemple, 1K, 234M, 2G).

  2. Vous verrez une sortie similaire à celle-ci :

                  total        used        free      shared  buff/cache   available
    Mem:           7.7G        4.1G        287M        624M        3.3G        2.7G
    Swap:          2.0G        506M        1.5G

    Analysons ce que chaque ligne et chaque colonne signifie :

    • Mem : Cette ligne montre des informations sur la mémoire vive (RAM) de votre système.
    • Swap : Cette ligne montre des informations sur votre espace d'échange (mémoire virtuelle).

    Colonnes :

    • total : Mémoire totale installée.
    • used : Mémoire actuellement utilisée.
    • free : Mémoire inutilisée.
    • shared : Mémoire partagée par plusieurs processus.
    • buff/cache : Mémoire utilisée par les tampons du noyau, le cache de pages et les slabs.
    • available : Estimation de la quantité de mémoire disponible pour démarrer de nouvelles applications, sans échange.
  3. Ne vous inquiétez pas si votre mémoire "free" semble faible. Linux utilise la mémoire disponible pour la mise en cache du disque afin d'améliorer les performances du système, mais cette mémoire peut être récupérée si les applications en ont besoin.

Résumé

Dans ce laboratoire, vous avez appris à utiliser les outils clés de gestion des processus Linux :

  • ps pour lister et filtrer les processus
  • top pour surveiller les processus en temps réel
  • free pour vérifier l'utilisation de la mémoire système

Ces commandes sont essentielles pour l'administration système et la résolution de problèmes. Elles vous donnent un aperçu de ce qui s'exécute sur votre système, de l'utilisation des ressources et peuvent vous aider à identifier les problèmes potentiels.

Au fur et à mesure que vous vous familiariserez avec ces outils, vous pourrez explorer des options supplémentaires et les combiner avec d'autres commandes Linux pour une analyse système plus avancée. Par exemple :

  • Utilisez ps avec grep pour trouver des processus spécifiques
  • Apprenez à interpréter les informations détaillées de top pour identifier les applications gourmandes en ressources
  • Utilisez free dans des scripts pour surveiller l'utilisation de la mémoire au fil du temps

N'oubliez pas, la pratique fait maître! N'hésitez pas à expérimenter avec ces commandes par vous-même pour approfondir votre compréhension de la gestion des processus Linux. Plus vous utiliserez ces outils, plus ils deviendront intuitifs.