Debian Linux - execute o script / app na inicialização

2

Eu tenho um arquivo .jar que eu executo assim:

java -jar server.jar 4242

Então eu tenho um script java-server.sh para iniciá-lo:

#!/bin/sh
java -jar server.jar 4242 &

server.jar deve começar a trabalhar na inicialização do sistema, então eu tentei:

  1. Adicionando @reboot /home/user/java-server.sh a crontab -e
  2. Adicionando bash java-server.sh || sair 1 para rc.local
  3. Adicionando java-server.sh ao /etc/init.d

Nada disso funciona. Se eu entrar no sistema e lançar o meu script, eu funciono como um relógio até eu sair. Qual é o problema aqui?

    
por Max 16.08.2016 / 09:21

1 resposta

1

Você deve chamar seu script de caminho completo, por exemplo, colocar em /etc/rc.local :

 bash /usr/local/bin/java-server.sh > /tmp/java-server.log 2>&1

se o seu script estiver em /usr/local/bin , é claro ... Isso também criará um arquivo de log para depurar outros possíveis problemas. (Note que na produção você nunca deve criar tais arquivos de log em / tmp por razões de segurança, mas em / var / log com permissão apropriada, rettention e log rotating, mas isso é simplificado para propósitos de resposta)

    
por 16.08.2016 / 11:11