Équivalent de "End Process" sur Linux


6

Actuellement, j'utilise le moniteur système de gnome. C'est comme un gestionnaire de tâches, et a une fonction pour mettre fin au processus, mais parfois, tout se bloque et se bloque. Est-il possible de terminer complètement un processus avec une ligne de commande plus rapidement?

Réponses:


11

Essayez xkill, il y a une applet que vous pourriez mettre sur votre panneau. Il vous suffit de cliquer dessus, puis de cliquer sur la fenêtre d'application que vous souhaitez supprimer et tout disparaît instantanément. Très utile.


2
+1 kill -9 peut parfois laisser un désordre derrière et est très rarement nécessaire. xkill et killall <appname> sont beaucoup plus pratiques pour une utilisation quotidienne et donnent aux processus une chance de capter le signal et de nettoyer.
jtb

c'est génial, merci beaucoup.

14

Vous recherchez le tuer commander

pour mettre fin à un processus "complètement" comme vous l'avez demandé, vous pouvez utiliser kill comme ceci:

kill -9 PID

bien que cela puisse avoir des effets indésirables et laisser des fichiers temporaires, vous devriez essayer d’envoyer d’abord le signal de fin:

kill -TERM PID

PID est l'id du processus que vous souhaitez tuer. L'utilisation de l'option -9 annulera le processus, peu importe ce que vous devez faire. Vous pouvez déterminer le PID d’une application en utilisant le ps commander. Si le processus est suspendu, il utilisera probablement pas mal de ressources, vous le verrez donc également en haut de la liste à l'aide de la commande top commander. Le moniteur du système devrait même vous dire le PID.

Vous pouvez également utiliser quelque chose comme ceci pour déterminer le PID:

ps -ax | grep program_name

le numéro à l'extrême gauche devrait être le PID.


5
Il faut toujours mentionner que l’on devrait essayer d’abord «kill -TERM». Cela donne au processus une chance de se nettoyer lui-même, tandis que "kill -KILL" amène le système d'exploitation à terminer le processus rapidement. Des fichiers temporaires peuvent être laissés et d'autres désagréments mineurs peuvent survenir.
dmckee

par pleinement je suppose qu'il voulait dire rapidement mais c'est vrai.
John T

Le processus final "Moniteur système GNOME" est en cours d'exécution kill.
quark

2
-TERM est la valeur par défaut. vous pouvez simplement taper kill PID
bdonlan

Sous Linux, il existe également la commande killall, qui vous permet de spécifier le programme par son nom plutôt que par son PID.
nos

7

Vous pouvez utiliser kill pour envoyer le signal souhaité à l'ID de processus. Vous pouvez trouver l’ID de processus avec pgrep et envoyer un signal à un processus nommé avec pkill . Le modèle utilisé pour rechercher le processus avec pgrep et pkill ne correspond normalement qu'au nom du processus. Spécifiez -f pour vérifier l'intégralité de la ligne de commande du processus. Commencez avec un signal TERM (valeur par défaut si aucun signal n'est spécifié) avant d'utiliser KILL ('9'), car tuer complètement un processus peut avoir des effets secondaires indésirables.

Par exemple, je vais utiliser le processus dhclient3 sur mon système.

À l'ancienne façon, ps | grep:

$ ps awux | grep dhclient3
root      2539  0.0  0.1   2200   220 ?        S<s  Jul28   0:00 dhclient3 -pf /var/run/dhclient.eth0.pid -lf /var/lib/dhcp3/dhclient.eth0.leases eth0
1000     12734  0.0  0.5   3184   732 pts/3    R+   21:58   0:00 grep dhclient3

Tuez le client:

$ kill -9 2539

Avec pgrep / pkill:

$ pgrep dhclient
2539

Avec -f pour spécifier un motif n'importe où dans la ligne de commande:

$ pgrep -f leases
2539

Tuez le processus dhclient avec pkill (signal before -f pattern):

$ pkill -f dhclient3
$ pkill -9 -f dhclient3

À propos des signaux (à partir de la page de manuel kill):

Le signal par défaut pour kill est TERM. Utilisez -l ou -L pour lister disponible   signaux. Les signaux particulièrement utiles incluent HUP,   INT, KILL, STOP, CONT et 0. Des signaux alternatifs peuvent être spécifiés dans   trois façons: -9 -SIGKILL -KILL. Valeur négative du PID   Les outils peuvent être utilisés pour choisir des groupes de processus entiers; voir le PGID   colonne dans la sortie de la commande ps. Un PID de -1 est spécial; il   indique tous les processus sauf le processus de suppression proprement dit et init.


Ne prenez pas l'habitude d'utiliser kill -9, il vaut mieux demander au processus de se terminer normalement (le signal -TERM par défaut)
nos

1
ah, pkill est exactement ce que je cherchais comme un killall plus puissant, et la recherche de killall m’a amené à cette question. Superutilisateur roches.
Dickon Reed

1

Je fais habituellement:

ps -feax | grep "TaskNameHere"

Ce qui retourne le PID de la tâche

ensuite

kill -9 the_process_id

-1 pour ne pas utiliser kill -TERM the_process_id
Andrew Scagnelli

@UNE. Scagnelli: :)
OscarRyz

1

J'aime utiliser tuer tous comme cela vous permettra de naviguer parmi les noms du processus en cours et si vous utilisez zsh, cela vous donnera une belle liste de processus en cours. Commencez par la première lettre du processus que vous voulez tuer et appuyez sur Tab.

killall fi

cliquer sur l'onglet montrera que j'ai «firefox» disponible. répétez la commande et si elle indique quelque chose sur le fait qu'aucun processus n'a été tué, alors vous aurez accompli votre tâche.


0

Notez que si le processus modifié est une fenêtre, vous avez un "bouton" pour ajouter dans la barre d’outils Gnome, pour terminer un processus (vous cliquez dessus, puis sur la fenêtre concernée).

modifier : " Forcer à quitter "est le nom de celui-ci


0

Tu veux psdoom . Ceci est un jeu de tir à la première personne dans lequel les monstres sont associés à un pid. Tuer un monstre envoie un SIGKILL au processus associé. Ce n'est peut-être pas le moyen le plus efficace de tuer un processus, mais c'est peut-être le plus divertissant.


0

Je voudrais aussi ajouter xkill. Lorsque vous appelez cela depuis un terminal (ou une invite de commande d'exécution), votre curseur se transforme en icône représentant un crâne ou une croix, ou une icône "X". Et puis la prochaine fois que vous cliquerez sur une fenêtre (n'importe quelle fenêtre), cette application sera tuée.

J'ai trouvé cette commande un peu plus intuitive et conviviale.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.