Главная arrow Администрирование arrow FreeBSD, Linux, ... arrow FreeBSD: процессы, демоны и сигналы Thursday, November 23 2017  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:

FreeBSD: процессы, демоны и сигналы Версия для печати
Написал microsin   
29.02.2008

Каждая программа (в том числе и демон), запущенная на BSD, порождает как минимум один процесс.

Каждый процесс имеет уникальный номер PID. Процессы, не требующие интерактивного общения с пользователем в консоли и работающие в фоновом режиме, называются демонами. Обычно имя демона оканчивается на 'd', например, named. 

Всем процессам (в том числе и демонам) с помощью команды kill можно посылать сообщения. Сообщения могут быть следующие (имена сигналов могут быть без префикса SIG):
 SIGSEGV  нарушение сегментации памяти
 SIGALRM  уведомление по истечении определенного периода времени
 SIGTERM  сообщение мягкого завершения процесса (может быть проигнорировано процессом)
 SIGKILL  сообщение жесткого завершения процесса
 SIGHUP  сообщение обычно используется для обновления установок (смотрите доку к приложению)
 SIGUSR1  (смотрите доку к приложению)
 SIGUSR2  (смотрите доку к приложению)

Пример использования kill для посылки сообщения (обновление изменений конфигурации демона inetd. Команда grep(1) используется для поиска по заданной строке в выходном потоке. Эта команда запускается под обычным пользователем, а inetd(8) под root, поэтому ps(1) должна быть запущена с параметром ax):
% ps -ax | grep inetd
  198  ??  IWs    0:00.00 inetd -wW
%su
Password:
# /bin/kill -s HUP 198
Гарантированное уничтожение процесса по его идентификатору (-9 означает сигнал KILL):
# kill -9 идентификатор                
Гарантированное уничтожение процесса по его идентификатору (опция -s позволяет использовать имена сигналов):
# kill -s KILL идентификатор

Напомню, что идентификатор процесса можно узнать командой ps:
# ps
# ps -ax | grep mpd

Для загрузки системамы процессами удобно использовать программу top. Кроме загрузки процесора, показывается утилизация памяти.

Есть также удобная команда killall, которая удаляет процесс по имени. Вот так посылается сигнал SIGHUP демону syslogd:
# killall -e -HUP syslogd

Последнее обновление ( 29.02.2008 )
 

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

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2017