Takmer po roku od posledného vydania bola vydaná nová verzia správcu služieb GNU Shepherd 0.10 (predtým známy ako dmd), čo je bytie vyvinuté vývojármi distribúcie GNU Guix ako alternatíva k inicializácii SysV-init s vedomím závislosti od systému.
Toto nové vydanie z GNU Shepherd 0.10 predstavuje 132 commitov dvoch ľudí a navyše sa považuje za vydanie, pretože rieši nedostatky a poskytuje nové funkcie
Pomáhajú pochopiť stav systému.
GNU Shepherd je správca služieb napísaný v Guile, ktorý sa stará o „stádo“ démonov, ktoré bežia v systéme, pretože pposkytuje užívateľskú funkčnosť asynchrónne ako služby Môže byť použitý ako systémový init (PID 1) a tiež neprivilegovanými používateľmi na správu démonov jednotlivých používateľov, napr. tor, privoxy, mcron.
Je potrebné poznamenať, že podporuje niekoľko mechanizmov spúšťania démonov, vrátane spúšťacej zásuvky inetd a systemd. GNU Shepherd je nakonfigurovaný v Guile Scheme a môže byť rozšírený v rovnakom jazyku. Je založený na jednoduchom programovacom modeli, ktorý je bezpečný z hľadiska pamäte a bez spätného volania.
Jadrom Shepherdského modelu inicializácie používateľského priestoru je koncept rozšírenia, forma skladateľnosti, v ktorej sú služby navrhnuté tak, aby sa prekrývali s inými službami, a podľa potreby ich rozširujú o prepracovanejšie alebo špecializované správanie.
Hlavné nové funkcie GNU Shepherd 0.10
V tejto novej verzii GNU Shepherd 0.10, ktorá je prezentovaná, to vyniká nová sprostredkovateľská služba uvádza: "spustenie" a "zastavenie", ktoré sa zobrazia spustením príkazu „stav stáda“ a určením, či sa služba spúšťa alebo zastavuje (predtým boli podporované iba stavy stáda „beží“ a „zastavené“).
Ďalšou zmenou, ktorá vyniká v novej verzii, je tá je zabezpečené blokovanie opätovného vykonania operácií "štart" a "stop" či už bola služba spustená alebo zastavená (predtým vykonanie príkazu "stádo začať SERVIS» viedlo k pokusu o spustenie druhej inštancie služby).
Okrem toho sa zdôrazňuje aj to je zabezpečená paralelizácia spúšťania závislostí a služby spustené v režime «štart v pozadí«, ako aj účtovanie času porúch a zmien stavu každej služby. Po vykonaní príkazu „stav stáda“ sa zobrazia akumulované štatistiky.
Môžeme tiež zistiť, že pribudol príkaz „herd log“ pre zobrazenie súhrnného logu udalostí a zoznamu všetkých zmien v stave služby.
Z ďalšie zmeny ktoré vynikajú:
- Pridaný príkaz "herd graph" na generovanie údajov, ktoré umožňujú Graphviz ("herd graph | xdot -") použiť na zobrazenie vizuálneho grafu závislostí.
- Bolo implementované farebné zvýraznenie výstupu príkazu stáda.
- Pridané nové služby: „monitoring“ na monitorovanie spotreby zdrojov procesu a „repl“ na spustenie ladiaceho rozhrania REPL (cyklus čítania, hodnotenia a tlače).
- Rozhranie GOOPS (Guile Object Oriented Programming System) bolo zastarané.
Nakoniec, pre tých, ktorí majú záujem dozvedieť sa o ňom viac, môžete si podrobnosti prečítať v nasledujúci odkaz.
Ako nainštalovať GNU Shepherd?
Pre záujemcov o možnosť vyskúšať si GNU Shepherd, ako už bolo spomenuté Shepherd je vyvinutý v spojení s projektom GNU Guix a používa sa ako štartovací systém Guix.
Hoci tiežShepherd nie je možné nainštalovať na žiadnu distribúciu Linuxu, teda pre prípad tých, ktorí sú Používatelia Arch Linuxu stačí povoliť úložisko AUR a zadať nasledujúci príkaz:
yay -S shepherd
Pre všetky ostatné distribúcie inštaláciu je možné vykonať kompiláciou zdrojového kódu a na to stačí otvoriť terminál a zadať ho:
wget https://ftp.gnu.org/gnu/shepherd/shepherd-0.10.0.tar.gz
Extrahujeme pomocou:
tar -xvf shepherd/shepherd-0.10.0.tar.gz
Do adresára vstupujeme pomocou:
cd shepherd-0.10.0
A pokračujeme v kompilácii s:
./configure --prefix=/some/where
make
make check
make install