Estou procurando uma maneira padrão ou uma prática recomendada para manter vivo um daemon iniciado por um init.d
script de shell.
Ou melhor ainda, existe uma maneira de mantê-lo vivo diretamente /etc/init.d
?
Especificamente, eu tenho um daemon chamado dtnd with e loop infinito que procura por um processo final inesperado, se houver algum, o daemon os ativa novamente. Além disso, eu uso a ferramenta start-stop-daemon para permitir que o precess seja executado a partir de um determinado usuário do sistema.
Eu quero executar este daemon dtnd na inicialização. Para atingir esse comportamento, criei um script init.d que "agrupa" o arquivo dtnd usando os comandos start, stop e status.
Tenho 2 perguntas que gostaria de resolver:
Existe uma maneira de conseguir manter vivo algum processo do script de shell init.d. É uma prática padrão / melhor maneira?
É recomendável manter um processo vivo com loop infinito? Eu acho que é melhor usar algum comando como esse
respawn
para conseguir isso. Está certo?
Eu sei sobre a existência do respawn
comando. Acho que é disso que preciso, mas não entendo o fluxo de trabalho entre /etc/init.d/
e /etc/init
. Alguém pode me ajudar?
Note que eu não tenho inittab nem arrivista (eu só estou autorizado a utilização /etc/init
, /etc/init.d
, cron
e ferramentas de sistema como start-stop-daemon
. Quero dizer, apenas as ferramentas padrão)
Muito obrigado pelo seu tempo!