Ekipi i zhvilluesve të GNU Guix System ka publikuar menaxherin e shërbimeve GNU Shepherd 0.9.2 (i njohur ndryshe si dmd), i cili shërben si një alternativë për sistemin e inicializimit SysV-init dhe mbështet varësitë. Demoni menaxher dhe utilitetet e Shepherd janë shkruar në gjuhën Guile (një nga implementimet e gjuhës Scheme), e cila gjithashtu përdoret për të përcaktuar konfigurimet dhe parametrat e nisjes së shërbimeve. Shepherd tashmë po përdoret në distribucionin GuixSD GNU/Linux dhe është gjithashtu i destinuar për t'u përdorur në GNU/Hurd, por mund të funksionojë në çdo OS të përputhshme me POSIX, për të cilin është e disponueshme gjuhë Guile.
Shepherd merr një rol në nisjen dhe ndaljen e shërbimeve, duke marrë parasysh ndërveprimin mes tyre dhe duke përcaktuar dinamikisht shërbimet nga të cilat varet shërbimi i zgjedhur. Shepherd gjithashtu mbështet identifikimin e konflikteve midis shërbimeve dhe parandalon ekzekutimin e tyre njëkohësisht. Projekti mund të përdoret si një sistem kryesor inicializimi (init c PID 1), si dhe në një formë të veçantë për menaxhimin e proceseve pasuese të përdoruesve të veçantë (p.sh., për të nisur tor, privoxy, mcron etj.) me ekzekutimin në të drejtat e këtyre përdoruesve.
Among the changes:
- Deshifrusit e përdorur në Shepherd tani shenohen me flamurin O_CLOEXEC (mbyll-on-exec), dhe nuk mbyllen menjëherë gjatë ekzekutimit të "exec-command", që lejon kalimin e deshifruesve në shërbimet që nuk janë nisur direkt, por përmes "exec-command".
- Koneksionet e klientëve tani trajtohen në mënyrë jo-bllokuese, e cila parandalon ngrirjen e shepherd gjatë dërgimit të një komande të paplotë.
- është siguruar krijimi i një direktoriumi për skedarët e log-ut, të përcaktuar në konfigurimin "log-file", nëse ai mungon.
Burimi: opennet.ru
