Проект Debian GNU/Linux переходит на новую систему инициализации

7 сентября 2009 года

Разработчики Linux дистрибутива Debian опубликовали план переработки системы инициализации для будущего релиза Debian 6.0 (Squeeze). Пакетная база для Squeeze будет заморожена в декабре 2009 года, а релиз будет выпущен весной или летом следующего года. Кроме ранее анонсированной миграции на загрузчик GRUB 2 и переход на использование для выполнения shell скриптов вместо /bin/sh быстрой и упрощенной оболочки dash, запланирован переход на альтернативную реализацию init-инфраструктуры - Upstart, разработанную изначально для дистрибутива Ubuntu, но также используемую и в проекте Fedora.

По оценке разработчиков, текущее состояние системы инициализации Debian все больше и больше не соответствует тенденциям развития Linux ядра, которое развивается в направлении событийно-ориентированной архитектуры. Например, последние версии ядра позволяют загружать драйверы асинхронно, не блокируя процесс загрузки при выполнении таких функций, как определение дисков, настройка сетевых интерфейсов и другого оборудования. Текущая система инициализации нередко приводит к таким проблемам как отсутствие заданного файла устройства при выполнении fsck или попытке монтирования, недоступности сети в момент подключения NFS раздела из-за задержки инициализации сетевого устройства. К списку проблем также можно отнести сложность и запутанность выбора порядкового номера запуска сервисов с учетом возможных комбинации установки пакетов в дистрибутиве.

В отличие от стандартной init-системы, Upstart базируется на парадигме обработки событий, а для определения последовательности запуска сервисов и оценки возможности их выполнения в параллельном режиме, применяется метод учета зависимостей. Тем не менее, Upstart требует определенной переработки init-скриптов. Например, вместо классического /etc/inittab в системе появляется /etc/event.d. Следует заметить, что подготовка к внедрению системы инициализации, основанной на параллельном запуске сервисов, началась еще во время разработки Debian GNU/Linux 5.0 (Lenny), в котором в Init-скрипты были внесены изменения с данными о зависимостях.

Особенности Upstart:

  • Запуск и остановка задач и сервисов производится через генерацию события;
  • События генерируются при запуске или остановке задач и сервисов, что позволяет организовать привязку к ним других задач и сервисов;
  • События могут быть получены от любого другого процесса в системе;
  • Сервисы могут быть автоматически перезапущены при их непредвиденном завершении;
  • Наблюдение и перезапуск демонов может производится раздельно от их родительских процессов;
  • Связь с управляющим init-процессом может осуществляться посредством D-Bus;
  • Планируемые, но еще не реализованные возможности: генерация событий в промежутки времени или через определенные интервал; генерация событий при изменении файлов или директорий; создание пользовательских сервисов, которые могут управляться непривилегированным пользователем.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Проект Debian GNU/Linux переходит на новую систему инициализации», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.