Megjelent az s6-rc 0.6.0.0 számú szolgáltatáskezelő kiadása, amely az inicializáló szkriptek és szolgáltatások indításának kezelésére szolgál. Támogatja a függőségek fa struktúrájának nyomon követését, valamint a szolgáltatások automatikus indítását vagy leállítását a megadott állapot eléréséhez. Az s6-rc eszközkészlet használható inicializálási rendszerekben, valamint tetszőleges eseményekhez kötött szolgáltatásindítások szervezésére. A rendszer támogatja a sysv-init-tel kompatibilis inicializáló szkripteket, és képes importálni a függőségekről szóló információkat a sysv-rc-ből vagy az OpenRC-ből. A kód C nyelven készült és ISC licenc alatt terjesztik.
Az s6-rc szolgáltatáskezelő egy sor segédeszközt tartalmaz tartósan futó folyamatok (démonszolgáltatások) vagy azonnal befejezett inicializáló skripttek elindításához és leállításához. Működése során párhuzamosan indítja el a nem átfedő szolgáltatásokat, és garantálja a különböző indítások során a skriptek végrehajtásának ismétlődő sorrendjét. Minden állapotváltozást a függőségek figyelembevételével kezel: például egy szolgáltatás indításakor automatikusan elindítja a működéséhez szükséges függőségeket, míg leállításkor a függő szolgáltatásokat is leállítja.
A többi szolgáltatáskezelőtől eltérően az s6-rc előzetes (offline) módon képes a szolgáltatások meglévő halmazához tartozó függőségek gráfjának felépítésére, ami lehetővé teszi, hogy a számításigényes függőségelemzést külön végezzék el, nem pedig a rendszer betöltése vagy állapotváltozása közben. Ezzel együtt a rendszer nem monolitikus, hanem különálló, helyettesíthető modulokra van felosztva, amelyek mindegyike a Unix filozófiájának megfelelően csak egy adott feladatot old meg. Az s6-rc projekt a minimalizmus filozófiáját követi (nem tartalmaz semmi felesleget) és minimális erőforrást használ.
A s6-rc-ben a futási szintek (runlevel) helyett a csomagok (bundles) koncepciója kerül bevezetésre, amely lehetővé teszi a szolgáltatások csoportosítását tetszőleges szempontok és megoldandó feladatok szerint. A hatékonyság növelése érdekében a s6-rc-compile segédprogram által létrehozott, a szolgáltatások indításához/megállításához szükséges fájlok tartalmából létrejövő, lefordított függőségi adatbázist használja. A függőségi adatbázis elemzésére és manipulálására az s6-rc-db és s6-rc-update segédprogramok állnak rendelkezésre.
Az új verzióban új, s6-rc-repo-* és s6-rc-set-* segédprogramok kerültek hozzáadásra a szolgáltatásmeghatározó tárolók kezelésére; biztosított a megosztott könyvtárak támogatása a macOS platformon; új „—bootdb” opció került be a szolgáltatásokkal és azok függőségeivel kapcsolatos információkat tartalmazó indító adatbázis beállításához a build szakaszban; az s6-rc-compile segédprogramhoz hozzáadták a „-v2” opciót.
A projekthez kapcsolódó csomagok is fejlődnek, amelyek kiegészítik az s6-rc-t:
- Az s6 olyan segédprogramok gyűjteménye, amelyek a folyamatok működésének nyomon követésére és kezelésére szolgálnak (a daemontools és a runit analógja). Támogatott lehetőségek közé tartozik a folyamatok újraindítása egy esetleges leállás után, a szolgáltatás aktiválására szolgáló kezelő elindítása egy hálózati port használatakor, az események naplózása (a syslogd helyettesítése), valamint további privilégiumok szabályozott biztosítása (a sudo analógja).
- Az s6-linux-init a Linux kernelre épülő operációs rendszerek számára készült init-folyamat megvalósítása, amely az s6 és s6-rc csomagok használatával kezeli a szolgáltatásokat és a szkripteket.
- s6-networking — hálózati szolgáltatások létrehozására szolgáló eszközök halmaza, hasonlóan az ucspi-hez.
- s6-frontend — a daemontools és runit funkcionalitásának rekonstrukciójához szükséges burkolat az s6 felett.
- s6-portable-utils — tipikus Unix segédeszközök halmaza, mint a cut, chmod, ls, sort és grep, amelyek minimalizált erőforrás-fogyasztásra optimalizáltak és ISC licenc alatt kerülnek forgalomba.
- s6-linux-utils — Linuxra vonatkozó segédeszközök halmaza, mint a chroot, freeramdisk, logwatch, mount és swapon.
- Az mdevd, amely az udevd analógja, egy eseménykezelő, amely a készülékek hotplug eseményeinek feldolgozására szolgál. Az mdevd konfigurációja kompatibilis a Busybox mdev-jével.
- A bcnm egy hálózati konfigurátor, amely lehetőséget biztosít a kliens oldali Wi-Fi beállítások konfigurálására.
- Az execline egy szkriptnyelv.
- A skalibs egy könyvtár, amely biztonságos rendszerszoftverek létrehozására szolgál C nyelven.
- s6-dns — DNS segédeszközök és könyvtárak halmaza, amelyek helyettesítik a BIND és djbdns szokásos DNS eszközeit.
- A dnsfunnel a helyi DNS-kéréseket egy külső szerverre irányítja. szerver (DNS előreirányító).
- A shibari egy egyszerű DNS-szerver.
- A tipidee egy HTTP-szerver, amely támogatja a HTTP/1.1-et.
Forrás: opennet.ru
