Comment tuer tous les processus pour un utilisateur en Linux

Comment tuer tous les processus pour un utilisateur en Linux
Il n'y a rien de plus frustrant que de se connecter à votre système Linux pour que de nombreux processus ralentissent votre machine. Bien que Linux soit très bon dans la gestion des processus, vous devrez peut-être mettre fin à certains processus manuellement.

Dans ce tutoriel, nous discuterons de la façon de trouver et de tuer les processus d'un utilisateur spécifique. Nous utiliserons des outils tels que Pkill et Killall.

NOTE: Assurez-vous d'avoir accès à un compte administratif ou au compte racine car les utilisateurs réguliers ne peuvent que tuer leurs processus, et non des processus appartenant à d'autres utilisateurs. D'un autre côté, l'utilisateur racine peut tuer tous les processus.

Laissez-nous commencer.

Comprendre les signaux du système

Pour tuer un processus spécifique, la commande envoie un signal au processus. Par défaut, les commandes de kill telles que Killall envoient un signal de terme qui arrête gracieusement le processus spécifié.

Avant de procéder à la commande de Kill, prenons un bref aperçu des signaux du processus.

Les types courants de signaux de mise à mort comprennent:

  • Faire un coup de pouce - Ce signal recharge un processus. Il a une valeur entière de 1.
  • Sigint - Interruption du clavier tel que Ctrl + C. Il a une valeur entière de 2.
  • Sigkill - Tuer un processus. Il a une valeur entière de 9.
  • Sigterm - Il s'agit d'un signal de terminaison qui, comme indiqué, arrête gracieusement un processus. Il a une valeur entière de 15.
  • Sigstop - Arrête un processus. Il a une valeur entière de 17, 19 ou 23.

NOTE: Lors de la fin des processus, il est bon de commencer par le signal le moins agressif, comme le terme. L'utilisation d'un signal tel que le terme permettra au programme de s'arrêter correctement et d'utiliser les mesures définies lorsque le programme reçoit le terme signal.

Un signal de mise à mort peut également être utile, surtout si un processus a rencontré une erreur, ne sort pas ou ne répond pas au signal int.

Pour afficher tous les signaux disponibles, utilisez une commande telle qu'une kill -l

Méthode n ° 1 - La commande Killall

La première commande que vous pouvez utiliser pour tuer les processus Linux est la commande killall. Pour cela, vous avez besoin de la valeur PID ou du nom du processus que vous souhaitez terminer.

Vous pouvez utiliser un outil tel que PGREP pour obtenir le PID d'un processus spécifique.

Par exemple:

$ pgrep bash
2500

Une fois que vous avez la valeur PID du processus, vous pouvez terminer en utilisant la commande kill comme:

$ killall -15 2500
# ou
$ killall -15 bash

La commande ci-dessus enverra un signal de terminaison gracieux.

Pour envoyer un signal de mise à mort, utilisez l'entier -9 comme:

$ kill -9 2500
# ou
$ killall -9 bash

Comment tuer tous les processus utilisateur avec Killall

La commande Killall vous permet de résilier tous les processus appartenant à un utilisateur spécifique. Pour ce faire, utilisez le drapeau -u.

Par exemple, pour résilier tous les processus engendrés par l'utilisateur d'Ubuntu.

$ sudo killall -u ubuntu

AVERTIR: Selon l'utilisateur spécifié dans la commande, la fin des processus peut provoquer un écrasement du système ou arrêter les processus système critiques. Par conséquent, avant d'appliquer cette commande, assurez-vous que l'utilisateur en question n'est pas en cours d'exécution de processus, vous ne souhaitez pas résilier.

Méthode n ° 2: la commande pkill

Un autre excellent outil que vous pouvez utiliser pour terminer les processus Linux est la commande pkill. Cette commande fonctionne de manière similaire à Killall.

Par exemple, pour terminer le processus de bash avec PKILL, utilisez la commande:

$ pkill -15 bash
# ou
$ pkill -15 2500

Pour tuer tous les processus appartenant à l'utilisateur d'Ubuntu, nous pouvons utiliser la commande:

sudo pkill -9 -u ubuntu

Conclusion

C'est tout pour celui-ci.

Dans ce guide, nous avons rapidement discuté des moyens de résilier les processus dans Linux et divers types de signaux de mise à mort. Comme on le voit, tuer un seul processus ou plusieurs processus appartenant à un utilisateur Linux spécifique est facile.