Pagpagawas sa GNU Shepherd 0.9 init nga sistema

Duha ka tuig human sa pagkaporma sa kataposang mahinungdanong pagpagawas, ang tigdumala sa serbisyo nga GNU Shepherd 0.9 (kaniadto dmd) gimantala, nga giugmad sa mga developers sa GNU Guix System distribution isip alternatibo sa SysV-init initialization system nga nagsuporta sa dependencies . Ang Shepherd control daemon ug mga utilities gisulat sa Guile nga pinulongan (usa sa mga pagpatuman sa Scheme nga pinulongan), nga gigamit usab sa paghubit sa mga setting ug mga parameter alang sa paglunsad sa mga serbisyo. Ang Shepherd kay gigamit na sa GuixSD GNU/Linux distribution ug gitumong usab nga gamiton sa GNU/Hurd, pero mahimong modagan sa bisan unsang POSIX-compliant OS diin anaa ang Guile nga pinulongan.

Gibuhat sa magbalantay ang buluhaton sa pagsugod ug paghunong sa mga serbisyo pinaagi sa pagkonsiderar sa mga relasyon tali sa mga serbisyo, dinamikong pag-ila ug pagsugod sa mga serbisyo diin ang napili nga serbisyo nagdepende. Gisuportahan usab sa Shepherd ang pag-ila sa mga panagbangi tali sa mga serbisyo ug pagpugong kanila sa pagdagan nga dungan. Ang proyekto mahimong magamit sa duha ingon nga nag-unang sistema sa pagsugod (init uban sa PID 1), ug sa usa ka bulag nga porma sa pagdumala sa mga proseso sa background sa mga indibidwal nga tiggamit (pananglitan, sa pagpadagan sa tor, privoxy, mcron, ug uban pa) uban ang pagpatuman sa mga katungod niini nga mga tiggamit.

Panguna nga mga inobasyon:

  • Ang konsepto sa temporaryo nga mga serbisyo (transient) gipatuman, awtomatik nga gi-disable human makompleto tungod sa pagtapos sa proseso o pagtawag sa "stop" nga pamaagi, nga mahimong gikinahanglan alang sa synthesized nga mga serbisyo nga dili ma-restart human sa pagsira.
  • Aron makahimo og mga serbisyo nga sama sa inetd, ang pamaagi nga "make-inetd-constructor" gidugang.
  • Aron makamugna og mga serbisyo nga gi-activate atol sa kalihokan sa network (sa systemd socket activation style), ang "make-systemd-constructor" nga pamaagi gidugang.
  • Gidugang nga pamaagi sa pagsugod sa usa ka serbisyo sa background - "start-in-the-background".
  • Gidugang ang mga parameter ": supplementary-groups", "#:create-session" ug "#:resource-limits" sa rutina nga "make-forkexec-constructor".
  • Gipaandar ang operasyon nga walay pagbabag samtang naghulat sa mga file sa PID.
  • Alang sa mga serbisyo nga wala ang parameter nga "#: log-file", gihatag ang output sa syslog, ug alang sa mga serbisyo nga adunay parameter nga #: log-file, ang log gisulat sa usa ka lahi nga file nga nagpaila sa oras sa mga pagrekord. Ang mga troso gikan sa walay pribilehiyo nga proseso sa magbalantay gitipigan sa $XDG_DATA_DIR nga direktoryo.
  • Ang suporta alang sa pagtukod sa Guile 2.0 gihunong na. Ang mga problema sa paggamit sa Guile nga bersyon 3.0.5-3.0.7 nasulbad na.
  • Ang librarya sa Fibers 1.1.0 o mas bag-o gikinahanglan na nga magtrabaho.

Source: opennet.ru

Idugang sa usa ka comment