Tutvustame teenusehalduri s6-rc 0.5.6.0 väljalaskmist, mis on mõeldud käivitamis- ja teenuste initsialiseerimisskriptide haldamiseks. Toetatakse sõltuvuspuu jälgimist ning teenuste automaatset käivitamist või lõpetamist, et saavutada määratud seisund. S6-rc tööriistu saab kasutada nii initsialiseerimissüsteemides kui ka sündmuste alusel, mis peegeldavad süsteemi seisundi muutust. Süsteem toetab sysv-initiga ühilduvaid initsialiseerimisskripte ning suudab importida sõltuvuste teavet sysv-rc-st või OpenRC-st. Kood on kirjutatud C-keeles ja on saadaval ISC litsentsi alusel.
S6-RC teenusehaldur sisaldab tööriistade komplekti pikaajaliste protsesside (demonite) käivitamiseks ja peatamiseks või koheselt lõpetatavate initsialiseerimisskriptide jaoks. Töö käigus tagatakse paralleelne käivitamine mitteühtivate teenuste vahel ning tagatakse käivitusskriptide korduv täitmise järjekord iga kord erinevatel käivitustel. Kõik olekumuutused töödeldakse sõltuvusi arvesse võttes, näiteks teenuse käivitamisel käivitatakse automaatselt selle jaoks vajalikud sõltuvused ning peatamisel peatatakse ka vastavad teenused.
Erinevalt teistest teenusehalduritest toetab s6-rc ennetavat (offline-režiimis) sõltuvusgraafi koostamist olemasoleva teenuste kogumi jaoks, mis võimaldab teostada ressursimahukat sõltuvusanalüüsi eraldi, mitte laadimise või oleku muutmise ajal. Samal ajal ei ole süsteem monoliitne ning on jagatud mitmeks eraldi ja vahetatavateks mooduliteks, millest igaühel on Unix'i filosoofia kohaselt ainult kindel probleem lahendamiseks. Projekt s6-rc järgib minimaalsuse filosoofiat (ei sisalda midagi liigset) ja tarbib minimaalset hulka ressursse.
S6-rc-s pakutakse käivitustasandite (runlevel) asemel komplektide (bundles) kontseptsiooni, mis võimaldab teenuseid rühmitada erinevate tunnuste ja lahendatavate ülesannete alusel. Tõhususe suurendamiseks kasutatakse kompileeritud sõltuvusteadmus, mille loob utiliit s6-rc-compile põhjal käivitamis-/lõpetamisdokumentide kataloogide sisu. Andmebaasi analüüsimiseks ja manipuleerimiseks pakutakse utiliite s6-rc-db ja s6-rc-update.
Samal ajal on loodud uued versioonid abipakettidest, mis täiendavad s6-rc:
- s6 2.13.2.0 — protsesside jälgimise ja haldamise tööriistad (sarnased daemontools'ile ja runit'ile). Toetatakse selliseid funktsioone nagu protsesside taaskäivitamine pärast nende ebaõnnestumist, teenuse aktiveerimise käsitlemine võrguporti juurdepääsu kaudu, sündmuste logimine (syslogd'i asendus) ja kontrollitud täiendavate privileegide andmine (sarnane sudo'le).
- s6-linux-init 1.1.3.0 — init-protsessi teostus Linuxi põhjal põhinevates operatsioonisüsteemides, mida kasutatakse initsialiseerimissüsteemide loomisel, kus teenuste ja skriptide haldamiseks kasutatakse s6 ja s6-rc pakette.
- s6-networking 2.7.1.0 — tööriistade komplekt võrguteenuste loomiseks, mis on sarnane ucspi'le.
- s6-frontend – wrapper, mis taastab daemontools'i ja runit'i funktsionaalsuse s6 peal.
- s6-portable-utils 2.3.1.0 — komplekt tüüpilisi Unix'i tööriistu, nagu cut, chmod, ls, sort ja grep, optimeeritud minimaalsete ressursside tarbimiseks ja litsentseeritakse ISC all.
- s6-linux-utils 2.6.3.0 — Linuxiga seotud tööriistade komplekt, nagu chroot, freeramdisk, logwatch, mount ja swapon.
- mdevd 0.1.7.0 — sündmuste haldur (sarnane udevd-le), mis on mõeldud seadmete kuumühenduse töötlemiseks. mdevd on Busyboxist saadud mdeviga ühilduv vastavalt konfiguratsioonile.
- bcnm 0.0.2.0 — võrgu konfigureerija koos klientpooli Wi-Fi seadistamise võimalustega.
- execline 2.9.7.0 — skriptikeel.
- skalibs 2.14.4.0 — C keeles turvaliste süsteemirakenduste loomise teek.
- s6-dns 2.4.1.0 — komplekt klienditeeke ja utiliite, mis asendavad tüüpilised DNS utiliidid BIND-ist ja djbdns-ist.
- dnsfunnel 0.0.3.0 — suunab kohalikke DNS-päringuid välisele. server (DNS edastaja).
- shibari 0.0.2.0 — lihtne DNS-server.
- tipidee 0.0.6.0 — HTTP-server, mis toetab HTTP/1.1.
Uutes versioonides on kõikidesse pakettidesse lisatud pkg-configi tugi. skalibs teegis on ellu viidud sisse-/väljundifunktsioonide variandid, mille töötamise aega saab piirata ajapiiranguga. mdevd-sse on lisatud valik «-I», et määrata netlinki grupi nimi päringute vastuvõtmiseks, vaikimisi on puhvri suurust suurendatud 1 MB-ni. tipideed on tagatud CGI-skriptide väljundi voogedastuse võimalus, lisatud on PUT, DELETE ja PATCH meetodite tugi, rakendatud on autochunk direktiiv edastatavate andmete chunked-kodeerimiseks.
Allikas: opennet.ru
