Как убить все процессы в Linux

15

Я хочу убить все процессы на моем компьютере. Какую команду я могу использовать для этого?

Der Hochstapler
источник
4
Все процессы? sudo reboot
Стивен
1
Вы говорите о процессах, принадлежащих вам, или обо всех процессах в работающей в данный момент системе?
Дж. Полфер
3
@Stephen - тогда он / она только что закончил бы с перезапуском всех процессов, и это последнее, что вы хотите, когда вы хотите, чтобы они все УМЕРЛИ!
x3ja

Ответы:

29

shutdown -h now


источник
9
Хорошо, процессы остановились, и компьютер тоже. Этот ответ подобен ответу «как перестать беспокоиться» с «самоубийством».
Андрей
28

Команда killall5 -9принудительно завершит все запущенные процессы, кроме вашей оболочки входа в систему, init и специфичных для ядра процессов.

Более подробная информация здесь: http://linux.about.com/library/cmd/blcmdl8_killall5.htm

rakuo15
источник
Хорошо, я сделал это, и теперь мой компьютер находится в непрерывном цикле, где он запрашивает пароль, переходит на рабочий стол, возвращается в оболочку входа и снова запрашивает пароль. Как мне выйти из этого?
Махати Вемпати
Ссылка теперь направлена ​​на другую тему.
fixer1234
8

Вы можете убить все процессы данного пользователя, используя один из них:

killall -u username

или

pkill -u username

или вы можете использовать числовой UID вместо имени пользователя.

Остерегайтесь того, что killallфункционирует иначе (аналогично killall5) в некоторых системах, таких как Solaris.

Приостановлено до дальнейшего уведомления.
источник
8

Самый простой способ - использовать ключ Magic SysRq : Alt+ SysRq+ i. Это убьет все процессы, кроме init.

Alt+ SysRq+ oвыключит систему (также убивает init).

Обратите внимание, что вам может понадобиться сначала установить клавиатуру в режим XLATE: Alt+ SysRq+r

Также обратите внимание, что на некоторых современных клавиатурах вы должны использовать, PrtScа не SysRq.

SML
источник
Обратите внимание, что для безопасной перезагрузки рекомендуется использовать Alt + Shift + SysRq + reisub .
10
7

В некоторых дистрибутивах Linux вы можете переключиться на Run Level 0 - который, я думаю, остановлен, но все еще включен:

sudo telinit 0

Я на самом деле слышал о том, что это используется для выделенных серверов брандмауэра, поскольку он поддерживает загрузку некоторых необходимых низкоуровневых компонентов ядра, таких как iptables ... странно, а? Смотрите здесь для получения дополнительной информации.

Чтобы увидеть, какие дистрибутивы делают на каждом уровне запуска, посмотрите здесь .

x3ja
источник
1
Когда я переключаю свой компьютер на уровень запуска 0, он фактически выключается ...
Дэвид З,
1
Кажется, это зависит от вашего вкуса Linux - en.wikipedia.org/wiki/Runlevel#Linux - немного отредактирует мой ответ.
x3ja
4

Чтобы убить все процессы, принадлежащие текущему пользователю, вы можете сделать:

ps x | awk {'print $1'} | xargs kill

Это, конечно, также убьет оболочку, с которой вы в данный момент вошли. Если вы не хотите такого поведения, попробуйте ответ raku015.

Обратите внимание, что если вы запустите это как пользователь root, произойдут плохие вещи.

БДК
источник
4

Самый быстрый и надежный способ убить все процессы - отсоединить шнур питания от стены.

Даг Харрис
источник
2
FTFY: s / proof / ish /
Крис Нава
4
:-) Это вопрос мнения. ОП не указывал, какая цель была за пределами «убить все процессы». Я думаю, что было бы глупо иметь какую-либо команду, чтобы убить все процессы.
Даг Харрис
2
Я согласен. Не говоря уже о том, что в файловой системе также сложно убить такую ​​мощность.
Крис Нава
2
И извлеките аккумулятор, если это ноутбук.
Кит Томпсон
1
И заключить его в цемент, чтобы убедиться, что на нем никогда не запускались новые процессы?
Мокубай
2

Вы также можете использовать следующую команду kill.

убить -15 -1

thegeek
источник
1

Я бы использовал команду ниже. (Это тот, который я использую, когда застрял)

kill -9 -1

Это убьет все процессы. Мое окружение - Ubuntu. Если я наберу это в терминале, он закроет все процессы и выведет вас на экран входа в систему (почти как выход из системы)

Менука Ишан
источник
Это почти совпадает с ответом, который также говорит kill -9 -1плюс еще одна строка уничтожения - действительно ли ваш ответ похож на другой ответ, или он может быть в комментарии к другому ответу?
Xen2050
0
kill -9 -1 
kill -kill 0
0fnt
источник
Я не уверен , что вы получите время , чтобы убить типа -KILL 0 после первой команды
Menuka ISHAN