Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск сервисного менеджера s6-rc 0.7

15.07.2026 08:17 (MSK)

Опубликован выпуск сервисного менеджера s6-rc 0.7.0.0, предназначенного для управления запуском скриптов инициализации и сервисов. Поддерживается отслеживание дерева зависимостей и автоматический запуск или завершение сервисов для достижения указанного состояния. Инструментарий s6-rc может применяться как в системах инициализации, так и для организации запуска произвольных сервисов в привязке к событиям, отражающим изменение состояния системы. Система поддерживает скрипты инициализации, совместимые с sysv-init, и может импортировать информацию о зависимостях из sysv-rc или OpenRC. Код написан на языке Си и распространяется под лицензией ISC.

Сервисный менеджер s6-rc включает набор утилит для запуска и остановки длительно функционирующих процессов (демонов) или сразу завершаемых скриптов инициализации. В процессе работы обеспечивается параллельный запуск не пересекающихся между собой сервисов и гарантируется повторяющаяся при разных запусках последовательность выполнения скриптов. Все изменения состояния обрабатываются с учётом зависимостей, например, при запуске какого-то сервиса будут автоматически запущены необходимые для его работы зависимости, а при остановке - остановлены и зависимые сервисы.

В отличие от других сервисных менеджеров s6-rc поддерживает упреждающее (в offline-режиме) построение графа зависимостей для имеющегося набора сервисов, что позволяет выполнить ресурсоёмкий анализ зависимостей отдельно, а не во время загрузки или изменения состояния. При этом система не является монолитной и разбита на серию отдельных и заменяемых модулей, каждый из которых в соответствии с философией Unix решает только определённую задачу. Проект s6-rc придерживается философии минимализма (не содержит ничего лишнего) и потребляет минимум ресурсов.

Вместо уровней запуска (runlevel) в s6-rc предлагается концепция наборов (bundles), позволяющая группировать сервисы по произвольным признакам и решаемым задачам. Для повышения эффективности работы используется скомпилированная БД зависимостей, создаваемая утилитой s6-rc-compile на основе содержимого каталогов с файлами для запуска/остановки сервисов. Для разбора и манипуляций с БД предлагаются утилиты s6-rc-db и s6-rc-update. Инструментарий s6 используется в дистрибутивах Obarun, Adelie и Artix, а также опционально может применяться в Gentoo, Void и Alpine.

Проектом также развиваются сопутствующие пакеты, дополняющие s6-rc:

  • s6 - утилиты для отслеживания работы процессов и управления процессами (аналог daemontools и runit). Поддерживаются такие возможности как перезапуск процессов после их аварийного завершения, запуск обработчика (активация сервиса) при обращении к сетевому порту, журналирование событий (замена syslogd) и контролируемое предоставление дополнительных привилегий (аналог sudo).
  • s6-linux-init - реализация init-процесса для операционных систем на базе ядра Linux, применяемого для создания систем инициализации, в которых для управления сервисами и скриптами используются пакеты s6 и s6-rc.
  • s6-networking - набор утилит для создания сетевых сервисов, похожий на ucspi.
  • s6-frontend - обвязка для воссоздания функциональности daemontools и runit поверх s6.
  • s6-portable-utils - набор типовых Unix-утилит, таких как cut, chmod, ls, sort и grep, оптимизированных для потребления минимальных ресурсов и поставляемых под лицензией ISC.
  • s6-linux-utils - набор утилит, привязанных к Linux, таких как chroot, freeramdisk, logwatch, mount и swapon.
  • mdevd - менеджер событий (аналог udevd), предназначенный для обработки горячего подключения устройств. По конфигурации mdevd совместим с mdev из состава Busybox.
  • bcnm - сетевой конфигуратор с возможностями для настройки Wi-Fi на стороне клиента.
  • execline - язык написания сценариев.
  • skalibs - библиотека для создания безопасных системных приложений на языке Си.
  • s6-dns - набор клиентских библиотек и утилит, заменяющих типовые DNS-утилиты из BIND и djbdns.
  • dnsfunnel - перенаправляет локальные DNS-запросы на внешний сервер (DNS forwarder).
  • shibari - простой DNS-сервер.
  • tipidee - HTTP-сервер с поддержкой HTTP/1.1.



В новой версии s6-rc и связанных с ним утилитах:

  • Реализована команда "s6-rc reload" для перезапуска длительно работающих сервисов.
  • Добавлен управляющий файл reload-signal, определяющий сигнал, отправляемый процессу для перезапуска (по умолчанию SIGHUP).
  • Удалена утилита s6-rc-bundle - изменение bundle-наборов без перекомпиляции больше не поддерживается.
  • Предложен новый формат внутренней БД (для обновления требуется перекомпиляция и запуск утилиты s6-rc-format-upgrade.
  • Обеспечена корректная обработка ситуации повторного запуска утилиты s6-rc-init для инициализации сервисов и улучшена обработка системных сбоев.
  • В утилиту s6-rc-set-change добавлены опции: -I/-i для вывода предупреждения или завершения с ошибкой при обнаружении конфликтующей зависимости; -P/-p для отключения/включения автоматического разрешения конфликтов зависимостей при изменении состояния сервисов.
  • Удалена устаревшая опция "-f".
  • В утилиту s6 добавлена команда s6-svscanboot для перенаправления логов супервизора s6-svscan в s6-log, когда он выполняется не под PID 1.
  • Реализована опция "s6-svc -l" для отправки сигнала для перезапуска.
  • В интерфейс пользователя s6-frontend добавлена поддержка опций и команд: "s6 --user" (для работы с пользовательскими сервисами), "s6 live reset", "s6 apply", "s6 enable|disable|start|stop|kill|apply", "s6 live stop --clean".
  • В http-сервере tipidee реализована поддержка FastCGI и добавлена опция cgi_pass_authorization.

  1. Главная ссылка к новости (https://github.com/skarnet/s6-...)
  2. OpenNews: Выпуск системного менеджера systemd 261 и форка liberated-systemd 261
  3. OpenNews: Опубликован системный менеджер GNU Shepherd 1.0.0
  4. OpenNews: Уязвимость в системе инициализации finit, позволяющая войти в систему без пароля
  5. OpenNews: Первый выпуск минималистичной системы инициализации Nitro
  6. OpenNews: Выпуск системы инициализации SysVinit 3.16
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65905-s6
Ключевые слова: s6, init
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (6) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Ваня фанат СПО из подмосковья (?), 08:22, 15/07/2026 [ответить]  
  • –1 +/
    ну а в каких дистрах он есть то?
     
     
  • 2.2, Аноним (2), 08:44, 15/07/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    https://wiki.gentoo.org/wiki/S6
     
  • 2.3, Аноним (3), 08:46, 15/07/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В каких поставишь, в таких и будет. Obarun возьми вон.
     

  • 1.4, Аноним (4), 08:48, 15/07/2026 [ответить]  
  • +4 +/
    Лучше и проще bsd init никто ничего не придумал. Внезапно, достаточно было просто sysv init до ума довести, а не заниматься изобретением самонаводящихся костылей.
     
     
  • 2.5, Анонимный аноним (?), 09:31, 15/07/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Лучше systemd никто ничего не придумал. Внезапно, достаточно сделать полноценный менеджер сервисов, а не набор shell-портянок, чтобы избавиться от ненужных различий между дистрибутивами и реализовать всю функциональность, необходимую разработчикам и админам.
     
     
  • 3.7, Аноним (7), 09:42, 15/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >менеджер сервисов

    Он системный мененджер, если что.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру