Por que daemonizamos processos? [fechado]
On Fevereiro 13, 2021 by adminResposta
Isso é mais de uma pergunta, cada uma pode ter respostas longas. Resumidamente
-
Se eu iniciar um programa em segundo plano usando & (por exemplo “./script &”), o que torna isso processo “execução diferente do que se eu executasse normalmente um programa que se transforma em daemon?
Executando um programa em segundo plano, ele não é mais controlado diretamente pelo terminal (você não pode simplesmente
^C
ele), mas ainda pode gravar no terminal e interferir no seu trabalho. Normalmente, um daemon se separa do terminal (além de bifurcação) e sua saída / erro seria redirecionado para os arquivos. -
Isso significa simplesmente que, se eu fizer logout, o processo em segundo plano será interrompido e o daemon continuará em execução?
O processo em segundo plano poderia ser protegido com
nohup
, mas a menos que sua saída fosse redirecionada, fechando o terminal minal impediria de escrever, produzindo um erro que provavelmente iria impedi-lo. -
Eu gostaria de saber se há algum risco / se é ruim prática.
Além do problema de manter o controle da saída do programa (e mensagens de erro), há o problema de reiniciá-lo se ele morrer. Um script de serviço se encaixa na maneira como os outros serviços no sistema são projetados, fornecendo uma maneira mais / menos padrão de controlar o daemon.
/dev/tty1
(alguns sistemas diferem).