Como posso executar meu aplicativo Java no / após o boot?

0

Oi tudo eu sou novo em tudo isso, por favor, tenha paciência comigo. Eu criei este arquivo bash da seguinte forma:

rm /home/ubuntu/test.jar
wget http://mywebsite.com/test.jar
java -jar test.jar

Agora eu coloquei esse arquivo em vários lugares, executei algumas atualizações e também fiz um cron job com a função @reboot.

Não importa o que, o programa java nunca é realmente iniciado.

Agora, esse é um servidor Ubuntu sem cabeça da Amazon Web Services sem interface gráfica, somente acesso SSH, então eu tenho que fazê-lo via linha de comando e executá-lo como um daemon de algum tipo. Agradeço qualquer ajuda!

    
por David 01.06.2012 / 20:13

1 resposta

2

Colocar essas linhas em /etc/rc.local será outra opção. (Nas versões mais recentes do Ubuntu, /etc/rc.local não existe por padrão, então você deve criá-lo. Ele ainda é usado na inicialização, se existir.)

Você também deve tentar fornecer um caminho completo para os executáveis não localizados diretamente em /bin , ou seja, java e wget .

No entanto, se você estiver tentando executar isso como um usuário limitado ( ubuntu ?) em vez de root , usar /etc/rc.local talvez não seja a melhor maneira de fazer isso, pois os comandos em /etc/rc.local são executados como root .

Você pode obter /etc/rc.local para executar um script como um usuário que não seja root (supondo que você tenha acesso administrativo e, portanto, possa criar / editar /etc/rc.local ). Se o script que você deseja executar for /home/ubuntu/runtest , você deseja executá-lo como o usuário ubuntu e insiste em executá-lo com bash , você pode adicionar essa linha ao final de /etc/rc.local :

/usr/bin/sudo -u ubuntu bash /home/ubuntu/runtest > /dev/null
    
por Samik 01.06.2012 / 20:31