Resolvido:
Eu resolvi este problema introduzindo um atraso antes de executar o script: @reboot sleep 60; /root/start_server.sh
No Ubuntu 14.04, eu tenho um conjunto de entrada crontab para ser executado na reinicialização:
@reboot /root/start_server.sh
E aqui está o start_server.sh
:
screen -dmS server bash -c "cd server ; ./run.sh"
Quando o sistema é inicializado, run.sh
é realmente executado e o servidor permanece ativo, mas não há sessões quando digito screen -ls
. Por causa disso, não consigo acessar o processo do servidor após a inicialização.
O que está acontecendo na sessão que eu chamei de "servidor"? Se está sendo terminado de alguma forma, como evito isso?
Eu tentei adicionar exec bash
a start_server.sh
de acordo com a resposta aqui , mas tinha sem efeito.
Tags bash cron gnu-screen scripting