START-STOP-DAEMON(8)

ИМЯ
start-stop-daemon - запуск и остановка системных программ-демонов

ОБЗОР
start-stop-daemon -S|--start флаги [--] аргументы

start-stop-daemon -K|--stop флаги ...

start-stop-daemon -H|--help

start-stop-daemon -V|--version

ОПИСАНИЕ
start-stop-daemon используется для управления созданием и завершением системных процессов. Используя флаги --exec, --pidfile, --user, и --name, start-stop-daemon может быть настроен для поиска уже запущенных экземпляров процесса.

start-stop-daemon с флагом --start проверяет существование указанного процесса. Если такой процесс существует, start-stop-daemon ничего не делает и прекращает работу с кодом завершения 1 (или 0, если задан флаг --oknodo). Если же такой процесс не существует, то он запускается, используя либо исполняемый файл, заданный флагом --exec, либо флагом --startas, если он задан). Аргументы, заданные в командной строке после --, будут без изменений переданы запускаемой программе. Если указан флаг --retry, то start-stop-daemon станет отслеживать завершение процесса(ов).

start-stop-daemon с флагом --stop также проверяет существование заданного процесса. Если такой процесс существует, то start-stop-daemon посылает ему сигнал, заданный флагом --signal, и прекращает работу с кодом завершения 0. Если же такой процесс не существует, то start-stop-daemon прекращает работу с кодом завершения 1 (или 0, если задан флаг --oknodo).

ФЛАГИ

-x|--exec исполняемый_файл
    Проверяет процессы, которые являются экземплярами данного исполняемого файла (согласно /proc/pid/exe).

-p|--pidfile pid-файл
    Проверяет процессы, чьи идентификаторы процесса записаны в pid-файл.

-u|--user имя_пользователя|uid
    Проверяет процессы, принадлежащие пользователю, указанному с помощью имени_пользователя или uid.

-n|--name process-name
    Проверяет процессы с именем process-name (согласно /proc/pid/stat).

-s|--signal signal
    При использовании вместе с флагом --stop, задаёт сигнал, который будет послан процессам для их останова (по умолчанию 15).

-R|--retry тайм-аут|затем
    При использовании вместе с флагом --stop указывает, что start-stop-daemon должен проверять следить за правильным завершением процесса. Периодически будет проверяться, выполняются ли ещё указанные процессы, до тех пор, пока все они не завершатся. Если процессы не завершаются, то будет предпринято действие, заданное в параметре затем.

    Если вместо параметра затем указан тайм-аут, то используется последовательность действий сигнал/timeout/KILL/timeout, где signal -- это сигнал, заданный флагом --signal.

    Вообще, параметр затем -- это последовательность из не менее двух элементов, разделённых косой чертой (/); причём каждый элемент -- это либо -номер-сигнала или [-]название-сигнала, или тайм-аут, задающий количество секунд, в течение которых следует ждать завершения процесса, или же слово forever, предписывающее повторять остаток последовательности до предела, если нужно.

    Если достигнут конец последовательности действий, а forever не было указано, то start-stop-daemon прекращает работу с кодом завершения 2. Если параметр затем указан, то сигнал, заданный с помощью флага --signal, игнорируется.

-a|--startas полное_имя
    При использовании с флагом --start запускает процесс, указанный в параметре полное_имя. Если этот флаг не задан, то берётся аргумент, заданный флагом --exec.

-t|--test
    Напечатать действия, которые должны быть выполнены и установить соответствующий код завершения, но не выполнять эти действия.

-o|--oknodo
    Возвращать код 0 вместо 1, если не было выполнено (или не должно было быть выполнено) никаких действий.

-q|--quiet
    Не выдавать информационных сообщений; только сообщения об ошибках.

-c|--chuid имя-пользователя|uid
    Установить данное имя пользователя или uid перед запуском процесса. Вы можете также задать группу, добавив двоеточие :, и имя группы или gid, как в команде `chown' (пользователь:группа). При использовании этого флага вы должны понимать, что основная и дополнительные группы будут установлены, даже если не задан флаг --group. Флаг --group используется только для групп, в которых пользователь обычно не состоит (например, в случае с системным пользователем `nobody').

-r|--chroot root
    Перед запуском процесса перейти в каталог root и сделать его корневым (с помощью chroot). Заметьте, что pid-файл будет создан после установки нового корневого каталога.

-b|--background
    Этот флаг обычно используется с программами, которые не могут сами отключиться от терминала, на котором они запущены. Этот флаг заставит start-stop-daemon сделать fork() перед запуском процесса и уйти в фоновый режим. ВНИМАНИЕ: start-stop-daemon не может проверить код возврата, если процесс не может успешно выполниться по какой бы то ни было причине. Это -- последняя возможность, предназначенная только для программ, которым не имеет смысла выполнять fork() самим, или если нет возможности добавить в них код для этого.

-n|--nicelevel
    Этот флаг перед запуском изменяет приоритет процесса.

-m|--make-pidfile
    Этот флаг используется, если запускаемая программа не создаёт свой собственный pid-файл. При этом start-stop-daemon непосредственно перед запуском процесса создаст файл, указанный в параметре флага --pidfile и поместит в него pid запускаемого процесса. Заметьте, что этот файл не будет удалён при остановке программы. ЗАМЕЧАНИЕ: Эта возможность иногда может не работать: в основном это случается, когда запускаемая программа выполняет fork(). Поэтому данный флаг обычно бывает полезен только при использовании вместе с флагом --background.

-v|--verbose
    Выдавать подробные информационные сообщения.

-H|--help
    Выдать подсказку и завершиться.

-V|--version
    Выдать информацию о версии и завершиться.

АВТОРЫ
Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl>, основываясь на версии, сделанной by Ian Jackson <ian@chiark.greenend.org.uk>.

Страница руководства by Klee Dienes <klee@mit.edu>, частично переформатировано by Ian Jackson.

ПЕРЕВОД
Перевёл с английского Виктор Вислобоков <victor_v@permonline.ru>. Обновление и корректура: Alexey Mahotkin <alexm@hsys.msk.ru>.