Liberazione di u sistema init GNU Shepherd 0.9.2

U gestore di serviziu GNU Shepherd 0.9.2 (antica dmd) hè statu publicatu, chì hè sviluppatu da i sviluppatori di a distribuzione GNU Guix System cum'è una alternativa à u sistema d'inizializazione SysV-init chì sustene e dipendenze. U daemon di cuntrollu Shepherd è l'utilità sò scritti in a lingua Guile (una di l'implementazioni di a lingua Scheme), chì hè ancu utilizata per definisce e paràmetri è i paràmetri per i servizii di lanciazione. Shepherd hè digià utilizatu in a distribuzione GuixSD GNU/Linux è hè ancu destinatu à l'usu in GNU/Hurd, ma pò eseguisce nantu à qualsiasi OS compatibile cù POSIX per quale a lingua Guile hè dispunibule.

Shepherd faci u travagliu di principià è piantà i servizii per piglià in contu e rilazioni trà i servizii, identificendu dinamicamente è principiendu i servizii da quale dipende u serviziu sceltu. Shepherd supporta ancu a rilevazione di cunflitti trà i servizii è impediscenu di correre simultaneamente. U prughjettu pò esse usatu cum'è u sistema di inizializazione principale (init cù PID 1), è in una forma separata per gestisce i prucessi di fondo di l'utilizatori individuali (per esempiu, per eseguisce tor, privoxy, mcron, etc.) cù l'esekzione cù i diritti. di sti utilizatori.

Trà i cambiamenti:

  • I descrittori di file usati in Shepherd sò avà marcati cù a bandiera O_CLOEXEC (close-on-exec) piuttostu chè esse chjusu immediatamente quandu un exec-command hè eseguitu, chì permette à i manichi di passà à i servizii iniziati indirettamente da un exec-command.
  • I cunnessione di u cliente sò oghji processati in una manera senza bloccu, chì impedisce à u pastore di impiccà quandu invià un cumandamentu incompletu.
  • Assicura chì un repertoriu hè creatu per i schedarii di logu definiti in u paràmetru "log-file" se ùn esiste micca.

Source: opennet.ru

Add a comment