O que é um Daemon?
Este estranho termo é uma relíquia da história do Unix, mas daemons ainda estão em uso hoje. O termo é sinônimo do conceito de "serviço", uma tarefa que é executada continuamente, normalmente sem interação do usuário.
Existem vários exemplos comuns de daemons e, mesmo que você não precise saber exatamente como eles funcionam, é pelo menos útil ser capaz de identificá-los.
O que é um Daemon?
Um daemon ou Disk And Execution MONitor é um programa executado como um processo em segundo plano, em vez de um processo interativo. Daemons são comuns entre ferramentas de rede e tarefas de administração do sistema. Você pode controlar alguns daemons enviando sinais para eles.
Como você pronuncia “Daemon”?
Apesar das aparências, a palavra daemon é tipicamente pronunciada da mesma forma que a palavra "demônio". Fique tranquilo, não tem nada a ver com rituais satânicos. Na verdade, o nome em última análise deriva da mitologia grega e do conceito de um espírito-guia, trabalhando incansavelmente em segundo plano. Nesse sentido, é um nome muito adequado!
Como funcionam os daemons?
Em sistemas Unix, o termo daemon é freqüentemente usado de forma intercambiável com o termo processo de segundo plano. Em outras palavras, é um processo que foi separado de qualquer shell e continua a ser executado de forma não interativa. Um verdadeiro daemon também deve se atribuir como filho do processo especial de inicialização que possui o ID de processo especial número 1.
Outras tarefas típicas envolvidas no isolamento do daemon incluem:
- Sandboxing removendo variáveis desnecessárias de seu ambiente.
- Configurando o diretório raiz (/) como o diretório de trabalho atual do processo.
- Redirecionando as descrições de arquivo para entrada, saída e erro para arquivos de log ou / dev / null .
Outros sistemas, como Windows e macOS, também usam daemons. No caso do Windows, os serviços são o equivalente mais próximo.
Quais são alguns demônios comuns?
Cron ( crond ) é um daemon que executa outros programas em uma programação. A maioria dos sistemas Unix o configura para ser executado automaticamente na inicialização. Ele desperta uma vez por minuto, verifica os arquivos de configuração e executa todos os comandos definidos para serem executados durante esse minuto. O Cron é inteligente o suficiente para reagir às mudanças nos arquivos crontab quando eles mudam. Você não precisa reiniciá-lo sozinho.
Servidores da Web, como o httpd do Apache, geralmente são executados como daemons – é o que o “d” significa. O daemon Apache lida com solicitações de entrada criando um pool de processos filhos para compartilhar a carga. Você pode usar um programa auxiliar, como apachectl , para controlar mais facilmente o daemon httpd em si.
Finalmente, o sshd é outro exemplo comum de daemon, desta vez um que lida com conexões SSH. Novamente, ele normalmente começa na inicialização e permanece em execução indefinidamente, contando com sinais para certas operações. Por exemplo, um sinal SIGHUP faz com que o sshd se reexecute, recarregando seu arquivo de configuração ao fazer isso.
Daemons são provedores de serviços vitais
Daemons são executados continuamente, realizando tarefas vitais para manter o computador funcionando. Freqüentemente, eles estão envolvidos quando um computador precisa atuar como servidor, agindo em nome de outros clientes.
Daemons são um componente vital de um servidor Linux. Se você é novo na configuração de um servidor, verifique nossas dicas para começar.