START-STOP-DAEMON

НАЗВАНИЕ

start-stop-daemon - обеспечение запуска и остановки демонов

СИНТАКСИС

start-stop-daemon -S , -start демон [--] [аргументы ] start-stop-daemon -K , -stop демон start-stop-daemon -s , -signal signal демон

ОПИСАНИЕ

Утилита start-stop-daemon обеспечивает надежный метод запуска и остановки демонов, а также передачи им сигнала. Если не используется ни опция -K , -stop, ни -s , -signal, подразумевается, что демон необходимо запустить. Если демон не запускается самостоятельно в фоновом режиме и не создает файл идентификатора процесса, это может безопасно выполнить start-stop-daemon.

Если start-stop-daemon используется для той или иной службы OpenRC, OpenRC может проверить, работает ли демон. Если нет, то служба помечается как аварийно остановленная.

Ниже приводятся опции, служащие для указания демона и способа его запуска или остановки:

-x , -exec демон

Запускаемый или останавливаемый демон. Если эта опция не указана, то будет использован первый аргумент вне опций.

-p , -pidfile файл идентификатора процесса

При запуске демона он за разумное время должен создать рабочий файл идентификатора процесса. При остановке будут остановлены только процессы, перечисленные в файле идентификатора.

-n , -name имя

Определяет демон по имени процесса, а не по файлу идентификатора или по имени исполняемого файла.

-i , -interpreted

При выборе процесса по имени необходимо убедиться, что ему соответствует подходящий интерпретатор. Как только, например, запускается демон foo, start-stop-daemon ищет процесс. Если интерпретируемый демон изменяет свое имя процесса, это не будет работать.

-u , -user пользователь [:группа ]

Запускает демон от пользователя и соответственно обновляет значение $HOME или останавливает демоны, принадлежащие пользователю. При желании вы можете добавить и группу.

-t , -test

Только отображает сведения о действии/-ях, которые должны быть выполнены, ничего не делая. Возвращается то же значение, что и в случае действительно запуска и отработки команды.

-v , -verbose

Отображает сведения о действии/-ях непосредственно перед его/их выполнением.

-P , -progress

Отображает ход выполнения в консоли: одна точка обозначает секунду ожидания.

Следующие опции используются только при запуске демонов:

-a , -startas имя

Заменяет имя процесса демона на указанное имя. Это заменит лишь первый аргумент, передаваемый демону.

-b , -background

Принудительно запускает демон в фоновом режиме. Некоторые демоны не создают идентификационных файлов - их удобно запускать в фоне и использовать эту опцию в связке с -m , -make-pidfile для создания рабочего файла идентификатора.

-d , -chdir путь

Перед запуском демона изменяет рабочий каталог на указанный.

-r , -chroot путь

Перед запуском демона выполняет chroot в каталоге по указанному пути. Другие пути, например, путь доступа к демону, адрес нового корневого каталога root и файла идентификатора процесса, должны быть относительными к chroot.

-c , -chuid пользователь

Аналогично опции -u , -user.

-e , -env VAR=VALUE

Присваивает переменной окружения VAR значение VALUE.

-g , -group группа

Запускает демон в группе.

-k , -umask режим

Задает маску файла демона.

-m , -make-pidfile

Сохраняет идентификатор процесса демона в файле, указанном в опции -p, -pidfile. Имеет смысл только применительно к демонам, запущенным в основном режиме, которые принудительно переводятся в фоновый режим опцией --b, -background.

-I , -ionice класс [:данные ]

Изменяет приоритет ввода-вывода для демона. Аргумент класс может иметь значение 0 - нет, 1 - real time (приоритетный доступ), 2 - best effort (приоритет определяется планировщиком) и 3 - idle ( доступ только тогда, когда другие процессы не требуют ввода/вывода). Аргумент данные может принимать значения от 0 до 7 включительно.

-N , -nice уровень

Изменяет приоритет запуска демона.

-1 , -stdout журнал

При запуске с опцией -background перенаправляет стандартный вывод процесса в журнал. В качестве аргумента необходимо указывать абсолютный путь доступа к файлу, но относительный к пути, опционально заданному опцией -r , -chroot. Журнал может быть и именованным каналом.

-w , -wait время

После запуска ожидать указанное время (в миллисекундах), затем проверить, продолжает ли демон работу. Эта опция удобна для демонов, которые проверяют конфигурацию после ветвления или устранения "гонок", когда файл идентификатора записывается после ветвления процесса.

-2 , -stderr журнал

Эта опция аналогична -1, -stdout, но со стандартным выводом ошибок.

Следующие опции используются только для остановки демонов:

-R , -retry пауза | сигнал / пауза

Вы можете указать либо продолжительность паузы в секундах, либо несколько пар сигнал/пауза для расписания остановки демонов. Если опция не задана, будет использовано значение по умолчанию SIGTERM/5.

ОКРУЖЕНИЕ

С помощью переменной_SSD_NICELEVEL_ также можно устанавливать очередь запуска демонов, но приоритет будет иметь опция в командной строке.

Переменная SSD_STARTWAIT аналогична опции -w, -wait, описанной выше. /etc/rc.conf, start-stop-daemon ожидает проверки, продолжает ли демон работу.

ПРИМЕЧАНИЕ

Для синтаксического анализа опций start-stop-daemon использует getopt(3): этот инструмент позволяет принимать опцию с префиксом `--', останавливая обработку текущих опций на данном этапе. Все последующие аргументы передаются демону, который запускает соответствующие службы, и используются при обнаружении демона, который необходимо остановить или которому необходимо передать сигнал.

СМ. ТАКЖЕ

chdir(2), chroot(2), getopt(3), nice(2), rc_find_pids(3)

ОШИБКИ

Не обращаясь к файлу идентификатора процесса, start-stop-daemon не может остановить интерпретируемый демон, который уже не существует.

ИСТОРИЯ

Впервые start-stop-daemon был использован в Debian.

Настоящая реализация стала результатом полной переработки изначальной версии: процесс ищет код в библиотеке OpenRC (librc, -lrc), чтобы к нему могли обращаться другие программы.

АВТОРЫ

ПЕРЕВОД

 
 

Спасибо!