Lançamento do gerenciador de serviços s6-rc 0.7

Foi lançado o serviço gerenciador s6-rc 0.7.0.0, destinado ao gerenciamento do lançamento de scripts de inicialização e serviços. O rastreamento da árvore de dependências é suportado, assim como o início ou término automático de serviços para alcançar o estado especificado. O conjunto de ferramentas s6-rc pode ser usado tanto em sistemas de inicialização quanto para organizar o lançamento de serviços arbitrários em resposta a eventos que refletem mudanças no estado do sistema. O sistema suporta scripts de inicialização compatíveis com sysv-init e pode importar informações sobre dependências de sysv-rc ou OpenRC. O código é escrito na linguagem C e distribuído sob a licença ISC.

O gerenciador de serviços s6-rc inclui um conjunto de utilitários para iniciar e parar processos de longa duração (demonstrações) ou scripts de inicialização que terminam imediatamente. Durante a operação, garante a execução paralela de serviços não sobrepostos e mantém uma sequência de execução dos scripts que se repete em diferentes lançamentos. Todas as mudanças de estado são tratadas levando em consideração as dependências; por exemplo, ao iniciar um serviço, as dependências necessárias para o seu funcionamento serão automaticamente iniciadas, e ao interromper, os serviços dependentes serão parados.

Ao contrário de outros gerenciadores de serviços, o s6-rc suporta a construção proativa (em modo offline) do gráfico de dependências para o conjunto de serviços existente, permitindo realizar uma análise de dependências que exige muitos recursos separadamente, e não durante a inicialização ou mudança de estado. Nesse processo, o sistema não é monolítico e é dividido em uma série de módulos individuais e substituíveis, cada um dos quais, de acordo com a filosofia Unix, resolve apenas uma tarefa específica. O projeto s6-rc adere à filosofia do minimalismo (não contém nada desnecessário) e consome o mínimo de recursos.

Em vez de níveis de execução (runlevel), o s6-rc propõe o conceito de conjuntos (bundles), permitindo agrupar serviços por características arbitrárias e tarefas a serem resolvidas. Para aumentar a eficiência do trabalho, uma base de dados de dependências compilada é criada pela ferramenta s6-rc-compile com base no conteúdo dos diretórios com arquivos para iniciar/parar serviços. As ferramentas s6-rc-db e s6-rc-update são oferecidas para análise e manipulação da base de dados. O conjunto de ferramentas s6 é utilizado nas distribuições Obarun, Adelie e Artix, e também pode ser usado opcionalmente em Gentoo, Void e Alpine.

O projeto também desenvolve pacotes complementares que enriquecem o s6-rc:

  • s6 — utilitários para rastrear e gerenciar processos (equivalente a daemontools e runit). Possui recursos como reinício de processos após falhas, ativação de serviços ao ser acessada uma porta de rede, registro de eventos (substituindo syslogd) e concessão controlada de privilégios adicionais (semelhante ao sudo).
  • s6-linux-init — implementação do processo init para sistemas operacionais baseados no núcleo Linux, utilizado para criar sistemas de inicialização nos quais pacotes s6 e s6-rc são usados para gerenciar serviços e scripts.
  • s6-networking — conjunto de utilitários para criação de serviços de rede, semelhante ao ucspi.
  • s6-frontend — camada para recriar a funcionalidade do daemontools e runit sobre o s6.
  • s6-portable-utils — conjunto de utilitários Unix típicos, como cut, chmod, ls, sort e grep, otimizados para consumir recursos mínimos e fornecidos sob a licença ISC.
  • s6-linux-utils — conjunto de utilitários vinculados ao Linux, como chroot, freeramdisk, logwatch, mount e swapon.
  • mdevd — gerenciador de eventos (equivalente ao udevd), destinado ao tratamento de conexão a quente de dispositivos. Configuração do mdevd é compatível com o mdev do Busybox.
  • bcnm — configurador de rede com recursos para configuração de Wi-Fi do lado do cliente.
  • execline — linguagem para escrita de scripts.
  • skalibs — biblioteca para criação de aplicativos de sistema seguros em C.
  • s6-dns — um conjunto de bibliotecas e utilitários para clientes que substituem as utilidades DNS padrão do BIND e djbdns.
  • dnsfunnel — redireciona solicitações DNS locais para o externo servidor (encaminhador DNS).
  • shibari — um servidor DNS simples.
  • tipidee — servidor HTTP com suporte para HTTP/1.1.

Na nova versão do s6-rc e das ferramentas associadas:

  • Foi implementado o comando “s6-rc reload” para reiniciar serviços em execução por longo tempo.
  • Adicionado o arquivo de controle reload-signal, que define o sinal enviado ao processo para reinicialização (por padrão SIGHUP).
  • A ferramenta s6-rc-bundle foi removida — a modificação de conjuntos de bundle sem recompilação não é mais suportada.
  • Um novo formato de base de dados interna foi proposto (a atualização requer recompilação e a execução da ferramenta s6-rc-format-upgrade).
  • Assegurada a correta manipulação da situação de reinicialização da ferramenta s6-rc-init para inicializar serviços e aprimorada a manipulação de falhas de sistema.
  • Na ferramenta s6-rc-set-change foram adicionadas opções: -I/-i para exibir um aviso ou terminar com erro ao detectar uma dependência conflitante; -P/-p para habilitar/desabilitar a resolução automática de conflitos de dependências ao alterar o estado dos serviços.
  • A opção obsoleta “-f” foi removida.
  • Na ferramenta s6 foi adicionada a comando s6-svscanboot para redirecionar logs do supervisor s6-svscan para s6-log, quando não é executado sob o PID 1.
  • A opção «s6-svc -l» foi implementada para enviar um sinal para reiniciar.
  • O interface do usuário s6-frontend agora suporta opções e comandos: «s6 —user» (para trabalhar com serviços de usuário), «s6 live reset», «s6 apply», «s6 enable|disable|start|stop|kill|apply», «s6 live stop —clean».
  • No servidor http tipidee, foi implementado suporte para FastCGI e adicionada a opção cgi_pass_authorization.

    Fonte: opennet.ru
Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster