Kutolewa kwa mfumo wa GNU Shepherd 0.9 init

Miaka miwili baada ya kuundwa kwa toleo muhimu la mwisho, meneja wa huduma GNU Shepherd 0.9 (zamani dmd) ilichapishwa, ambayo inaendelezwa na wasanidi wa usambazaji wa Mfumo wa GNU Guix kama njia mbadala ya mfumo wa uanzishaji wa SysV-init ambao unaauni utegemezi. . Daemoni ya kudhibiti Mchungaji na huduma zimeandikwa katika lugha ya Uongo (mojawapo ya utekelezaji wa lugha ya Mpango), ambayo pia hutumika kufafanua mipangilio na vigezo vya kuzindua huduma. Shepherd tayari inatumika katika usambazaji wa GuixSD GNU/Linux na pia inalenga kutumika katika GNU/Hurd, lakini inaweza kutumia Mfumo wowote wa Uendeshaji unaotii POSIX ambapo lugha ya Gule inapatikana.

Mchungaji hufanya kazi ya kuanzisha na kusimamisha huduma kwa kuzingatia uhusiano kati ya huduma, kutambua kwa nguvu na kuanza huduma ambazo huduma iliyochaguliwa inategemea. Shepherd pia inasaidia kugundua migongano kati ya huduma na kuzizuia kufanya kazi kwa wakati mmoja. Mradi unaweza kutumika kama mfumo mkuu wa uanzishaji (init na PID 1), na kwa njia tofauti kudhibiti michakato ya nyuma ya watumiaji binafsi (kwa mfano, kuendesha tor, privoxy, mcron, nk) na utekelezaji na haki. ya watumiaji hawa.

Ubunifu kuu:

  • Dhana ya huduma za muda (ya muda mfupi) inatekelezwa, imezimwa kiatomati baada ya kukamilika kwa sababu ya kukomesha mchakato au wito wa njia ya "kuacha", ambayo inaweza kuhitajika kwa huduma za synthesized ambazo haziwezi kuanzishwa tena baada ya kuzima.
  • Ili kuunda huduma zinazofanana na inetd, utaratibu wa "make-inetd-constructor" umeongezwa.
  • Ili kuunda huduma ambazo zimeamilishwa wakati wa shughuli za mtandao (katika mtindo wa kuwezesha tundu la mfumo), utaratibu wa "make-systemd-constructor" umeongezwa.
  • Utaratibu ulioongezwa wa kuanzisha huduma chinichini - "anza-chini-chini".
  • Vigezo vilivyoongezwa ":vikundi-vya-ziada", "#:unda-kikao" na "#:mipaka-ya-rasilimali" kwa utaratibu wa "make-forkexec-constructor".
  • Uendeshaji uliowashwa bila kuzuia wakati wa kusubiri faili za PID.
  • Kwa huduma zisizo na kigezo cha "#:logi-faili", pato kwa syslog hutolewa, na kwa huduma zilizo na kigezo cha #:logi-file, logi imeandikwa kwa faili tofauti inayoonyesha wakati wa kurekodi. Kumbukumbu kutoka kwa mchakato wa mchungaji usio na upendeleo huhifadhiwa kwenye saraka ya $XDG_DATA_DIR.
  • Usaidizi wa kujenga na Gule 2.0 umekatishwa. Matatizo wakati wa kutumia matoleo ya Guile 3.0.5-3.0.7 yametatuliwa.
  • Maktaba ya Fibers 1.1.0 au mpya zaidi sasa inahitajika kufanya kazi.

Chanzo: opennet.ru

Kuongeza maoni