Neue Versionen des Dienstmanagers s6-rc und des Initialisierungssystems s6-linux-init

Die Version des Service-Managers s6-rc 0.5.6.0 wurde eingefĂŒhrt, die zum Management des Starts von Initialisierungsskripten und Diensten dient. Es unterstĂŒtzt das Verfolgen des AbhĂ€ngigkeitsbaums und das automatische Starten oder Stoppen von Diensten, um einen definierten Zustand zu erreichen. Das s6-rc-Toolkit kann sowohl in Initialisierungssystemen als auch zur Organisation des Starts beliebiger Dienste in Verbindung mit Ereignissen verwendet werden, die eine SystemzustandsĂ€nderung widerspiegeln. Das System unterstĂŒtzt Initialisierungsskripte, die mit sysv-init kompatibel sind, und kann AbhĂ€ngigkeitsinformationen aus sysv-rc oder OpenRC importieren. Der Code ist in der Programmiersprache C geschrieben und wird unter der ISC-Lizenz vertrieben.

Der s6-rc-Service-Manager beinhaltet eine Sammlung von Tools zum Starten und Stoppen von langlaufenden Prozessen (DĂ€monen) oder sofort beendbaren Initialisierungsskripten. WĂ€hrend der AusfĂŒhrung wird sichergestellt, dass nicht ĂŒberlappende Services parallel gestartet werden, und die Reihenfolge der AusfĂŒhrung der Skripte bei verschiedenen Starts bleibt garantiert gleich. Alle StatusĂ€nderungen werden unter BerĂŒcksichtigung der AbhĂ€ngigkeiten verarbeitet; so werden beispielsweise beim Start eines Dienstes automatisch die notwendigen AbhĂ€ngigkeiten fĂŒr dessen Betrieb aktiviert, und beim Stoppen werden auch die abhĂ€ngigen Dienste gestoppt.

Im Gegensatz zu anderen Service-Managern unterstĂŒtzt s6-rc die vorausschauende (im Offline-Modus) Erstellung eines AbhĂ€ngigkeitsgraphs fĂŒr einen vorhandenen Satz von Services, was es ermöglicht, ressourcenintensive AbhĂ€ngigkeitsanalysen separat durchzufĂŒhren, anstatt wĂ€hrend des Ladens oder bei ZustandsĂ€nderungen. Das System ist modular gestaltet und in eine Reihe von separaten, austauschbaren Modulen unterteilt, von denen jedes gemĂ€ĂŸ der Unix-Philosophie nur eine bestimmte Aufgabe löst. Das Projekt s6-rc folgt dem Minimalismus-Prinzip (es enthĂ€lt nichts ÜberflĂŒssiges) und verbraucht minimale Ressourcen.

Anstelle von Runlevels bietet s6-rc das Konzept von Bundles an, das die Gruppierung von Diensten nach beliebigen Kriterien und zu lösenden Aufgaben ermöglicht. Um die Effizienz zu steigern, wird eine kompilierte AbhĂ€ngigkeitsdatenbank verwendet, die von der Utility s6-rc-compile basierend auf dem Inhalt der Verzeichnisse mit Start-/Stoppdateien fĂŒr Dienste erstellt wird. FĂŒr die Analyse und Manipulation der Datenbank stehen die Tools s6-rc-db und s6-rc-update zur VerfĂŒgung.

Gleichzeitig wurden neue Versionen der begleitenden Pakete erstellt, die s6-rc ergÀnzen:

  • s6 2.13.2.0 – Dienstprogramme zur Überwachung der ProzessausfĂŒhrung und des Prozessmanagements (Ă€hnlich wie daemontools und runit). Funktionen wie die Neustart von Prozessen nach einem Absturz, das Starten eines Handlers (Aktivierung des Dienstes) beim Zugriff auf einen Netzwerkport, das Protokollieren von Ereignissen (Ersatz fĂŒr syslogd) und die kontrollierte Bereitstellung zusĂ€tzlicher Privilegien (Ă€hnlich wie sudo) werden unterstĂŒtzt.
  • s6-linux-init 1.1.3.0 — Implementierung des Init-Prozesses fĂŒr Betriebssysteme auf Basis des Linux-Kernels, verwendet zur Erstellung von Initialisierungssystemen, in denen s6- und s6-rc-Pakete zur Verwaltung von Diensten und Skripten eingesetzt werden.
  • s6-networking 2.7.1.0 — Sammlung von Tools zur Erstellung von Netzwerkdiensten, Ă€hnlich wie ucspi.
  • s6-frontend — ein Wrapper zur Wiederherstellung der FunktionalitĂ€t von daemontools und runit ĂŒber s6.
  • s6-portable-utils 2.3.1.0 — Sammlung gĂ€ngiger Unix-Utilities wie cut, chmod, ls, sort und grep, optimiert fĂŒr minimalen Ressourcenverbrauch und bereitgestellt unter der ISC-Lizenz.
  • s6-linux-utils 2.6.3.0 — Sammlung von Linux-spezifischen Utilities wie chroot, freeramdisk, logwatch, mount und swapon.
  • mdevd 0.1.7.0 — Ereignis-Manager (Ă€hnlich wie udevd), der fĂŒr das Hot-Plugging von GerĂ€ten konzipiert ist. Der mdevd ist konfigurationskompatibel mit mdev aus Busybox.
  • bcnm 0.0.2.0 — Netzwerk-Configurator mit Funktionen zur Clientseitigen Wi-Fi-Konfiguration.
  • execline 2.9.7.0 — Skriptsprache zur Erstellung von Skripten.
  • skalibs 2.14.4.0 — Bibliothek zur Erstellung sicherer Systemanwendungen in der Programmiersprache C.
  • s6-dns 2.4.1.0 — Sammlung von Client-Bibliotheken und Utilities, die gĂ€ngige DNS-Utilities aus BIND und djbdns ersetzen.
  • dnsfunnel 0.0.3.0 — Leitet lokale DNS-Anfragen nach außen um. der Server (DNS-Weiterleiter).
  • shibari 0.0.2.0 — Einfacher DNS-Server.
  • tipidee 0.0.6.0 — HTTP-Server mit UnterstĂŒtzung fĂŒr HTTP/1.1.

In den neuen Versionen wurde in alle Pakete die UnterstĂŒtzung fĂŒr pkg-config integriert. In der Bibliothek skalibs wurden Varianten der Ein-/-Ausgabefunktionen implementiert, deren AusfĂŒhrungszeiten durch Zeitlimits begrenzt werden können. In mdevd wurde die Option „-I“ hinzugefĂŒgt, um den Namen der Netlink-Gruppe fĂŒr den Empfang von Anfragen festzulegen; die StandardpuffergrĂ¶ĂŸe wurde auf 1 MB erhöht. In tipideed wurde die Möglichkeit zur Streaming-Übertragung der Ausgaben von CGI-Skripten implementiert, UnterstĂŒtzung fĂŒr die Methoden PUT, DELETE und PATCH hinzugefĂŒgt und die Direktive autochunk fĂŒr die chunked-Kodierung ĂŒbertragener Daten realisiert.

Quelle: opennet.ru

ZuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen đŸ”„ ZuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster