Nuove versioni del gestore di servizi s6-rc e del sistema di inizializzazione s6-linux-init

È stata rilasciata la versione 0.5.6.0 del gestore di servizi s6-rc, progettato per gestire l'avvio di script di inizializzazione e servizi. Supporta il monitoraggio dell'albero delle dipendenze e l'avvio o l'arresto automatico dei servizi per raggiungere lo stato specificato. Lo strumento s6-rc può essere utilizzato sia nei sistemi di inizializzazione che per organizzare l'avvio di servizi arbitrari in base a eventi che riflettono il cambiamento di stato del sistema. Il sistema supporta script di inizializzazione compatibili con sysv-init e può importare informazioni sulle dipendenze da sysv-rc o OpenRC. Il codice è scritto in linguaggio C e viene distribuito con licenza ISC.

Il gestore di servizi s6-rc include un insieme di utility per avviare e fermare processi a lungo termine (demoni) o script di inizializzazione che si chiudono immediatamente. Durante l'operazione si garantisce l'avvio parallelo di servizi che non si sovrappongono e viene garantita una sequenza di esecuzione degli script che si ripete in diversi avvii. Tutti i cambiamenti di stato vengono gestiti tenendo conto delle dipendenze, ad esempio, quando viene avviato un servizio, verranno automaticamente avviate le dipendenze necessarie al suo funzionamento, mentre durante l'arresto verranno fermati anche i servizi dipendenti.

A differenza di altri gestori di servizi, s6-rc supporta la costruzione proattiva (in modalità offline) del grafo delle dipendenze per l'insieme di servizi esistente, che consente di eseguire un'analisi delle dipendenze ad alta intensità di risorse separatamente, anziché durante l'avvio o il cambiamento di stato. Inoltre, il sistema non è monolitico ed è suddiviso in una serie di moduli separati e sostituibili, ciascuno dei quali, secondo la filosofia Unix, si occupa solo di un compito specifico. Il progetto s6-rc segue una filosofia di minimalismo (non contiene nulla di superfluo) e consuma il minimo di risorse.

Invece dei livelli di avvio (runlevel), s6-rc propone un concetto di bundle, che consente di raggruppare i servizi secondo criteri e compiti vari. Per aumentare l'efficienza operativa, viene utilizzato un database compilato delle dipendenze, creato dallo strumento s6-rc-compile basato sul contenuto delle directory con i file per l'avvio/fermata dei servizi. Per l'analisi e la manipolazione del database, si propongono gli strumenti s6-rc-db e s6-rc-update.

Allo stesso tempo sono state create nuove versioni dei pacchetti associati che completano s6-rc:

  • s6 2.13.2.0 — strumenti per il monitoraggio e la gestione dei processi (simile a daemontools e runit). Supporta funzionalità come il riavvio dei processi dopo il loro crash, l'attivazione del servizio in caso di richiesta su una porta di rete, la registrazione degli eventi (sostituzione di syslogd) e la concessione controllata di privilegi aggiuntivi (simile a sudo).
  • s6-linux-init 1.1.3.0 — implementazione del processo init per i sistemi operativi basati su kernel Linux, utilizzato per creare sistemi di inizializzazione in cui i pacchetti s6 e s6-rc vengono utilizzati per gestire servizi e script.
  • s6-networking 2.7.1.0 — insieme di strumenti per la creazione di servizi di rete, simile a ucspi.
  • s6-frontend — un'interface per ricreare la funzionalità di daemontools e runit sopra s6.
  • s6-portable-utils 2.3.1.0 — insieme di utilità Unix standard, come cut, chmod, ls, sort e grep, ottimizzate per un consumo minimo di risorse e fornite sotto licenza ISC.
  • s6-linux-utils 2.6.3.0 — un insieme di strumenti legati a Linux, come chroot, freeramdisk, logwatch, mount e swapon.
  • mdevd 0.1.7.0 — gestore di eventi (simile a udevd), destinato alla gestione del collegamento a caldo dei dispositivi. Per configurazione, mdevd è compatibile con mdev incluso in Busybox.
  • bcnm 0.0.2.0 — configuratore di rete con capacità per configurare il Wi-Fi lato client.
  • execline 2.9.7.0 — linguaggio per la scrittura di script.
  • skalibs 2.14.4.0 — libreria per la creazione di applicazioni di sistema sicure in C.
  • s6-dns 2.4.1.0 — insieme di librerie e strumenti client che sostituiscono gli strumenti DNS standard di BIND e djbdns.
  • dnsfunnel 0.0.3.0 — reindirizza le richieste DNS locali verso l'esterno server (DNS forwarder).
  • shibari 0.0.2.0 — semplice server DNS.
  • tipidee 0.0.6.0 — server HTTP con supporto per HTTP/1.1.

Nelle nuove versioni, è stata aggiunta la supporto a pkg-config in tutti i pacchetti. Nella libreria skalibs sono state implementate varianti delle funzioni di input/output, il cui tempo di esecuzione può essere limitato da un timeout. In mdevd è stata aggiunta l'opzione «-I» per impostare il nome del gruppo netlink per la ricezione delle richieste, e la dimensione del buffer predefinita è stata aumentata a 1 MB. In tipideed è stata garantita la possibilità di trasmettere in streaming l'output dei CGI script, è stata aggiunta la supporto ai metodi PUT, DELETE e PATCH, e è stata implementata la direttiva autochunk per l'encoding chunked dei dati trasmessi.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster