GNU Shepherd 0.6 init -järjestelmän julkaisu

Lähettäjä palvelupäällikkö GNU Shepherd 0.6 (ex dmd), jota GuixSD GNU/Linux -jakelun kehittäjät kehittävät riippuvuutta tukevaksi vaihtoehdoksi SysV-init-alustusjärjestelmälle. Shepherd Control Daemon ja apuohjelmat on kirjoitettu Guile-kielellä (yksi Scheme-kielen toteutuksista), jota käytetään myös palvelujen käynnistämisen asetusten ja parametrien määrittämiseen. Shepherd on jo käytössä GuixSD GNU/Linux -jakelussa, ja se on myös tarkoitettu käytettäväksi GNU/Hurdissa, mutta se voi toimia missä tahansa POSIX-yhteensopivassa käyttöjärjestelmässä, jolle Guile-kieli on saatavilla.

Shepherdia voidaan käyttää sekä pääalustusjärjestelmänä (init PID 1:llä) että erillisessä muodossa yksittäisten käyttäjien taustaprosessien hallintaan (esimerkiksi tor-, privoxy-, mcron-ajon jne.) suorittamiseen oikeuksilla näitä käyttäjiä. Shepherd tekee palveluiden käynnistämisen ja lopettamisen ottamalla huomioon palveluiden väliset suhteet, tunnistamalla ja käynnistämällä dynaamisesti palvelut, joista valittu palvelu riippuu. Shepherd tukee myös palveluiden välisten ristiriitojen havaitsemista ja niiden samanaikaisen toiminnan estämistä.

Tärkeimmät innovaatiot:

  • Palvelutila lisätty yksi laukaus,
    jossa palvelu on merkitty pysäytetyksi välittömästi onnistuneen käynnistämisen jälkeen, mikä saattaa edellyttää kertaluonteisten töiden suorittamista ennen muita palveluita, esimerkiksi puhdistusta tai alustusta varten;

  • Varmistettu, että tiedostot, joissa on socketit, poistetaan sammutuksen jälkeen
    paimen;

  • "Lauman pysäytys" -komento ei enää näytä virhettä, kun se suoritetaan jo pysäytetylle palvelulle;
  • Lauma-apuohjelma palauttaa nyt nollasta poikkeavan palautuskoodin, jos tehtävän käynnistys epäonnistuu;
  • Kun ajetaan säilössä, lataamiseen liittyvät virheet ohitetaan.

Lähde: opennet.ru

Lisää kommentti