Rilascio del sistema init GNU Shepherd 0.6

Introdotto responsabile del servizio GNU Pastore 0.6 (ex dm), sviluppato dagli sviluppatori della distribuzione GuixSD GNU/Linux come alternativa con supporto delle dipendenze al sistema di inizializzazione SysV-init. Il demone di controllo Shepherd e le utilità sono scritti nel linguaggio Guile (una delle implementazioni del linguaggio Scheme), che viene utilizzato anche per definire impostazioni e parametri per l'avvio dei servizi. Shepherd è già utilizzato nella distribuzione GuixSD GNU/Linux ed è pensato anche per l'uso in GNU/Hurd, ma può essere eseguito su qualsiasi sistema operativo compatibile con POSIX per il quale è disponibile il linguaggio Guile.

Shepherd può essere utilizzato sia come sistema di inizializzazione principale (init con PID 1), sia in forma separata per gestire i processi in background dei singoli utenti (ad esempio, per eseguire tor, privoxy, mcron, ecc.) con esecuzione con i diritti di questi utenti. Shepherd svolge il lavoro di avvio e arresto dei servizi tenendo conto delle relazioni tra i servizi, identificando e avviando dinamicamente i servizi da cui dipende il servizio selezionato. Shepherd supporta inoltre il rilevamento dei conflitti tra i servizi e la prevenzione dell'esecuzione simultanea.

Principali innovazioni:

  • Aggiunta modalità di servizio un colpo,
    in cui un servizio è contrassegnato come interrotto immediatamente dopo un avvio riuscito, che potrebbe essere necessario per eseguire lavori una tantum prima di altri servizi, ad esempio per eseguire la pulizia o l'inizializzazione;

  • Garantito che i file con socket vengano eliminati dopo lo spegnimento
    pastore;

  • Il comando “herd stop” non visualizza più un errore se eseguito su un servizio già interrotto;
  • L'utilità herd ora restituisce un codice di ritorno diverso da zero se l'avvio dell'attività non riesce;
  • Durante l'esecuzione in un contenitore, gli errori relativi al caricamento vengono ignorati.

Fonte: opennet.ru

Aggiungi un commento