GNU/Linux >> Tutoriels Linux >  >> Linux

Comment tuer les processus en cours d'exécution sous Linux

Sous Linux, une instance d'un service, d'une application ou d'un script en cours d'exécution est appelée un processus. Lorsque vous exécutez une commande, un programme ou une application, un processus est créé pour celui-ci. Chaque processus a son propre ID de processus qui est associé à un utilisateur et à un groupe spécifiques. Si des processus consomment trop de ressources ou ne répondent plus, vous devrez peut-être les tuer. Dans ce cas, vous pouvez utiliser la commande kill pour arrêter le processus sans redémarrer votre serveur.

Dans cet article, nous vous montrerons comment tuer les processus en cours d'exécution sous Linux.

Prérequis

  • Un serveur exécutant Linux sur la plate-forme cloud Atlantic.Net
  • Un mot de passe root configuré sur votre serveur

Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant n'importe quel système d'exploitation Linux avec au moins 1 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Afficher les processus en cours d'exécution sous Linux

Le moyen le plus simple et le plus simple d'obtenir une liste de tous les processus en cours d'exécution consiste à utiliser la commande top. Vous pouvez exécuter la commande top comme indiqué ci-dessous pour répertorier tous les processus en cours d'exécution :

top

Vous obtiendrez tous les processus en cours d'exécution dans la sortie suivante :

Tasks: 344 total,   1 running, 297 sleeping,   0 stopped,   0 zombie
%Cpu(s): 22.6 us,  6.0 sy,  0.1 ni, 67.1 id,  3.9 wa,  0.0 hi,  0.4 si,  0.0 st
KiB Mem :  7580260 total,  2103076 free,  3174408 used,  2302776 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.  3901388 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                   
 5994 vyom      20   0   44344   4160   3444 R  11.8  0.1   0:00.03 top                                                                       
 2206 vyom      20   0 1046476  89792  60368 S   5.9  1.2   1:15.26 Xorg                                                                      
 2359 vyom      20   0 3471324 216412  97596 S   5.9  2.9   1:58.27 gnome-shell                                                               
 2745 vyom      20   0 1776552 136144  99424 S   5.9  1.8   1:09.93 skypeforlinux                                                             
 2775 vyom      20   0 37.371g 169524 117660 S   5.9  2.2   1:05.09 skypeforlinux                                                             
 5655 root      20   0       0      0      0 I   5.9  0.0   0:00.30 kworker/u8:3-ev                                                           
    1 root      20   0  160356   9464   6632 S   0.0  0.1   0:03.50 systemd                                                                   
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd                                                                  
    3 root       0 -20       0      0      0 I   0.0  0.0   0:00.00 rcu_gp                                                                    
    4 root       0 -20       0      0      0 I   0.0  0.0   0:00.00 rcu_par_gp                                                                
    6 root       0 -20       0      0      0 I   0.0  0.0   0:00.00 kworker/0:0H-kb                                                           
    9 root       0 -20       0      0      0 I   0.0  0.0   0:00.00 mm_percpu_wq                                                              
   10 root      20   0       0      0      0 S   0.0  0.0   0:00.40 ksoftirqd/0                                                               
   11 root      20   0       0      0      0 I   0.0  0.0   0:03.58 rcu_sched                                                                 
   12 root      rt   0       0      0      0 S   0.0  0.0   0:00.01 migration/0                                                               
   13 root     -51   0       0      0      0 S   0.0  0.0   0:00.00 idle_inject/0                                                             
   14 root      20   0       0      0      0 S   0.0  0.0   0:00.00 cpuhp/0                                                                   
   15 root      20   0       0      0      0 S   0.0  0.0   0:00.00 cpuhp/1                                                                   
   16 root     -51   0       0      0      0 S   0.0  0.0   0:00.00 idle_inject/1                                                             

Vous pouvez appuyer sur k et entrer l'ID de processus pour tuer le processus directement depuis l'interface supérieure.

Trouvez le processus à l'aide de la commande ps

ps est un utilitaire de ligne de commande qui affiche une liste complète des processus en cours d'exécution dans le format spécifié.

La syntaxe de base de la commande ps est illustrée ci-dessous :

ps [OPTION]

Une brève explication de chaque option est présentée ci-dessous :

  • -a – Afficher les processus en cours d'exécution de tous les utilisateurs.
  • -u – Affiche des informations détaillées sur chacun des processus.
  • -x – Affiche les processus contrôlés par le démon.

Par exemple, exécutez la commande suivante pour obtenir une liste détaillée de tous les processus.

ps aux

Vous obtiendrez le résultat suivant :

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.1  0.1 160356  9464 ?        Ss   15:51   0:03 /sbin/init splash
root         2  0.0  0.0      0     0 ?        S    15:51   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        I<   15:51   0:00 [rcu_gp]
root         4  0.0  0.0      0     0 ?        I<   15:51   0:00 [rcu_par_gp]
root         6  0.0  0.0      0     0 ?        I<   15:51   0:00 [kworker/0:0H-kb]
root         9  0.0  0.0      0     0 ?        I<   15:51   0:00 [mm_percpu_wq]
root        10  0.0  0.0      0     0 ?        S    15:51   0:00 [ksoftirqd/0]
root        11  0.1  0.0      0     0 ?        I    15:51   0:03 [rcu_sched]
root        12  0.0  0.0      0     0 ?        S    15:51   0:00 [migration/0]
root        13  0.0  0.0      0     0 ?        S    15:51   0:00 [idle_inject/0]
root        14  0.0  0.0      0     0 ?        S    15:51   0:00 [cpuhp/0]
root        15  0.0  0.0      0     0 ?        S    15:51   0:00 [cpuhp/1]
root        16  0.0  0.0      0     0 ?        S    15:51   0:00 [idle_inject/1]
root        17  0.0  0.0      0     0 ?        S    15:51   0:00 [migration/1]
root        18  0.0  0.0      0     0 ?        S    15:51   0:00 [ksoftirqd/1]
root        20  0.0  0.0      0     0 ?        I<   15:51   0:00 [kworker/1:0H-kb]
root        21  0.0  0.0      0     0 ?        S    15:51   0:00 [kdevtmpfs]
root        22  0.0  0.0      0     0 ?        I<   15:51   0:00 [netns]

La commande ci-dessus vous montrera tous les processus en cours d'exécution. Vous pouvez utiliser la commande grep avec la commande ps pour obtenir un PID d'un processus spécifique.

Par exemple, pour obtenir un PID d'un processus Apache, exécutez la commande suivante :

ps aux | grep apache

Vous obtiendrez le résultat suivant :

root      1309  0.0  0.0  73992  4748 ?        Ss   15:52   0:00 /usr/sbin/apache2 -k start
www-data  1310  0.0  0.0 1285068 4620 ?        Sl   15:52   0:00 /usr/sbin/apache2 -k start
www-data  1311  0.0  0.0 1285068 4644 ?        Sl   15:52   0:00 /usr/sbin/apache2 -k start

Vous pouvez également utiliser le pidof commande pour obtenir un PID d'un processus spécifique.

pidof apache2

Vous obtiendrez le résultat suivant :

1311 1310 1309

Tuer un processus sous Linux

À ce stade, vous savez comment obtenir le PID de n'importe quel processus. Maintenant, vous pouvez utiliser la commande kill pour tuer un processus en cours d'exécution.

Pour tuer un seul processus, exécutez la commande suivante :

kill PID

Ou

kill -9 PID

Pour tuer plusieurs processus, exécutez la commande suivante :

kill -9 PID1 PID2 PID3

Vous pouvez également tuer les processus par leurs noms. Vous pouvez utiliser le pkill commande pour tuer un processus par son nom.

Pour tuer le processus Apache, exécutez la commande suivante :

pkill apache2

Vous pouvez également utiliser le killall commande pour tuer un processus par son nom :

killall mysqld

Conclusion

Dans cet article, nous avons expliqué comment rechercher et tuer un processus sous Linux. Vous pouvez maintenant tuer vous-même tous les processus qui ne répondent pas sans redémarrer votre serveur. Essayez-le sur l'hébergement VPS d'Atlantic.Net !


Linux
  1. Comment tuer un processus zombie sous Linux

  2. Comment définir des limites sur les processus d'exécution de l'utilisateur sous Linux

  3. Linux - Comment identifier quelle distribution Linux est en cours d'exécution ??

  4. Comment tuer un processus sous Linux en utilisant la commande ?

  5. Comment tuer un processus en cours d'exécution sur un port particulier sous Linux ?

Comment trouver et tuer les processus en cours d'exécution sous Linux

Comment tuer le processus Linux en cours d'exécution sur un port particulier

Comment tuer un processus sous Linux

Comment tuer les processus zombies dans Ubuntu

Comment tuer les processus sous Linux en utilisant kill, killall et pkill

Comment tuer les processus MySQL dans phpMyAdmin