GNU Shepherd 0.9 hasierako sistemaren kaleratzea

Azken bertsio esanguratsua sortu zenetik bi urtera, GNU Shepherd 0.9 (lehen dmd) zerbitzu kudeatzailea argitaratu zen, GNU Guix System banaketaren garatzaileek mendekotasunak onartzen dituen SysV-init hasierako sistemaren alternatiba gisa garatzen ari direna. . Shepherd kontrol daemon eta utilitateak Guile hizkuntzan (Scheme hizkuntzaren inplementazioetako bat) idatzita daude, zerbitzuak abiarazteko ezarpenak eta parametroak definitzeko ere erabiltzen dena. Shepherd GuixSD GNU/Linux banaketan erabiltzen da dagoeneko eta GNU/Hurd-en erabiltzeko ere zuzenduta dago, baina Guile hizkuntza erabilgarri dagoen POSIX-ekin bat datorren edozein OStan exekutatu daiteke.

Shepherd-ek zerbitzuak abiarazteko eta gelditzeko lana egiten du zerbitzuen arteko harremanak kontuan hartuta, aukeratutako zerbitzuaren menpe dauden zerbitzuak modu dinamikoan identifikatuz eta martxan jarriz. Shepherd-ek zerbitzuen arteko gatazkak detektatzeko eta aldi berean exekutatzeko saihesteko ere onartzen du. Proiektua hasierako sistema nagusi gisa erabil daiteke (init PID 1-arekin) eta inprimaki bereizi batean erabiltzaile indibidualen atzeko planoko prozesuak kudeatzeko (adibidez, tor, privoxy, mcron, etab. exekutatzeko) eskubideekin exekutatzeko. erabiltzaile horien artean.

Berrikuntza nagusiak:

  • Behin-behineko zerbitzuen kontzeptua (iragankorra) inplementatzen da, amaitu ondoren automatikoki desgaituta dago prozesua amaitzeagatik edo "stop" metodoaren deiagatik, eta hori beharrezkoa izan daiteke itzali ondoren berrabiarazi ezin diren sintetizatutako zerbitzuetarako.
  • Inetd antzeko zerbitzuak sortzeko, "make-inetd-constructor" prozedura gehitu da.
  • Sareko jardueran aktibatzen diren zerbitzuak sortzeko (systemd socket-a aktibatzeko estiloan), "make-systemd-constructor" prozedura gehitu da.
  • Zerbitzu bat atzeko planoan hasteko prozedura gehitu da - "hasi-atzealdean".
  • ":supplementary-groups", "#:create-session" eta "#:resource-limits" parametroak gehitu dira "make-forkexec-constructor" prozeduran.
  • Eragiketa gaituta blokeatu gabe PID fitxategien zain dagoen bitartean.
  • β€œ#:log-file” parametrorik gabeko zerbitzuetarako, syslog-era irteera ematen da, eta #:log-file parametroa duten zerbitzuetarako, erregistroa fitxategi bereizi batean idazten da, grabaketen ordua adieraziz. Pribilegiorik gabeko artzain-prozesuaren erregistroak $XDG_DATA_DIR direktorioan gordetzen dira.
  • Guile 2.0-rekin eraikitzeko laguntza eten egin da. Guile 3.0.5-3.0.7 bertsioak erabiltzean arazoak konpondu dira.
  • Fibres liburutegia 1.1.0 edo berriagoa behar da orain funtzionatzeko.

Iturria: opennet.ru

Gehitu iruzkin berria