The OpenNET Project / Index page

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

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

25.01.2026 22:40 (MSK)

Доступен выпуск сервисного менеджера s6-rc 0.6.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-rc-repo-* и s6-rc-set-* для управления репозиториями с определениями сервисов; обеспечена поддержка разделяемых библиотек на платформе macOS; добавлена опция "--bootdb" для настройки на этапе сборки загрузочной базы данных с информацией о сервисах и зависимостями между ними; в утилиту s6-rc-compile добавлена опция "-v2".

Проектом также развиваются сопутствующие пакеты, дополняющие 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.


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


Обсуждение (11) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.3, Аноним (3), 23:00, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Проект s6-rc придерживается философии минимализма (не содержит ничего лишнего) и потребляет минимум ресурсов.

    Не верю. Инит, запускающий по шеллу на каждый сервис, не может потреблять минимум ресурсов.

     
     
  • 2.6, Аноним (6), 23:45, 25/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    ну шелл потребляет меньше ресурсов чем инит на 10000 мегабайт сколько бы тех сервисов там не было
     
     
  • 3.11, Аноним (-), 00:39, 26/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > ну шелл потребляет меньше ресурсов чем инит на 10000 мегабайт сколько
    > бы тех сервисов там не было

    Системда жрет на вон том ARMовском одноплатнике - аж 6 мегабайт. А допустим инстанс баша - один - весит под мегабайт оперативы. Что будет если его удумать параллельно при старте запускать - даже и упоминать неудобно, там коллапс по сути получается и загрузочные времена позорные что капец. OpenWRT грузящийся по минуте - проверял. Отстой получается.

     

  • 1.4, пэпэ (?), 23:09, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Какой-то набор заглушек для юного прокрастинатора.
     
     
  • 2.12, Аноним (-), 00:41, 26/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Какой-то набор заглушек для юного прокрастинатора.

    Вот вам клей, вот буханка, вот еще какая-то фигня. Можете запилить себе шикарнейший троллейбус. И судя по описанию - заняться с всем этим каким-то брейнфаком во имя луны "как в demontools и runit". Вот уж на кого не стоит ориентироваться в вопросах обслуживаемости и обозреваемости системе.

     

  • 1.5, morphe (?), 23:38, 25/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Проект s6-rc придерживается философии минимализма

    При этом реализует всё то же самое что и systemd, только в разы хуже

     
     
  • 2.7, Tty4 (?), 00:05, 26/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В разы хуже, чем launchd 🧐. В общем, получше systemd будет, судя по возбуждению фанатиков
     
  • 2.13, Аноним (13), 00:55, 26/01/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Всё, не тянущее бисер из тысяч мелких файликов, по смыслу составляющих рваную в лоскуты логику, лучше чем системд.
     

  • 1.8, Аноним (8), 00:14, 26/01/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    1. Кому надо поиграться - есть systemd.
    2. Гугл в ХромОС использует upstart.
     

  • 1.10, Аноним (10), 00:36, 26/01/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

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



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

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