Bsdadmin.ru

Записки администратора FreeBSD

Путь на сайте

Домашняя Mans FreeBSD по-русски kill - отправка сигналов процессам

kill - отправка сигналов процессам

НАЗВАНИЕ

kill - отправка сигналов процессам

СИНТАКСИС

kill [-s имя_сигнала] pid ...

kill -l [код_завершения]

kill -имя_сигнала pid ...

kill -номер_сигнала pid ...

ОПИСАНИЕ

 

Программа kill используется для управления работающими процессами по их PID, с помощью отправки им управляющих сигналов.

Пользователь root, может управлять любыми процессами, в том числе и процессами других пользователей.

Если не указано символическое имя или номер сигнала, отправляется сигнал TERM.

Возможны следующие опции:
-s имя_сигнала
Данная опция позволяет отправить сигнал процессу, используя его символическое имя.
По-умолчанию отправляется сигнал TERM.

На самом деле, эту опцию можно опускать, устанавливая только знак "-" перед именем
или номером сигнала, например: -HUP или -1.

-l [код_завершения] 

Без указания операнда, выведет имена сигналов. Иначе, покажет имя сигнала,
соответствующего указанному коду_завершения. 

-имя_сигнала

Указать символическое имя сигнала, для отправки процессу.

-номер_сигнала

Указать сигнал по его числовому значению ( только положительное число )

Следующие PID имеют специальное значение.

-1 

При выполнении пользователем root, отправляет сигнал всем процессам,
иначе всем процессам принадлежащим данному пользователю.
Ниже представлены самые часто-используемые сигналы, имеет смысл, запомнить их:

 

1 HUP (hang up) - отбой

2 INT (interrupt) - прерывание

3 QUIT (quit) - выход

6 ABRT (abort) - аварийное завершение

9 KILL (non-catchable, non-ignorable kill) - безусловное уничтожение

14 ALRM (alarm clock) - будильник

15 TERM (software termination signal) - програмное завершение

 Некоторые системные оболочки имеют встроенную команду kill с идентичным или похожим функционалом. За дополнительной информацией обратитесь к справочному руководству
man buildin(1). При успешном завершении, программа kill, возвращает 0, иначе >0.

Примеры использования:

Многие демоны, реагируют на сигнал HUP, перечитыванием конфигурационного файла,
 без прерывания работы. Например, у нас работает некий демон с PID 123, мы, не прерывая
 его работы, вносим изменения в конфигурационный файл. Что-бы работающий демон принял
 эти изменения, отправляем ему сигнал HUP.

kill -HUP 123
или
kill -1 123

Что-бы безусловно завершить процесс ( например в случае его зависания ), используем сигнал KILL, или 9 в числовом эквиваленте. 

Сигнал KILL не перехватывается, уничтожение процесса происходит на уровне операционной системы.
kill -9 123
Кроме того можно управлять группой процессов по их PGID:
kill -TERM -PGID

Смотри так-же:
builtin(1), csh(1), killall(1), ps(1), kill(2), sigaction(2)

Домашняя Mans FreeBSD по-русски kill - отправка сигналов процессам