Издаден е сервизен мениджър s6-rc 0.7

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

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

За разлика от другите мениджъри на услуги, s6-rc поддържа проактивно (в офлайн режим) изграждане на граф на зависимости за настоящия набор от услуги, което позволява ресурсно-емким анализ на зависимостите да се извърши отделно, а не по време на зареждане или промяна на състоянието. Системата не е монолитна и е разделена на серия отделни и заменяеми модули, като всеки от тях в съответствие с философията на 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 — библиотека за създаване на сигурни системни приложения на C.
  • 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.

    Източник: opennet.ru
Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster