Daemonize o processo com autostart

1

Eu tenho um script simples escrito em Ruby.

  • Gostaria de executar como uma tarefa em segundo plano (processo ou serviço do daemon).
  • O que é mais querer ter controle sobre isso para que eu possa começar e pará-lo.
  • Será perfeito se o processo puder ser iniciado automaticamente quando o meu VPS reiniciar.

Existe alguma maneira de fazer isso?

    
por Kamil Lelonek 29.06.2014 / 00:49

2 respostas

2

Na verdade, encontrei a solução perfeita para isso. Ele requer upstart , portanto, é muito mais fácil do que os serviços padrão, runit e systemd .

Aqui está uma instrução mais detalhada: link

E é algo como:

Em /etc/init/my_program_upstart_script.conf :

start on my_event
respawn
exec /home/my_user/my_program/my_program_executable

Sim, tão simples!

Basta executar o programa com sudo initctl emit my_event .

    
por Kamil Lelonek 30.06.2014 / 17:25
0

Uma maneira simples é criar scripts bash que iniciem / interrompam seu aplicativo. Siga /etc/init.d/skeleton como exemplo.

Instale seu script:

    sudo copy yourApplicationCtl /etc/init.d
    sudo chmod +x /etc/init.d/yourApplicationCtl

Para iniciar seu aplicativo na inicialização do servidor e parar no desligamento:

    sudo update-rc.d yourApplicationCtl defaults

Se você deseja iniciar / interromper manualmente seu aplicativo:

    sudo service yourApplicationCtl start/stop

Link útil são: UbuntuBootupComo , página man do upgrade-rc.d e serviço

    
por Lety 29.06.2014 / 16:55