Apprendre Linux

5 façons rapides de tuer un processus sous Linux

5 façons rapides de tuer un processus sous Linux

Le système d'exploitation Linux fournit plusieurs façons de terminer un processus de système d'exploitation Linux. Le moyen évident d'arrêter un programme est de cliquer sur le bouton X dans le coin supérieur gauche ou droit. Mais il existe une myriade d'autres façons de tuer un processus ; nous sommes ici pour discuter des autres moyens efficaces.

Façons de tuer un processus sous Linux

Séquence de contrôle

La deuxième façon évidente de tuer un processus qui vient d'être lancé est de taper Ctrl-C dans la ligne de commande. La séquence de contrôle Ctrl-C est généralement sûre à utiliser même si une perte de données est possible.

La séquence Ctrl-Z suspendra un processus en cours. Il envoie le signal SIGTSP à un processus dont l'action par défaut est de suspendre le processus.

tuer les commandes

Le système d'exploitation Linux est livré avec la commande kill que vous pouvez utiliser pour terminer un processus lorsqu'il ne répond plus ou consomme trop de ressources. Un processus sous Linux est une instance d'un programme.

Un PID unique est automatiquement généré pour ce processus lorsqu'un programme démarre. Le processus d'initialisation est le premier processus qui démarre lorsqu'un système Linux est démarré et auquel la valeur '1' est affectée.

Init est le processus maître et ne peut pas être tué via la commande kill. La commande kill sur le processus d'initialisation est simplement une demande d'arrêt du système.

Ce guide vous guidera à travers les étapes et plusieurs façons de terminer un processus en cours à l'aide du terminal Linux.

L'utilisateur root a toutes les autorisations nécessaires pour tuer tous les processus. Vous pouvez obtenir un shell root avec la commande su ou ajouter sudo avant la commande et l'exécuter.

Le signal par défaut envoyé par la commande kill

Tuer un processus enverra un message de fin au processus spécifié. Les deux principaux types de messages de résiliation comprennent :

• SIGTERM - La commande kill enverra un signal SIGTERM par défaut. Il devrait permettre au processus de se terminer par ses procédures d'arrêt normales. C'est une manière plus douce de tenter de terminer un processus et peut être bloqué.

• SIGKILL - Il tuera toujours un processus brusquement. Si SIGKILL ne fonctionne pas, le système d'exploitation a échoué. C'est la méthode la plus rapide et la plus efficace pour tuer un processus.

Lister les processus en cours

La commande top, la commande ps et la commande pidof sont les moyens les plus simples d'afficher les processus en cours d'exécution dans un système Linux.

Syntaxe:

ps-e | grep nom-du-processus

La capture d'écran ci-dessous montre comment utiliser la commande ps pour vérifier si MySQL est en cours d'exécution sur le système. Il nous donne le PID du démon MySQL, qui est 1162.

Image montrant comment utiliser Grep MySQL

Options courantes à ajouter à la commande ps

• -a : afficher les processus de tous les utilisateurs.
• -u : afficher des informations détaillées sur chaque processus.
• -x : afficher tous les processus contrôlés par des démons.

ps -e

options à ajouter à la commande ps

Syntaxe:

Haut

La commande supérieure vous montrera le PID, l'utilisateur, le nom de la ressource et le nombre de ressources système utilisées par chaque processus. Ceux-ci sont utiles si vous décidez de mettre fin à l'un des processus.

Les meilleurs résultats de commande

L'utilisation de la commande pgrep est également très efficace pour obtenir l'ID de processus correspondant.

Utilisation de la commande pgrep

Options communes à ajouter à la commande pgrep.

• -l : liste les noms de processus et les PID.
• -n : renvoie le processus le plus récent.
• -o : renvoie le processus le plus ancien.
• -u : rechercher les processus qui appartiennent à un utilisateur spécifique.
• -x : trouver un processus qui correspond exactement à un modèle donné.

La commande pidof est utilisée pour trouver l'IP d'un processus si vous connaissez le nom du processus.

Syntaxe:

pidof  

Options :

• -c : renvoie les PID dans un seul répertoire racine.
• -o : il omettra certains PID.
• -s : renvoie un seul PID.
• -x : renvoie les PID des shells exécutant des scripts.

Vous pouvez tuer un processus sous Linux par différentes méthodes selon que vous connaissez le PID du processus, le nom du processus ou l'heure à laquelle le processus a été exécuté.

commande killall

La commande killall est utilisée pour tuer les processus par nom. Il peut tuer plusieurs processus avec une seule commande, et il envoie un signal SIGTERM par défaut.

Syntaxe:

tuer tous 

Options disponibles avec la commande killall :

• -e : renvoie la correspondance exacte pour le nom du processus.
• -I : la commande ignorera la casse lors de la recherche du nom du processus.
• -i: Il demandera des informations supplémentaires lors de l'arrêt d'un processus par son nom.
• -u: Il tuera les processus appartenant à un utilisateur spécifié du système.
• -v : il indiquera si le processus de suppression a été exécuté avec succès.

La commande killall peut également terminer les processus dans un système Linux en fonction des temps d'exécution des processus.

• -o : cette option tuera tous les processus pendant plus de la durée spécifiée.
• -y : cette option tuera tous les processus s'exécutant moins que la durée spécifiée.

Exemple:

• killall -o 20m : la commande tuera tous les processus de plus de 20 minutes.
• Killall -y 20m : la commande tuera tous les processus en cours d'exécution pendant moins de 15 minutes.

tuer la commande

La commande kill tuera un processus si vous connaissez l'IP du processus.

Syntaxe:

tuer 

La commande kill tue un seul processus avec l'ID de processus donné. La commande enverra un signal SIGTERM pour arrêter et attendre que le processus subisse ses procédures d'arrêt de routine.

Commande Kill -9

La commande kill -9 est utilisée pour mettre fin aux processus ou services qui ne répondent pas.

Syntaxe:

tuer -9 

ou alors

tuer -SIGKILL 

La commande kill -9 enverra un signal SIGKILL pour arrêter immédiatement un processus. La commande kill -9 contournera la routine d'arrêt standard et toutes les données non enregistrées seront perdues.

Les programmes qui ne répondent pas ignoreront la commande kill mais se termineront chaque fois que la commande kill -9 est émise.

Les autres options d'élimination couramment utilisées incluent :

• -1 (HUP) : c'est l'option « raccrocher » et est généralement très sûre.
• -2 (SIGINT): C'est le même signal que le Ctrl-C et est considéré comme une alternative sûre pour tuer un programme.
• -15 (-TERM) : c'est le signal de terminaison par défaut et est généralement très sûr.

Vous pouvez obtenir une liste complète de tous les signaux disponibles en utilisant la commande kill -l.

Liste complète de tous les signaux disponibles à l'aide de la commande kill -l

commande pkill

La commande pkill tuera un processus lorsque vous connaissez le nom du processus. Par défaut, pkill enverra le signal SIGTERM pour terminer le processus.

Syntaxe:

tuer  

pkill options :

• -n : cette commande tuera les processus les plus récents.
• -o : cette commande tuera les processus les plus anciens.
• -u : cette commande tuera les processus en fonction de l'utilisateur sélectionné.
• -x : cette commande tuera les processus qui correspondent à un modèle.
• -signal : Envoie un signal spécifié autre que le signal par défaut SIGTERM.

xkill

La commande xkill fermera la connexion d'un serveur aux clients.

xkill 

La commande xkill mettra fin aux processus de serveur indésirables.

commande supérieure

La commande top fournit une interface à travers laquelle un utilisateur peut spécifier le processus de terminaison.

Syntaxe:

Haut

Pour tuer un processus par PID, insérez k à partir de l'interface, puis entrez un ID de processus spécifié.

résumer

• Vous devez disposer des autorisations sudo pour tuer un processus via la ligne de commande.

• Chaque fois que vous générez un signal à l'aide de la commande kill, le système Linux interrompt le flux d'exécution normal du processus cible.

• Pour trouver un processus en cours d'exécution, vous pouvez utiliser les commandes ps, top, pgrep ou pidof.

• Vous pouvez tuer un processus par son nom ou son identifiant de processus à l'aide des commandes kilall, pkill, kill, xkill ou top.

• Un processus kill enverra un signal de fin de SIGTERM, SIGHUP ou SIGKILL.

• Vous pouvez utiliser le Moniteur système pour tuer le processus Linux. Il peut être trouvé dans les outils système et fournit plusieurs options telles que le processus supérieur, le processus final ou l'arrêt du processus.

• La commande kill et ses variantes sont assez simples à comprendre et à utiliser.

Dans ce guide, nous avons mis en évidence différentes manières de tuer des processus sous Linux. Il y a une légère courbe d'apprentissage en termes de liste d'options de signaux qu'elle offre, ce qui est essentiel pour une bonne administration Linux. Si vous voulez en savoir plus, je vous suggère de regarder leurs pages de manuel respectives.

Comment développer un jeu sur Linux
Il y a dix ans, peu d'utilisateurs de Linux prédisaient que leur système d'exploitation préféré serait un jour une plate-forme de jeu populaire pour l...
Ports Open Source des moteurs de jeux commerciaux
Les récréations de moteur de jeu gratuites, open source et multiplateformes peuvent être utilisées pour jouer à d'anciens ainsi qu'à certains des titr...
Meilleurs jeux de ligne de commande pour Linux
La ligne de commande n'est pas seulement votre plus grand allié lorsque vous utilisez Linux, elle peut également être une source de divertissement car...