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

Задачи в Linux называются процессами. Каждый процесс имеет уникальный идентификатор. Чтобы завершить его в Linux, мы можем использовать команду kill. В этом руководстве мы покажем вам, как убить процесс в Linux, чтобы улучшить свои навыки управления VPS.
Иногда вы можете запустить сервер или приложение, забыть о нем и вам нужно его выключить. В таких сценариях мы можем использовать команду kill.
Ниже приведены несколько примеров, в которых может оказаться полезной команда kill:
  • Чтобы остановить любой автоматизированный процесс
  • Чтобы остановить процесс, который был запущен случайно
  • Чтобы остановить процесс, который потребляет много памяти
  • Чтобы принудительно остановить любой процесс, запущенный в Linux
  • Чтобы остановить фоновый процесс
Помимо остановки процесса, команда kill может предоставлять несколько функций. Например, послать сигнал процессу. По умолчанию это воспринимается как сигнал TERM, который завершает процесс.

Как показать идентификатор процесса в Linux

Команды Kill позволяют завершить процесс, используя определенный идентификатор процесса, также известный как pid. Чтобы показать pid в Linux, вы можете выполнить следующую команду:
ps
Это перечислит все доступные процессы с pid. Если вы хотите сделать свой список более конкретным - добавьте команду grep, например:
ps -ux | grep java
Это отобразит все запущенные java-процессы на выходе.

Как показать все сигналы команды уничтожения

В Linux доступно несколько сигналов, которые можно использовать для прерывания, завершения или приостановки процессов. Команду можно использовать, как показано ниже:
kill -l
Эта команда отобразит на странице руководства информацию о различных сигналах уничтожения с их именами и соответствующими номерами. Хотя доступно несколько сигналов, в большинстве случаев мы будем использовать SIGKILL (9) и SIGTERM (15).

Как убить процесс в Linux с помощью терминала

Теперь мы готовы двигаться дальше и изучать различные способы использования команды «Убить». Чтобы продолжить, войдите на свой VPS-сервер с помощью SSH.

Использование команды Kill с PID

Чтобы убить определенный процесс с помощью PID, используйте следующую команду:
kill 63772
Здесь 63772 - это идентификатор процесса, который мы хотим завершить. Поскольку сигнал не указан, это будет сигнал SIGTERM . Иногда это может не сработать; в этом случае вам, возможно, придется принудительно убить процесс.
В таких случаях вы можете использовать формат команды, как показано ниже:
kill [Signal_or_Option] pid
Ниже приведен пример команды для принудительного завершения процесса:
kill SIGKILL 63772
Точно так же, чтобы убить, используя более короткий вариант, вы можете использовать:
kill -9 63772
Замените 63772 соответствующим pid для прекращения процесса.

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

С помощью той же команды вы можете убить несколько процессов. Синтаксис этой команды будет следующим:
kill -9 pid1 pid2 pid3
Вот пример, показывающий, как это будет выглядеть в реальном мире:
kill -9 63772 45116 23465

Как убить процесс в Linux с помощью команды Pkill

Pkill - это разновидность команды kill, в которой вы можете указать имя процесса или шаблон для поиска процесса:
pkill chrome
Приведенная выше команда убьет браузер Chrome. Вы также можете указать частичное совпадение имени в командной строке, например:
pkill chr
Однако эта команда может иногда убить неправильный процесс, особенно когда существует несколько процессов с одинаковым именем.
Вы можете проверить список, указав полное имя процесса:
pidof chrome
Вышеупомянутую команду можно использовать, если вы знаете полное имя процесса.
Вы можете проверить соответствие процессов, используя частичное имя:
pgrep -l chr
Эта команда выведет список процессов с соответствующим идентификатором процесса.

Как убить процесс в Linux с помощью команды Killall

Основное различие между killall и kill заключается в том, что killall может завершить процесс по имени, в то время как команда kill использует pid.
Пример такой команды:
killall chrome
Это похоже на pkill. Однако killall выполняет точное совпадение имени, а pkill может выполнять сопоставление с шаблоном. Это одна из причин, по которой killall безопаснее, чем pkill.
Еще одно отличие - это корневой пакет, которому принадлежат эти команды. В Linux killall принадлежит пакету psmisc. С другой стороны, такие команды, как ps, top, kill, pkill, принадлежат пакету procps.
Другое отличие состоит в том, что killall можно настроить для завершения процессов на основе временных меток. Если вы хотите убить процесс, который работал менее 40 минут, вы можете использовать:
killall -y 40m [Process_Name>]
Вы также можете использовать следующие параметры вместе с командой killall:
  • s - секунды
  • м - минуты
  • ч - часы
  • d - дни
  • w-недели
  • M - месяцы
  • y - годы

Добавить комментарий

Автору будет очень приятно узнать обратную связь о своем руководстве.

Комментариев 0