Parlez-vous des processus qui vous appartiennent ou de tous les processus du système en cours d'exécution?
J.Polfer
3
@Stephen - alors il / elle finirait avec tous les processus en cours de redémarrage et c'est la dernière chose que vous voulez quand vous les voulez tous MORTS!
D'accord, les processus se sont arrêtés, tout comme l'ordinateur. Cette réponse est comme répondre à «comment arrêter de s'inquiéter autant» par «suicide».
Andrew
29
La commande killall5 -9mettra fin de force à tous les processus en cours d'exécution à l'exception de votre shell de connexion, init et des processus spécifiques au noyau.
OK, je l'ai fait, et maintenant ma machine est sur une boucle continue où elle me demande le mot de passe, va sur le bureau, revient au shell de connexion et demande à nouveau le mot de passe. Comment en ressortir?
Mahathi Vempati
Le lien renvoie maintenant à un sujet différent.
fixer1234
8
Vous pouvez tuer tous les processus d'un utilisateur donné en utilisant l'un de ceux-ci:
killall -u username
ou
pkill -u username
ou vous pouvez utiliser l'UID numérique au lieu du nom d'utilisateur.
Attention, cela killallfonctionne différemment (de la même manière que killall5) sur certains systèmes comme Solaris.
Veuillez noter qu'il est recommandé d'utiliser Alt + Shift + SysRq + reisub pour un redémarrage en toute sécurité.
l0b0
7
Dans certaines distributions Linux, vous pouvez passer au niveau d'exécution 0 - qui, je pense, est arrêté, mais toujours activé:
sudo telinit 0
J'ai en fait entendu parler de cela étant utilisé pour des serveurs de pare-feu dédiés car il garde certains des trucs de noyau de bas niveau nécessaires chargés comme iptables ... bizarre hein? Voir ici pour plus d'informations.
Pour voir quelles distributions font quoi à chaque niveau d'exécution, jetez un œil ici .
Pour tuer tous les processus appartenant à l'utilisateur actuel, vous pouvez:
ps x | awk {'print $1'} | xargs kill
Bien sûr, cela tuera également le shell à partir duquel vous êtes actuellement connecté. Si vous ne voulez pas ce comportement, essayez la réponse de raku015.
Notez que si vous l'exécutez en tant qu'utilisateur root, de mauvaises choses se produiront.
:-) C'est une question d'opinion. L'OP n'a pas précisé quel était l'objectif souhaité au-delà de "tuer tous les processus". Je pense qu'il serait stupide d'avoir une commande pour tuer tous les processus.
Doug Harris
2
Je suis d'accord. Sans oublier qu'il est également un peu difficile sur le système de fichiers de tuer le pouvoir comme ça.
Chris Nava
2
Et retirez la batterie s'il s'agit d'un ordinateur portable.
Keith Thompson
1
Et l'enfermer dans du ciment pour s'assurer qu'il n'a jamais lancé de nouveaux processus?
Mokubai
2
Vous pouvez également utiliser la commande kill suivante.
J'utiliserais la commande ci-dessous. (C'est celui que j'utilise quand je suis resté)
kill -9 -1
Cela tuera tous les processus. Mon environnement est Ubuntu. Si je tape ceci dans le terminal, cela fermera tous les processus et vous amènera à l'écran de connexion (presque comme déconnecté)
C'est presque identique à la réponse qui dit aussi kill -9 -1plus une autre ligne de mise à mort - votre réponse semble-t-elle vraiment être une réponse différente, ou devrait-elle être dans un commentaire à l'autre réponse?
sudo reboot
Réponses:
shutdown -h now
la source
La commande
killall5 -9
mettra fin de force à tous les processus en cours d'exécution à l'exception de votre shell de connexion, init et des processus spécifiques au noyau.Plus d'informations ici: http://linux.about.com/library/cmd/blcmdl8_killall5.htm
la source
Vous pouvez tuer tous les processus d'un utilisateur donné en utilisant l'un de ceux-ci:
ou
ou vous pouvez utiliser l'UID numérique au lieu du nom d'utilisateur.
Attention, cela
killall
fonctionne différemment (de la même manière quekillall5
) sur certains systèmes comme Solaris.la source
La manière la plus simple est d'utiliser la clé Magic SysRq : Alt+ SysRq+ i. Cela tuera tous les processus à l'exception de
init
.Alt+ SysRq+ oarrêtera le système (tuant également init).
Notez que vous devrez peut-être d'abord régler le clavier sur le mode XLATE: Alt+ SysRq+r
Notez également que sur certains claviers modernes, vous devez utiliser PrtScplutôt que SysRq.
la source
Dans certaines distributions Linux, vous pouvez passer au niveau d'exécution 0 - qui, je pense, est arrêté, mais toujours activé:
sudo telinit 0
J'ai en fait entendu parler de cela étant utilisé pour des serveurs de pare-feu dédiés car il garde certains des trucs de noyau de bas niveau nécessaires chargés comme iptables ... bizarre hein? Voir ici pour plus d'informations.
Pour voir quelles distributions font quoi à chaque niveau d'exécution, jetez un œil ici .
la source
Pour tuer tous les processus appartenant à l'utilisateur actuel, vous pouvez:
Bien sûr, cela tuera également le shell à partir duquel vous êtes actuellement connecté. Si vous ne voulez pas ce comportement, essayez la réponse de raku015.
Notez que si vous l'exécutez en tant qu'utilisateur root, de mauvaises choses se produiront.
la source
Le moyen le plus rapide et le plus infaillible de tuer tous les processus consiste à retirer le cordon d'alimentation du mur.
la source
Vous pouvez également utiliser la commande kill suivante.
la source
J'utiliserais la commande ci-dessous. (C'est celui que j'utilise quand je suis resté)
Cela tuera tous les processus. Mon environnement est Ubuntu. Si je tape ceci dans le terminal, cela fermera tous les processus et vous amènera à l'écran de connexion (presque comme déconnecté)
la source
kill -9 -1
plus une autre ligne de mise à mort - votre réponse semble-t-elle vraiment être une réponse différente, ou devrait-elle être dans un commentaire à l'autre réponse?la source
Redémarrez simplement la machine:
/ubuntu//a/187072/631292
la source