Linux init. Автозагрузка служб.

Пишу, что-бы не забыть.

Важно отметить, что существуют различные системы инициализации запуска, из тех, что я знаю:
  • init System V
  • Upstart
  • systemd
В этой статье я описываю только init System V.



И так, системные сервисы имеют скрипты запуска, которые располагаются в /ect/init.d. Для написания собственного скрипта можно воспользоваться шаблоном, лежащим по адресу /etc/init.d/skeleton.
После создания скрипта запуска, нужно дать системе понять, что скрипт надо запускать. Для этого предусмотрен набор каталогов rcX.d, где X - уровень инициализации. Каталоги rcX.d можно найти по адресу /etc/rcX.d.

Уровни инициализации:
  • 0 — остановка системы
  • 1 — загрузка в однопользовательском режиме
  • 2 — загрузка в многопользовательском режиме без поддержки сети
  • 3 — загрузка в многопользовательском режиме с поддержкой сети
  • 4 — не используется
  • 5 — загрузка в многопользовательском режиме с поддержкой сети и графического входа в систему
  • 6 — перезагрузка
Как можно понять из списка выше, пользовательские службы, вроде серверов и всяких плюх обычно отмечаются в каталоге /etc/rc5.d. 

Каталоги уровней инициализации содержат символьные ссылки на скрипты из /etc/init.d, а в своем имени содержат триггер (вкл - S/выкл - K) и порядковый номер.
Общий формат имени символьной ссылки:
(S|K)<num><name>


Подробнее тут.

Комментарии

Популярные сообщения из этого блога

Siege Up! Editor (beta)

STM32F4 и программный выход в DFU

Git и Yandex.Disk