Upstart

Система инициализации

Upstart - это система инициализации ОС, которая контролирует запуск демонов во время загрузки системы, их остановку и управление ими во время работы системы. Это основанная на событиях замена системы инициализации init в системах UNIX и Linux. Первоначально он был разработан для дистрибутива Ubuntu, но позже стал использоваться в других дистрибутивах Linux, таких как Fedora (позже заменен systemd), как замена UNIX System V init. С 2014 года Upstart находится только в режиме обслуживания, без разработки новых функций. Сейчас он признан устаревшим, и во многих дистрибутивах планируется переход на systemd.

UpStart - это гибридная система инициализации, она использует как стартовые скрипты SysV, так и служебные файлы Systemd.

Большинство ее возможностей работает благодаря интеграции с системой инициализации Systemd. В последнее время все меньше и меньше используется SysV init scripts и все больше и больше Systemd unit files. Рано или поздно Systemd вытеснит и полностью заменит Upstart в Ubuntu.

Задачи могут быть запущены и остановлены с помощью программ start и stop, расположенных в каталоге /sbin. Каждая из этих программ должна быть параметризована списком задач, которые необходимо обработать. Обе программы выдают результаты своей работы в стандартный поток вывода.

Статус программы, как следует из названия, позволяет узнать состояние задачи. Она отображает сначала имя задачи, затем последнюю операцию, выполненную над задачей (старт/стоп), текущее состояние и идентификатор процесса, если таковой имеется. Список всех задач и их статусов на данный момент можно получить с помощью команды initctl list. С помощью команды initctl emit у вас есть возможность генерировать любое событие. Это очень полезно при написании собственных заданий.

Системные процессы хранятся в каталоге /etc/init/, а пользовательские процессы - в каталоге ~/.init/. Рабочие процессы пользователей запускаются в их сеансах. Такие процессы не являются общесистемными. Все процессы, независимо от их типа, всегда определяются в конфигурационном файле (.conf), где их имя должно представлять выполняемую службу или задачу.

Процесс в состоянии после запуска считается запущенным процессом. Он остается запущенным до состояния pre-stop, в котором он готовится к остановке. После этого процесс останавливается и переходит в состояние post-stop (очистка системы).

Upstart - это система инициализации на основе событий, разработанная компанией Canonical и призванная заменить SysV. Она может запускать системные службы, выполнять различные задачи, проверять их во время выполнения и предпринимать действия в ответ на системные события.

Большинство ее функций работает благодаря интеграции с системой инициализации Systemd.