Как убить процесс в Linux
Иногда процесс или приложение могут вызывать проблемы на компьютере с Linux. Когда это произойдет, вам нужно будет знать, как остановить своенравный процесс.
Были ли у вас когда-нибудь сбои в работе приложения? Конечно, да. Это случается с каждым, независимо от операционной системы, на которой установлено приложение. Когда это произойдет, что вы будете делать? Перезапустить операционную систему?
Нет. Это следует рассматривать только как последнюю попытку.
Когда приложение выходит из строя, вместо перезагрузки компьютера в Linux вы можете просто использовать команду, чтобы завершить связанный процесс (поскольку каждое приложение и служба на вашем компьютере с Linux запускаются как процесс).
Большинство сред рабочего стола Linux включают в себя инструмент с графическим пользовательским интерфейсом, благодаря которому завершить процесс можно простым выбором процесса, а затем нажатием кнопки «Уничтожить».
Завершение процесса из графического интерфейса рабочего стола Pop!_OS.
Это все хорошо, но что происходит, когда вы не можете получить доступ к графическому интерфейсу, потому что вышедший из-под контроля процесс поглощает вашу системную память? Вот тогда вы обращаетесь к командной строке.
Я собираюсь показать вам два простых способа завершить процесс Linux из командной строки. Вы будете удивлены, насколько это на самом деле просто.
Как использовать команду kill
1. Использование команды kill
Первый метод, который я вам покажу, использует команду kill. Команда kill убивает процессы по их PID (идентификатору процесса). Типичная команда уничтожения выглядит так:
kill PID
Где PID — это идентификатор рассматриваемого процесса.
2. Как убить Firefox с помощью команды kill
Вы, вероятно, спрашиваете себя: «Где мне найти PID?» Хороший вопрос. Вот как. Допустим, проблемным приложением является веб-браузер Firefox. Чтобы завершить работу Firefox с помощью команды kill, откройте окно терминала и найдите PID с помощью:
ps aux |grep firefox
Разбивка приведенной выше команды проста:
- ps: сообщает снимок запущенных в данный момент процессов.
- aux: снимает ограничение «только вы» в стиле BSD, а также ограничение «должен иметь tty» в стиле BSD и отображает все процессы в списке пользователей.
- |: Передать вывод ps следующей команде (в данном случае grep).
- grep сопоставляет только процесс со следующей строкой.
- firefox процесс, который мы ищем.
Конечно, в случае с Firefox вы увидите процесс для каждой открытой вкладки. Чтобы действительно убить Firefox, вам нужно найти PID самого первого из перечисленных. Этот список будет выглядеть примерно так:
jack 21960 7.6 2.5 14450944 825944 ? SNl Jun12 122:44 firefox
PID — это первое число (справа от имени пользователя). Итак, для приведенного выше примера команда kill будет такой:
kill 21960
Приведенная выше команда должна убить Firefox.
Как использовать команду killall
1. Использование команды killall для Firefox
Этот метод значительно проще. Вместо использования PID процесса вы используете имя процесса. Итак, если мы хотим завершить процесс с именем Firefox, команда будет такой:
killall firefox
Если вы хотите быть в безопасности, вы можете заставить killall подтвердить, что вы хотите отменить команду, используя интерактивную опцию, например:
killall -i firefox
Ответьте y на вопрос, и процесс Firefox будет завершен.
Хотите верьте, хотите нет, но вот как легко убить вышедший из-под контроля процесс (или любой другой процесс, если уж на то пошло) в Linux. Да, для каждой из этих команд доступно больше опций, но то, что я изложил выше, поможет вам начать. Чтобы узнать больше о каждой команде, прочтите справочные страницы man kill и man killall.