Iniciar o processo root na inicialização?

Iniciar o processo root na inicialização?

Gostaria de iniciar um processo em segundo plano como root quando minha instalação do Linux for inicializada. Posso simplesmente adicioná-lo a um diretório ou arquivo de configuração?

Responder1

Basicamente você tem duas opções:

  1. use um crontrabalho com @rebootespecificação de tempo (veja crontab(1)a página de manual para detalhes)

  2. inicie-o pelo sistema init. Para o estilo de inicialização BSD/SysV, isso significa adicionar um script em algum lugar para ser executado no nível de execução desejado. Para o systemd, isso envolve criar um arquivo de unidade e solicitá-lo ao destino desejado.

A primeira solução é melhor para coisas locais para uma ou duas máquinas (já que são mais uma questão de configuração); o segundo é adequado para coisas do tipo serviço/daemon que provavelmente serão executadas em mais sistemas - e devem ser empacotadas para facilitar a manutenção.

Responder2

A maneira mais fácil de executar um processo como root no momento da inicialização é iniciá-lo a partir do arquivo /etc/rc.local. Edite esse arquivo e adicione uma linha como

/path/to/my/daemon &

No entanto, esta não é uma maneira muito boa de iniciar um daemon. Você não tem nenhuma maneira conveniente de controlá-lo (verificar se está em execução, interrompê-lo, reiniciá-lo, etc.).

Existem vários frameworks para controlar daemons. Eles estão vinculados ao seu sistema init: Sysvinit, Upstart, Systemd, cada um tem o seu caminho. Verifique o que está instalado no seu sistema (varia entre as variantes Unix e, para Linux, varia de acordo com a distribuição e a escolha do administrador).

informação relacionada