Rhyddhau system init GNU Shepherd 0.9

Ddwy flynedd ar Γ΄l ffurfio'r datganiad sylweddol diwethaf, cyhoeddwyd y rheolwr gwasanaeth GNU Shepherd 0.9 (dmd gynt), sy'n cael ei ddatblygu gan ddatblygwyr dosbarthiad System GNU Guix fel dewis arall i system gychwyn SysV-init sy'n cefnogi dibyniaethau. . Mae'r ellyll rheoli Shepherd a'r cyfleustodau wedi'u hysgrifennu yn yr iaith Guile (un o weithrediadau iaith y Cynllun), a ddefnyddir hefyd i ddiffinio gosodiadau a pharamedrau ar gyfer lansio gwasanaethau. Mae Shepherd eisoes yn cael ei ddefnyddio yn y dosbarthiad GNU/Linux GuixSD ac mae hefyd wedi'i anelu at ei ddefnyddio yn GNU/Hurd, ond gall redeg ar unrhyw OS sy'n cydymffurfio Γ’ POSIX y mae'r iaith Guile ar gael ar ei gyfer.

Mae Shepherd yn gwneud y gwaith o gychwyn a stopio gwasanaethau trwy gymryd i ystyriaeth y berthynas rhwng gwasanaethau, gan nodi a chychwyn yn ddeinamig y gwasanaethau y mae'r gwasanaeth a ddewiswyd yn dibynnu arnynt. Mae Shepherd hefyd yn cefnogi canfod gwrthdaro rhwng gwasanaethau a'u hatal rhag rhedeg ar yr un pryd. Gellir defnyddio'r prosiect fel y brif system gychwyn (cychwyn gyda PID 1), ac ar ffurf ar wahΓ’n i reoli prosesau cefndir defnyddwyr unigol (er enghraifft, i redeg tor, privoxy, mcron, ac ati) gyda gweithredu gyda'r hawliau o'r defnyddwyr hyn.

Prif arloesiadau:

  • Mae'r cysyniad o wasanaethau dros dro (dros dro) yn cael ei weithredu, yn cael ei analluogi'n awtomatig ar Γ΄l ei gwblhau oherwydd terfynu'r broses neu alwad y dull β€œstopio”, a allai fod yn ofynnol ar gyfer gwasanaethau wedi'u syntheseiddio na ellir eu hailddechrau ar Γ΄l cau.
  • Er mwyn creu gwasanaethau tebyg i inetd, mae'r weithdrefn β€œgwneud-inetd-constructor” wedi'i hychwanegu.
  • Er mwyn creu gwasanaethau sy'n cael eu actifadu yn ystod gweithgaredd rhwydwaith (yn yr arddull actifadu soced systemd), mae'r weithdrefn β€œgwneud-systemd-constructor” wedi'i hychwanegu.
  • Ychwanegwyd gweithdrefn ar gyfer cychwyn gwasanaeth yn y cefndir - β€œdechrau yn y cefndir”.
  • Wedi ychwanegu paramedrau ":supplementary-groups", "#:create-session" a "#:resource-limits" i'r drefn "make-forkexec-constructor".
  • Galluogi gweithrediad heb rwystro wrth aros am ffeiliau PID.
  • Ar gyfer gwasanaethau heb y paramedr β€œ#: log-file”, darperir allbwn i syslog, ac ar gyfer gwasanaethau gyda'r paramedr #: log-file, ysgrifennir y log i ffeil ar wahΓ’n yn nodi amser y recordiadau. Mae logiau o'r broses bugail di-freintiedig yn cael eu storio yn y cyfeiriadur $XDG_DATA_DIR.
  • Mae cefnogaeth ar gyfer adeiladu gyda Guile 2.0 wedi dod i ben. Mae problemau wrth ddefnyddio fersiynau Guile 3.0.5-3.0.7 wedi'u datrys.
  • Bellach mae angen llyfrgell Fibres 1.1.0 neu fwy newydd i weithio.

Ffynhonnell: opennet.ru

Ychwanegu sylw