Uma maneira fácil de se fazer isso é utilizar o SysVInit.
1 – Você deve criar um script de start e stop para sua aplicação. No exemplo vamos utilizar o diretorio /opt/:
Start Script: /opt/server/myapp-start.sh
Stop Script: /opt/server/myapp-stop.sh
Cada arquivo dará as instruções necessárias para executar e parar o aplicativo.
O conteudo é bem simples, exemplo de como ligar:
#!/bin/bash java -jar /opt/server/myapp.jar
Para parar, pode ser algo como:
#!/bin/bash # Grabs and kill a process from the pidlist that has the word myapp pid=`ps aux | grep myapp | awk '{print $2}'` kill -9 $pid
2 – Crie um script ‘myscript’ e coloque-o em /etc/init.d.
‘/etc/init.d/myscript’ conteudo:
#!/bin/bash # MyApp # # description: bla bla case $1 in start) /bin/bash /opt/server/myapp-start.sh ;; stop) /bin/bash /opt/server/myapp-stop.sh ;; restart) /bin/bash /opt/server/myapp-stop.sh /bin/bash /opt/server/myapp-start.sh ;; esac exit 0
3 – Coloque o script para iniciar com o sistema usando o SysV. Basta executar o seguinte comando como root:
update-rc.d myapp defaults
Lembre-se de dar permissão de execução para os 3 scripts criados. (start,stop,myscript);