Ħruġ tas-sistema init GNU Shepherd 0.9

Sentejn wara l-formazzjoni tal-aħħar rilaxx sinifikanti, il-maniġer tas-servizz GNU Shepherd 0.9 (qabel dmd) ġie ppubblikat, li qed jiġi żviluppat mill-iżviluppaturi tad-distribuzzjoni tas-Sistema GNU Guix bħala alternattiva għas-sistema ta 'inizjalizzazzjoni SysV-init li tappoġġja dipendenzi. . Id-daemon tal-kontroll Shepherd u l-utilitajiet huma miktuba fil-lingwa Guile (waħda mill-implimentazzjonijiet tal-lingwa Scheme), li tintuża wkoll biex tiddefinixxi l-issettjar u l-parametri għat-tnedija tas-servizzi. Shepherd huwa diġà użat fid-distribuzzjoni GuixSD GNU/Linux u huwa wkoll immirat għall-użu f'GNU/Hurd, iżda jista' jaħdem fuq kwalunkwe OS konformi mal-POSIX li għalih tkun disponibbli l-lingwa Guile.

Shepherd jagħmel ix-xogħol li jibda u jwaqqaf is-servizzi billi jqis ir-relazzjonijiet bejn is-servizzi, jidentifika b’mod dinamiku u jibda s-servizzi li fuqhom jiddependi s-servizz magħżul. Shepherd jappoġġja wkoll is-sejbien ta' kunflitti bejn is-servizzi u l-prevenzjoni tagħhom milli jaħdmu fl-istess ħin. Il-proġett jista 'jintuża kemm bħala s-sistema ewlenija ta' inizjalizzazzjoni (init b'PID 1), kif ukoll f'forma separata biex timmaniġġja proċessi ta 'sfond ta' utenti individwali (per eżempju, biex imexxu tor, privoxy, mcron, eċċ.) B'eżekuzzjoni bid-drittijiet ta’ dawn l-utenti.

Innovazzjonijiet ewlenin:

  • Il-kunċett ta 'servizzi temporanji (transitorju) huwa implimentat, awtomatikament diżattivat wara t-tlestija minħabba t-terminazzjoni tal-proċess jew is-sejħa tal-metodu "waqfien", li jista' jkun meħtieġ għal servizzi sintetizzati li ma jistgħux jerġgħu jibdew wara l-għeluq.
  • Biex jinħolqu servizzi simili għal inetd, ġiet miżjuda l-proċedura "make-inetd-constructor".
  • Biex jinħolqu servizzi li huma attivati ​​waqt l-attività tan-netwerk (fl-istil ta 'attivazzjoni tas-socket systemd), il-proċedura "make-systemd-constructor" ġiet miżjuda.
  • Proċedura miżjuda biex jinbeda servizz fl-isfond - "bidu fl-isfond".
  • Parametri miżjuda ":supplementary-groups", "#:create-session" u "#:resource-limits" mar-rutina "make-forkexec-constructor".
  • Ippermetta l-operazzjoni mingħajr imblukkar waqt li tistenna l-fajls PID.
  • Għas-servizzi mingħajr il-parametru “#:log-file”, jiġi pprovdut output għal syslog, u għal servizzi bil-parametru #:log-file, ir-reġistru jinkiteb f’fajl separat li jindika l-ħin tar-reġistrazzjonijiet. Zkuk mill-proċess tar-ragħaj mhux privileġġjat huma maħżuna fid-direttorju $XDG_DATA_DIR.
  • L-appoġġ għall-bini b'Guile 2.0 twaqqaf. Ġew solvuti problemi meta tuża l-verżjonijiet Guile 3.0.5-3.0.7.
  • Il-librerija tal-Fibers 1.1.0 jew aktar ġdida issa hija meħtieġa biex taħdem.

Sors: opennet.ru

Żid kumment