La version du gestionnaire de services s6-rc 0.6.0.0 est disponible, destinĂ© Ă gĂ©rer le lancement des scripts d'initialisation et des services. Le suivi de l'arbre des dĂ©pendances est pris en charge, ainsi que le dĂ©marrage ou l'arrĂȘt automatique des services pour atteindre l'Ă©tat spĂ©cifiĂ©. L'outil s6-rc peut ĂȘtre utilisĂ© tant dans les systĂšmes d'initialisation que pour organiser le lancement de services arbitraires en fonction d'Ă©vĂ©nements reflĂ©tant le changement d'Ă©tat du systĂšme. Le systĂšme prend en charge les scripts d'initialisation compatibles avec sysv-init, et peut importer des informations sur les dĂ©pendances Ă partir de sysv-rc ou d'OpenRC. Le code est Ă©crit en C et distribuĂ© sous licence ISC.
Le gestionnaire de services s6-rc comprend un ensemble d'outils pour dĂ©marrer et arrĂȘter des processus de longue durĂ©e (dĂ©mons) ou des scripts d'initialisation qui se terminent immĂ©diatement. Pendant son fonctionnement, il permet le dĂ©marrage parallĂšle de services non intrusifs et garantit une sĂ©quence d'exĂ©cution des scripts qui se rĂ©pĂšte Ă chaque dĂ©marrage. Tous les changements d'Ă©tat sont traitĂ©s en tenant compte des dĂ©pendances ; par exemple, lors du dĂ©marrage d'un service, les dĂ©pendances nĂ©cessaires Ă son bon fonctionnement seront automatiquement lancĂ©es, et lors de l'arrĂȘt, les services dĂ©pendants seront Ă©galement arrĂȘtĂ©s.
Contrairement à d'autres gestionnaires de services, s6-rc prend en charge la construction anticipée (en mode hors ligne) du graphe de dépendances pour l'ensemble des services existants, ce qui permet d'effectuer une analyse des dépendances gourmande en ressources séparément, plutÎt qu'au moment du démarrage ou du changement d'état. Le systÚme n'est pas monolithique et est divisé en une série de modules séparés et remplaçables, chacun résolvant une tùche spécifique conformément à la philosophie Unix. Le projet s6-rc adhÚre à la philosophie du minimalisme (ne contient rien de superflu) et consomme un minimum de ressources.
Au lieu des niveaux de dĂ©marrage (runlevel), s6-rc propose le concept de bundles, permettant de regrouper les services par caractĂ©ristiques et tĂąches Ă accomplir. Pour amĂ©liorer l'efficacitĂ©, une base de donnĂ©es des dĂ©pendances est gĂ©nĂ©rĂ©e Ă l'aide de l'outil s6-rc-compile, basĂ©e sur le contenu des rĂ©pertoires contenant les fichiers de dĂ©marrage/arrĂȘt des services. Les outils s6-rc-db et s6-rc-update sont proposĂ©s pour l'analyse et manipulation de la base de donnĂ©es.
La nouvelle version ajoute les collections d'utilitaires s6-rc-repo-* et s6-rc-set-* pour gĂ©rer des dĂ©pĂŽts avec des dĂ©finitions de services ; le support des bibliothĂšques partagĂ©es sur la plateforme macOS a Ă©tĂ© assurĂ© ; une option « âbootdb » a Ă©tĂ© ajoutĂ©e pour configurer lors de l'Ă©tape de construction de la base de donnĂ©es de dĂ©marrage avec des informations sur les services et les dĂ©pendances entre eux ; l'outil s6-rc-compile a reçu l'option « -v2 ».
Le projet développe également des paquets complémentaires qui enrichissent s6-rc :
- s6 â utilitaires pour surveiller et gĂ©rer les processus (analogue de daemontools et runit). Des fonctionnalitĂ©s telles que le redĂ©marrage des processus aprĂšs une terminaison inattendue, le lancement d'un gestionnaire (activation de service) lors d'une requĂȘte sur un port rĂ©seau, la journalisation des Ă©vĂ©nements (remplacement de syslogd) et la fourniture contrĂŽlĂ©e de privilĂšges supplĂ©mentaires (analogue de sudo) sont prises en charge.
- s6-linux-init â rĂ©alisation du processus init pour les systĂšmes d'exploitation basĂ©s sur le noyau Linux, utilisĂ©e pour crĂ©er des systĂšmes d'initialisation dans lesquels les paquets s6 et s6-rc sont employĂ©s pour gĂ©rer des services et des scripts.
- s6-networking â ensemble d'utilitaires pour crĂ©er des services rĂ©seau, similaire Ă ucspi.
- s6-frontend - une couche pour recréer la fonctionnalité de daemontools et runit sur s6.
- s6-portable-utils â ensemble d'outils Unix typiques, tels que cut, chmod, ls, sort et grep, optimisĂ©s pour une consommation minimale de ressources et fournis sous licence ISC.
- s6-linux-utils â ensemble d'outils liĂ©s Ă Linux, tels que chroot, freeramdisk, logwatch, mount et swapon.
- mdevd â gestionnaire d'Ă©vĂ©nements (similaire Ă udevd) conçu pour gĂ©rer la connexion Ă chaud des pĂ©riphĂ©riques. En configuration, mdevd est compatible avec mdev de Busybox.
- bcnm â configurateur rĂ©seau offrant des capacitĂ©s de configuration du Wi-Fi du cĂŽtĂ© client.
- execline â langage de script.
- skalibs â bibliothĂšque pour crĂ©er des applications systĂšme sĂ©curisĂ©es en C.
- s6-dns â ensemble de bibliothĂšques et d'outils clients remplaçant les utilitaires DNS classiques de BIND et djbdns.
- dnsfunnel â redirige les requĂȘtes DNS locales vers l'extĂ©rieur. serveur (DNS forwarder).
- shibari â serveur DNS simple.
- tipidee â serveur HTTP prenant en charge HTTP/1.1.
Source : opennet.ru
