Llançament del sistema d'inici GNU Shepherd 0.9

Dos anys després del seu darrer llançament significatiu, s'ha publicat GNU Shepherd 0.9 (anteriorment dmd). Està sent desenvolupat pels desenvolupadors de la distribució GNU Guix System com a alternativa al sistema d'inicialització SysV-init que gestiona les dependències. El daemon de control i les utilitats de Shepherd estan escrits en Guile (una implementació del llenguatge Scheme), que també s'utilitza per definir la configuració del servei i els paràmetres d'inici. Shepherd ja s'utilitza a la distribució GNU GuixSD.Linux i també està pensat per a l'ús en GNU/Hurd, però pot executar-se en qualsevol sistema operatiu compatible amb POSIX per al qual el llenguatge Guile estigui disponible.

Shepherd fa la feina d'iniciar i aturar serveis tenint en compte les relacions entre serveis, identificant i posant en marxa de forma dinàmica els serveis dels quals depèn el servei seleccionat. Shepherd també admet la detecció de conflictes entre serveis i evitar que s'executin simultàniament. El projecte es pot utilitzar tant com a sistema d'inicialització principal (init amb PID 1), com en una forma independent per gestionar processos en segon pla d'usuaris individuals (per exemple, per executar tor, privoxy, mcron, etc.) amb l'execució amb els drets d'aquests usuaris.

Principals innovacions:

  • S'implementa el concepte de serveis temporals (transitoris), desactivat automàticament després de la finalització per la finalització del procés o la crida del mètode "stop", que pot ser necessari per als serveis sintetitzats que no es poden reiniciar després de l'aturada.
  • Per crear serveis semblants a inetd, s'ha afegit el procediment "make-inetd-constructor".
  • Per crear serveis que s'activen durant l'activitat de la xarxa (a l'estil d'activació del sòcol systemd), s'ha afegit el procediment "make-systemd-constructor".
  • S'ha afegit un procediment per iniciar un servei en segon pla: "inici en segon pla".
  • S'han afegit els paràmetres ":supplementary-groups", "#:create-session" i "#:resource-limits" a la rutina "make-forkexec-constructor".
  • S'ha habilitat el funcionament sense bloquejar mentre s'espera els fitxers PID.
  • Per als serveis sense el paràmetre "#:log-file", es proporciona la sortida a syslog, i per als serveis amb el paràmetre #:log-file, el registre s'escriu en un fitxer independent que indica l'hora de les gravacions. Els registres del procés de pastor sense privilegis s'emmagatzemen al directori $XDG_DATA_DIR.
  • El suport per construir amb Guile 2.0 s'ha interromput. S'han resolt problemes en utilitzar les versions de Guile 3.0.5-3.0.7.
  • Ara cal que la biblioteca Fibres 1.1.0 o posterior funcioni.

Font: opennet.ru

Compreu allotjament fiable per a llocs amb protecció DDoS, servidors VPS VDS 🔥 Compra allotjament web fiable amb protecció DDoS, servidors VPS VDS | ProHoster