Izdanje sustava pokretanja GNU Shepherd 0.8

Dostupno voditelj servisa GNU Shepherd 0.8 (bivši dmd), koji razvijaju programeri distribucije GNU Guix sustava kao alternativu svjesnu ovisnosti sustavu pokretanja SysV-init. Shepherd kontrolni demon i uslužni programi napisani su na jeziku Guile (jedna od implementacija jezika Scheme), koji se također koristi za definiranje postavki i parametara za pokretanje servisa. Shepherd se već koristi u GuixSD GNU/Linux distribuciji i također je namijenjen za korištenje u GNU/Hurdu, ali može raditi na bilo kojem OS-u kompatibilnom s POSIX-om za koji je dostupan jezik Guile.

Shepherd se može koristiti i kao glavni sustav za inicijalizaciju (init s PID-om 1), iu posebnom obliku za upravljanje pozadinskim procesima pojedinačnih korisnika (na primjer, za pokretanje tor, privoxy, mcron, itd.) s izvršavanjem s pravima ovi korisnici. Shepherd obavlja posao pokretanja i zaustavljanja usluga uzimajući u obzir odnose između usluga, dinamički identificirajući i pokrećući usluge o kojima odabrana usluga ovisi. Shepherd također podržava otkrivanje sukoba između usluga i sprječavanje njihovog istovremenog rada.

Glavne inovacije:

  • Make-kill-destructor implementira ubijanje grupe procesa;
  • Dodan parametar “default-pid-file-timeout”, koji određuje vrijeme čekanja za kreiranje PID datoteke;
  • Ako se PID datoteka ne pojavi unutar vremenskog ograničenja, cijela grupa procesa se prekida (odlučuje problem napuštanje radnih procesa bez PID datoteke);
  • Dodan je parametar “#:file-creation-mask” u “make-forkexec-constructor”, implementirano je stvaranje log datoteke i prestala je podržavati staru konvenciju pozivanja;
  • Riješeni problemi s kompilacijom na sustavima bez prctl-a, kao što je GNU/Hurd;
  • Riješen je problem zbog kojeg se SIGALRM šalje svake sekunde.

Izvor: opennet.ru

Dodajte komentar