web-dev-qa-db-fra.com

Comment puis-je tuer les processus dans Ubuntu?

Comment puis-je tuer tous les processus exécutés par mon propre compte non root?

J'ai quelques processus smbd en rotation que j’ai causés à partir de ma machine Windows et j’ai donc téléphoné sur le serveur Linux et je veux arrêter ces processus en rotation. Je n'ai pas le droit de redémarrer des services ou de redémarrer la machine.

146
djangofan

Pour tuer tous les processus que vous êtes autorisé à tuer, lancez simplement la commande

kill -15 -1 ou kill -9 -1 en fonction du comportement souhaité (utilisez man kill pour plus de détails)

Pour tuer un processus spécifique, par exemple, firefox, exécutez simplement

pkill firefox ou killall firefox en fonction du comportement souhaité: Quelle est la différence entre 'killall' et 'pkill'?

Si vous voulez voir quels processus sont en cours, utilisez la commande

ps -ef

Si vous voulez rechercher tous les processus par utilisateur bob, cela pourrait aider

pgrep -l -u bob

ou

ps -ef | grep bob
167
ste_kwr

Utilisez Sudo kill <pid> ou Sudo killall <process-name>

53
Chris Wayne

Essayons quelque chose de plus:

Sudo apt-get install htop 

La commande top est le moyen traditionnel de visualiser l’utilisation des ressources de votre système et de voir les processus qui utilisent le plus de ressources système. Top affiche une liste de processus, ceux qui utilisent le plus de CPU en haut.

htop affiche les mêmes informations avec une présentation plus facile à comprendre. Il vous permet également de sélectionner des processus avec les touches fléchées et d'effectuer des actions, telles que les tuer ou modifier leur priorité, avec le bouton F clés.

20
Fantomas

Vous pouvez utiliser

ps -ax | grep application name 

Si votre recherche de type firefox dans le terminal, telle que ps -ax | grep firefox, indique l'ID de processus de l'application correspondante. Vous pouvez arrêter cette application à l'aide de la commande kill si le processus id = 1317,

kill -9 1317
16
Xman Classical

Je voudrais utiliser xkill. Entrez xkill dans un terminal et cliquez sur dans la fenêtre ou entrez xkill et l'ID du processus pour le terminer.

Plus d'informations sur xkill sur x.org.

13
Alvar

Pour essayer de tuer tous les processus appartenant à un utilisateur usernamename__, exécutez:

pkill -U username
9
user129146

Je diviserais votre problème en 2 parties:

1) Comment puis-je trouver les processus commencés par moi? Lance ça:

ps -u `whoami`

whoamiest juste au cas où vous ne connaissez pas le nom du compte que vous utilisez, sinon tapez simplement le nom du compte sans les guillemets.

Ceci listera tous les processus pouvant être supprimés par votre compte.

2) La commande pslistera le numéro du processus, le TTY, l'heure et CMD. L'ID de processus est la première colonne. Utilisez ce nombre pour tuer le processus. Soyez prudent tout en tuant le processus. Vous pourriez casser quelque chose si vous tuez le mauvais processus. Pour tuer un processus, vous utiliserez la commande killname__, qui envoie un signal au processus. Le signal indique ce que le processus doit faire. Par exemple, envoyer un -1 au processus lui demandera de recharger le fichier de configuration; envoyer un -2 équivaut à appuyer sur les touches Ctrl + C de ce processus; -9 amènera le noyau à abandonner le processus sans le communiquer au processus.

Supposons que ps -u whoamirenvoie quelque chose comme

  PID TTY          TIME CMD
 4333 pts/1    00:00:00 fish
 4335 ?        00:00:00 fishd
 4816 ?        00:00:00 intellij
 4868 ?        00:50:42 Java
 4939 ?        00:00:19 fsnotifier64
 7667 ?        02:49:08 firefox
 7698 ?        00:00:00 unity-webapps-s

Et vous vouliez tuer le processus firefoxpar son identificateur de processus, puis vous feriez:

kill -1 7667

Ensuite, vous réexécuteriez la même commande pset vérifieriez si le processus était toujours en cours d'exécution. Si cela fonctionne toujours, alors faites un

kill -2 7667

en travaillant jusqu'à -9.

Pour supprimer tous les processus lancés par votre compte, entrez kill <level> -1. Comme auparavant: travaillez jusqu'à -9.

Si vous connaissez le nom du processus, vous pouvez simplement aller à killall <processname>, où est ce que vous essayez de tuer. Par exemple: killall fish (le poisson, en ce sens, est le shell interactif convivial).

La documentation pour killallest disponible à l’adresse suivante: http://manpages.ubuntu.com/manpages/hardy/man1/killall.1.html

6

Avec cette application, vous pouvez voir les listes de programmes

installer htop

Sudo apt-get install htop

pour voir le processus et tuer le processus Vous pouvez l'installer et simplement supprimer

enter image description here

3
Reza Bojnordi

... Tous les processus sous Linux répondent aux signaux. Les signaux sont un moyen au niveau os de dire aux programmes de mettre fin ou de modifier leur comportement.

Comment envoyer des signaux de processus par PID

Le moyen le plus courant de transmettre des signaux à un programme consiste à utiliser la commande kill.

Comme on pouvait s'y attendre, la fonctionnalité par défaut de cet utilitaire est de tenter de tuer un processus:

kill PID_of_target_process

Cela envoie le signal TERM au processus. Le signal TERM indique au processus de bien vouloir terminer. Cela permet au programme d'effectuer des opérations de nettoyage et de sortir en douceur.

Si le programme se comporte mal et ne se ferme pas lorsque le signal TERM est donné, nous pouvons escalader le signal en transmettant le signal KILL:

kill -KILL PID_of_target_process

C'est un signal spécial qui n'est pas envoyé au programme.

Au lieu de cela, il est donné au noyau du système d'exploitation, qui ferme le processus. Ceci est utilisé pour contourner les programmes qui ignorent les signaux qui leur sont envoyés ...

2
jackal404258

J'ai écrit un petit script que j'ai écrit pour tuer (dans mon cas) Skype:

kill -s 9 `ps aux | grep skype | head -n 1 | cut -f4 -d" "`

Mais j’ai trouvé que, même si cela fonctionnait à l’époque, cela ne fonctionnait pas le lendemain car le pid avait une longueur différente et que la quantité d’espaces était différente.

Puis je suis tombé sur ce site et j'ai essayé

pgrep -l -u justin

qui sort commodément les processus dans le format

[pid] [name]

J'ai donc ajusté mon code dans le script à ceci:

kill -s 9 `pgrep -l -u justin | grep skype | cut -f1 -d" "`

Cela a pour effet de canaliser tous les processus que justinest en cours d'exécution (qui peut être remplacé par n'importe quel nom d'utilisateur) vers grepqui recherche skype(cela peut être changé en votre processus), puis dirige cette ligne vers cutqui lit ensuite le PID et utilise finalement ce PID dans la commande killpour le tuer.

2
justingiffard

Voici un simple script python que j'ai écrit, killProcess.py, qui accepte n'importe quoi comme entrée et le tue.

J'ai écrit ce script car j'ai beaucoup de processus python ou de nœuds que je souhaite supprimer individuellement et par programme. Je ne peux pas utiliser "killall python" car cela arrêtera les processus dont j'ai besoin pour continuer à fonctionner.

Nommez le fichier "killProcess.py", puis ajoutez le nom du script que vous souhaitez arrêter. Exemple: python killProcess.py runnablePoller.py va tuer le fichier runnablePoller.py.

import os;
import sys;
for arg in sys.argv:
    if(arg!="killProcess.py"):
        process=arg;
        print(process);
processes =os.popen("ps -ef | grep "+process).read();
processes=processes.split("\n");
processes=processes[0].split(" ");
#print(processes);
for p in processes:
    try:
        pid=int(p);
        print(pid); 
        break;
    except:
        continue;

os.system("kill "+str(pid));
1
nick carraway

J'ai utilisé la procédure suivante pour tuer un processus dans Ubuntu ::

Étape 1: Obtenez le pid du processus en utilisant grep ou vous pouvez utiliser -C also ::

ps aux | -C 'filename'

ou

ps -ef | -C 'filename'

ou

ps aux | grep 'filename'

ou

ps -ef | grep 'filename' 

Étape 2: notez le numéro de pid.

Étape 3: Utilisez la commande 'kill' avec le numéro de pid:

kill pidnumber
0
Akash Kandpal

Ctrl+Alt+Delete peut être configuré pour vous donner accès au gestionnaire de tâches, à partir duquel il est facile de tuer des processus en quelques clics, et pour moi, moins d’obligation de se souvenir des commandes qui pourraient être dommageables si elles étaient mal faites:

http://ubuntuhandbook.org/index.php/2013/07/use-ctrl-alt-del-task-manager-ubuntu/

https://www.itsmarttricks.com/a-guide-to-kill-pkill-and-killall-commands-to-stop-the-process-in-linux-kill-process-linux/ =

0
Cedric Eveleigh