Veröffentlichung des Service-Managers s6-rc 0.6

Die Veröffentlichung des Service-Managers s6-rc 0.6.0.0 ist jetzt verfĂŒgbar. Sie ist fĂŒr die Verwaltung des Starts von Initialisierungsskripten und Diensten konzipiert. Die Verfolgung des AbhĂ€ngigkeitsbaums und der automatische Start oder die Beendigung von Diensten zur Erreichung des angegebenen Zustands werden unterstĂŒtzt. Das Tool s6-rc kann sowohl in Initialisierungssystemen als auch zur Organisation des Starts beliebiger Dienste zum Zeitpunkt von Ereignissen, die den Zustand des Systems widerspiegeln, verwendet werden. Das System unterstĂŒtzt Initialisierungsskripten, die mit sysv-init kompatibel sind, und kann AbhĂ€ngigkeitsinformationen aus sysv-rc oder OpenRC importieren. Der Code ist in C geschrieben und unter der ISC-Lizenz lizenziert.

Der Service-Manager s6-rc umfasst eine Sammlung von Utilities zum Starten und Stoppen von langlaufenden Prozessen (DĂ€monen) oder sofort beendbaren Initialisierungsskripten. WĂ€hrend des Betriebs wird der parallele Start von nicht sich ĂŒberschneidenden Diensten sichergestellt, und es wird garantiert, dass die AusfĂŒhrungsreihenfolge der Skripten bei verschiedenen Starts wiederholt wird. Alle ZustandsĂ€nderungen werden unter BerĂŒcksichtigung der AbhĂ€ngigkeiten verarbeitet, zum Beispiel werden beim Start eines Dienstes automatisch die notwendigen AbhĂ€ngigkeiten gestartet, und beim Stoppen werden die abhĂ€ngigen Dienste angehalten.

Im Gegensatz zu anderen Service-Managern unterstĂŒtzt s6-rc eine proaktive (offline) Erstellung des AbhĂ€ngigkeitsgraphen fĂŒr die vorhandene Menge an Diensten, was es ermöglicht, eine ressourcenintensive Analyse der AbhĂ€ngigkeiten separat durchzufĂŒhren und nicht wĂ€hrend des Bootens oder beim Ändern des Zustands. Dabei ist das System nicht monolithisch und ist in eine Reihe separater und austauschbarer Module unterteilt, von denen jedes gemĂ€ĂŸ der Unix-Philosophie nur eine bestimmte Aufgabe löst. Das Projekt s6-rc verfolgt die Philosophie des Minimalismus (enthĂ€lt nichts ÜberflĂŒssiges) und verbraucht minimalste Ressourcen.

Anstelle von Runlevels (runlevel) bietet s6-rc das Konzept der Bundles an, das die Gruppierung von Diensten nach beliebigen Kriterien und zu lösenden Aufgaben ermöglicht. Zur Steigerung der Effizienz wird eine kompilierte AbhĂ€ngigkeitsdatenbank verwendet, die von dem Dienstprogramm s6-rc-compile auf Basis des Inhalts der Verzeichnisse mit Start-/Stoppdateien fĂŒr Dienste erstellt wird. FĂŒr die Analyse und Manipulation der Datenbank stehen die Dienstprogramme s6-rc-db und s6-rc-update zur VerfĂŒgung.

In der neuen Version wurden Sammlungen von Dienstprogrammen s6-rc-repo-* und s6-rc-set-* zur Verwaltung von Repositories mit Dienstdefinitionen hinzugefĂŒgt; die UnterstĂŒtzung fĂŒr gemeinsame Bibliotheken auf der macOS-Plattform wurde sichergestellt; die Option „—bootdb“ wurde hinzugefĂŒgt, um die Bootdatenbank mit Informationen ĂŒber Dienste und deren AbhĂ€ngigkeiten wĂ€hrend des Build-Prozesses zu konfigurieren; die Dienstprogramm s6-rc-compile wurde um die Option „-v2“ ergĂ€nzt.

Das Projekt entwickelt auch begleitende Pakete, die s6-rc ergÀnzen:

  • s6 – Dienstprogramme zur Überwachung und Verwaltung von Prozessen (Ă€hnlich wie daemontools und runit). UnterstĂŒtzt werden Funktionen wie das Neustarten von Prozessen nach einem Absturz, das Starten eines Handlers (Aktivierung eines Dienstes) beim Zugriff auf einen Netzwerkport, die Protokollierung von Ereignissen (Ersatz fĂŒr syslogd) und die kontrollierte Bereitstellung zusĂ€tzlicher Berechtigungen (Ă€hnlich wie sudo).
  • s6-linux-init – Implementierung des Init-Prozesses fĂŒr Betriebssysteme auf Basis des Linux-Kernels, eingesetzt zur Erstellung von Initialisierungssystemen, in denen zur Verwaltung von Diensten und Skripten die Pakete s6 und s6-rc verwendet werden.
  • s6-networking – eine Sammlung von Dienstprogrammen zur Erstellung von Netzwerkdiensten, Ă€hnlich wie ucspi.
  • s6-frontend – eine Schicht zur Wiederherstellung der FunktionalitĂ€t von daemontools und runit auf Basis von s6.
  • s6-portable-utils – eine Sammlung typischer Unix-Dienstprogramme wie cut, chmod, ls, sort und grep, optimiert fĂŒr minimalen Ressourcenverbrauch und lizenztechnisch unter ISC bereitgestellt.
  • s6-linux-utils – eine Sammlung von Dienstprogrammen, die auf Linux zugeschnitten sind, darunter chroot, freeramdisk, logwatch, mount und swapon.
  • mdevd – ein Ereignismanager (Ă€hnlich wie udevd), der fĂŒr die Behandlung von Hotplugging von GerĂ€ten gedacht ist. Die Konfiguration von mdevd ist mit mdev aus Busybox kompatibel.
  • bcnm – ein Netzwerk-Configurator mit Funktionen zur Konfiguration von Wi-Fi auf der Client-Seite.
  • execline – eine Skriptsprache.
  • skalibs – eine Bibliothek zur Erstellung sicherer Systemanwendungen in der Programmiersprache C.
  • s6-dns — eine Sammlung von Client-Bibliotheken und Dienstprogrammen, die die typischen DNS-Dienstprogramme von BIND und djbdns ersetzen.
  • dnsfunnel — leitet lokale DNS-Anfragen an externe weiter Server (DNS-Weiterleitung).
  • shibari — ein einfacher DNS-Server.
  • tipidee — ein HTTP-Server mit UnterstĂŒtzung fĂŒr HTTP/1.1.

Quelle: opennet.ru

60GB SSD 8Gb DDR4