Udgivelse af s6-rc 0.7 service manager

Version 0.7.0.0 af s6-rc service manager er blevet udgivet. Den er designet til at administrere lanceringen af ​​initialiseringsscripts og -tjenester. Den understøtter sporing af afhængighedstræer og automatisk opstart eller nedlukning af tjenester for at opnå en bestemt tilstand. s6-rc toolkit kan bruges både i initialiseringssystemer og til at organisere lanceringen af ​​vilkårlige tjenester baseret på hændelser, der afspejler ændringer i systemets tilstand. Systemet understøtter initialiseringsscripts, der er kompatible med sysv-init, og kan importere afhængighedsoplysninger fra sysv-rc eller OpenRC. Koden er skrevet i C og distribueret under ISC-licensen.

s6-rc service manager indeholder et sæt værktøjer til at starte og stoppe langvarige processer (daemoner) eller øjeblikkeligt afsluttede initialiseringsscripts. Under drift sikres parallel opstart af ikke-krydsende tjenester, og en gentagende sekvens af scriptudførelse garanteres for forskellige opstarter. Alle tilstandsændringer behandles under hensyntagen til afhængigheder. For eksempel, når en tjeneste startes, startes de afhængigheder, der er nødvendige for dens drift, automatisk, og når den stoppes, stoppes de afhængige tjenester også.

I modsætning til andre service managers understøtter s6-rc proaktiv (offline) konstruktion af en afhængighedsgraf for et eksisterende sæt af tjenester, hvilket gør det muligt at udføre ressourcekrævende afhængighedsanalyse separat i stedet for under opstart eller tilstandsændringer. Samtidig er systemet ikke monolitisk og er opdelt i en række separate og udskiftelige moduler, som hver især, i overensstemmelse med Unix-filosofien, kun løser en specifik opgave. s6-rc-projektet følger minimalismens filosofi (indeholder ikke noget unødvendigt) og forbruger et minimum af ressourcer.

I stedet for runlevels bruger s6-rc konceptet med bundter, der tillader gruppering af tjenester efter vilkårlige kriterier og opgaver. For at forbedre effektiviteten bruges en kompileret afhængighedsdatabase, oprettet af s6-rc-compile-værktøjet baseret på indholdet af mapper, der indeholder service start/stop-filer. Værktøjerne s6-rc-db og s6-rc-update leveres til parsing og manipulation af databasen. s6-værktøjskæden bruges i Obarun-, Adelie- og Artix-distributionerne og kan også valgfrit bruges i Gentoo, Void og Alpine.

Projektet udvikler også ledsagende pakker, der supplerer s6-rc:

  • s6 er et værktøj til overvågning og styring af processer (ligner daemontools og runit). Det understøtter funktioner som genstart af processer efter deres unormale afslutning, start af en handler (tjenesteaktivering) når en netværksport tilgås, hændelseslogning (en erstatning for syslogd) og kontrolleret tildeling af yderligere rettigheder (ligner sudo).
  • s6-linux-init — en implementering af init-processen til kernebaserede operativsystemer Linux, bruges til at oprette init-systemer, der bruger s6- og s6-rc-pakkerne til at administrere tjenester og scripts.
  • s6-networking er et sæt værktøjer til at oprette netværkstjenester, svarende til ucspi.
  • s6-frontend - en ramme til at genskabe funktionaliteten af ​​daemontools og runit oven på s6.
  • s6-portable-utils er et sæt af almindelige Unix-værktøjer såsom cut, chmod, ls, sort og grep, optimeret til at bruge minimale ressourcer og distribueret under ISC-licensen.
  • s6-linux-utils - et sæt værktøjer knyttet til Linuxsåsom chroot, freeramdisk, logwatch, mount og swapon.
  • mdevd er en event manager (ligner udevd) designet til at håndtere hotplugging af enheder. mdevd er konfigurationskompatibel med Busybox's mdev.
  • bcnm er en netværkskonfigurator med funktioner til at konfigurere Wi-Fi på klientsiden.
  • execline er et scriptsprog.
  • skalibs er et bibliotek til at oprette sikre systemapplikationer i C-sproget.
  • s6-dns er et sæt klientbiblioteker og hjælpeprogrammer, der erstatter standard DNS-værktøjer fra BIND og djbdns.
  • dnsfunnel - omdirigerer lokale DNS-anmodninger til en ekstern server (DNS-videresendelsesudbyder).
  • Shibari er en simpel DNS-server.
  • tipidee er en HTTP-server med HTTP/1.1-understøttelse.

I den nye version af s6-rc og relaterede værktøjer:

  • Kommandoen "s6-rc reload" er blevet implementeret til at genstarte tjenester, der har kørt længe.
  • Tilføjet en genindlæsningssignal-kontrolfil, der definerer det signal, der sendes til processen for at genstarte (standard er SIGHUP).
  • Værktøjet s6-rc-bundle er blevet fjernet - ændring af bundter uden rekompilering understøttes ikke længere.
  • Et nyt format til den interne database er blevet foreslået (opdatering kræver rekompilering og kørsel af værktøjet s6-rc-format-upgrade.
  • Korrekt håndtering af situationen med genstart af s6-rc-init-værktøjet til tjenesteinitialisering er sikret, og håndteringen af ​​systemfejl er blevet forbedret.
  • Hjælpeprogrammet s6-rc-set-change er blevet opdateret med følgende muligheder: -I/-i for at vise en advarsel eller fejle, når en konfliktfyldt afhængighed registreres; -P/-p for at deaktivere/aktivere automatisk løsning af afhængighedskonflikter, når tjenestetilstande ændres.
  • Fjernede den forældede "-f"-indstilling.
  • s6-værktøjet har nu kommandoen s6-svscanboot til at omdirigere s6-svscan supervisor-logfiler til s6-log, når det ikke kører under PID 1.
  • Implementerede indstillingen "s6-svc -l" for at sende et signal til genstart.
  • s6-frontend-brugergrænsefladen understøtter nu følgende indstillinger og kommandoer: "s6 --user" (til arbejde med brugertjenester), "s6 live reset", "s6 apply", "s6 enable|disable|start|stop|kill|apply", "s6 live stop --clean".
  • Tipidee HTTP-serveren understøtter nu FastCGI og tilføjer cgi_pass_authorization-indstillingen.

    Kilde: opennet.ru
Køb pålidelig hosting til websteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster