релиз системы инициализации Upstart 1.7, изначально разработанной компанией Canonical и ныне используемой в дистрибутивах Ubuntu и RedHat Enterprise Linux 6, а также в проектах Maemo, Chrome OS и webOS. В отличии от стандартной init-системы SysV, Upstart базируется на парадигме обработки событий, работает в асинхронном режиме и использует метод учета зависимостей для определения последовательности запуска сервисов и оценки возможности их выполнения в параллельном режиме. Параллелизм запуска сервисов обеспечивает существенное повышение скорости загрузки, но ценой этому является необходимость определенной переработки init-скриптов (поддерживается режим совместимости, позволяющий запускать обычные sysvinit-скрипты, но эффективность загрузки и работы при этом теряется).
В новой версии:
- * New initctl commands: set-env, unset-env, get-env, list-env, reset-env, list-sessions (all except last with corresponding D-Bus methods). * New D-Bus-only signals EventEmitted, Restarted, and EndSession method. * Ability to run with PID >1 to allow Upstart to manage a user session. Running Upstart as a 'Session Init' in this way provides features above and beyond those provided by the original User Jobs such that the User Job facility has been removed entirely: to migrate from a system using User Jobs, simply ensure the user session is started with 'init --user'. * New upstart-event-bridge bridge which proxies system-level events down to Session Inits, allowing users jobs to react to udev events. * Ability to read job configuration and override files from multiple freedesktop-compliant locations (Session Init only). * Ability to shutdown both via a system shutdown request and via a user logout request (Session Init only).
Особенности Upstart:
- Запуск и остановка задач и сервисов производится через генерацию события. Например, Upstart может запустить определенные сервисы после подключения к системе дополнительного устройства и завершить после его отключения;
- События генерируются при запуске или остановке задач и сервисов, что позволяет организовать привязку к ним других задач и сервисов;
- События могут быть получены от любого другого процесса в системе;
- Сервисы могут быть автоматически перезапущены при их непредвиденном завершении;
- Наблюдение и перезапуск демонов может производиться раздельно от их родительских процессов;
- Связь с управляющим init-процессом может осуществляться посредством D-Bus;
- Планируемые возможности: генерация событий в промежутки времени или через определенные интервалы (встроенный аналог cron), а также при изменении файлов или директорий (встроенный аналог incron).