Kaks aastat pĂ€rast eelmise olulise vĂ€ljaande loomist on avaldatud GNU Shepherd 0.9 (endine dmd), mis on GNU Guix System'i arendajate loodud teenusehaldur alternatiivina SysV-init initsialiseerimissĂŒsteemile, millel on sĂ”ltuvuste toetus. Shepherdi haldusteem ja utiliidid on kirjutatud Guile'i keeles (ĂŒks Scheme'i keele rakendustest), mida kasutatakse ka teenuste seadete ja kĂ€ivitamisparameetrite mÀÀratlemiseks. Shepherd on juba kasutusel GuixSD GNU/Linuxi sĂŒsteemis ja on suunatud ka GNU/Hurdi kasutamiseks, kuid vĂ”ib töötada igas POSIX-kliendiga opsĂŒsteemis, kus Guile'i keel on saadaval.
Shepherd teostab teenuste kĂ€ivitamist ja peatamist, arvestades teenuste vahelisi seoseid, dĂŒnaamiliselt mÀÀrates ja kĂ€ivitades teenuseid, millest valitud teenus sĂ”ltub. Shepherd toetab samuti konfliktide mÀÀratlemist teenuste vahel ning takistab nende samaaegset tĂ€itmist. Projekti saab kasutada nii peamise initsialiseerimissĂŒsteemina (init PID 1) kui ka eraldi vormis, et hallata teatud kasutajate taustateenuseid (nt tor, privoxy, mcron jne), tehes seda vastava kasutaja Ă”iguste all.
PÔhilised uuendused:
- On rakendatud ajutiste teenuste (transient) kontseptsioon, mis lĂŒlitatakse automaatselt vĂ€lja pĂ€rast lĂ”petamist, kas protsessi lĂ”petamise vĂ”i meetodi âstopâ vĂ€ljakutsumise tĂ”ttu, mis vĂ”ib olla vajalik sĂŒnteesitud teenuste puhul, mida ei saa pĂ€rast lĂ”petamist uuesti kĂ€ivitada.
- inetd-sarnaste teenuste loomiseks on lisatud protseduur âmake-inetd-constructor.â
- Teenuste loomiseks, mis aktiveeruvad vĂ”rguaktiviteedi korral (systemd socket activation stiilis), on lisatud protseduur âmake-systemd-constructor.â
- Lisatud protseduur teenuse kĂ€ivitamiseks taustal â âstart-in-the-background.â
- Protseduuriga «make-forkexec-constructor» on lisatud parameetrid «:supplementary-groups», «#:create-session» ja «#:resource-limits».
- Tagatud on blokeerimata töö PID-failide ootamisel.
- Teenuste jaoks, millel puudub parameeter «#:log-file», on tagatud syslog'i vÀljund, ja teenuste puhul, millel on parameeter «#:log-file», salvestatakse logi eraldi faili koos kirje ajatemplega. Madala Ôigustega protsessi shepherd logid salvestatakse katalooge $XDG_DATA_DIR.
- Tugi Guile 2.0 jaoks on lÔpetatud. Probleemid Guile versioonidega 3.0.5-3.0.7 on lahendatud.
- NĂŒĂŒd on nĂ”utav Fibers 1.1.0 vĂ”i uuema versiooni teek.
Allikas: opennet.ru
