Vrystelling van die GNU Shepherd 0.9.2 init-stelsel

Die diensbestuurder GNU Shepherd 0.9.2 (voorheen dmd) is gepubliseer, wat ontwikkel word deur die ontwikkelaars van die GNU Guix System-verspreiding as 'n alternatief vir die SysV-init-initialiseringstelsel wat afhanklikhede ondersteun. Die Shepherd-beheerdaemon en nutsprogramme is in die Guile-taal geskryf (een van die implementerings van die Skema-taal), wat ook gebruik word om instellings en parameters vir die bekendstelling van dienste te definieer. Shepherd word reeds in die GuixSD GNU/Linux-verspreiding gebruik en is ook gemik op gebruik in GNU/Hurd, maar kan op enige POSIX-voldoenende bedryfstelsel werk waarvoor die Guile-taal beskikbaar is.

Shepherd doen die werk om dienste te begin en te stop deur die verhoudings tussen dienste in ag te neem, die dienste waarvan die geselekteerde diens afhanklik is, dinamies te identifiseer en te begin. Shepherd ondersteun ook die opsporing van konflikte tussen dienste en voorkoming daarvan om gelyktydig te loop. Die projek kan beide gebruik word as die hoof inisialiseringstelsel (init met PID 1), en in 'n aparte vorm om agtergrondprosesse van individuele gebruikers te bestuur (byvoorbeeld om tor, privoxy, mcron, ens.) met uitvoering met die regte te bestuur van hierdie gebruikers.

Onder die veranderinge:

  • Lêerbeskrywings wat in Shepherd gebruik word, word nou gemerk met die O_CLOEXEC (close-on-exec) vlag eerder as om onmiddellik gesluit te word wanneer 'n exec-opdrag uitgevoer word, wat toelaat dat handvatsels oorgedra word na dienste wat indirek deur 'n exec-opdrag begin is.
  • Kliëntverbindings word nou op 'n nie-blokkerende wyse verwerk, wat verhoed dat herder hang wanneer 'n onvolledige opdrag gestuur word.
  • Verseker dat 'n gids geskep word vir loglêers wat in die "log-file" instelling gedefinieer is as dit nie bestaan ​​nie.

Bron: opennet.ru

Voeg 'n opmerking