Eu tenho uma aplicação java que eu começo com ...
nohup java -cp MyServer.jar > log.txt 2> errors.txt < /dev/null &
O aplicativo é apenas um serviço da web que fornece alguns métodos para atualizar um banco de dados sqlite.
Quando eu inicio o aplicativo (com o comando acima), ele funciona bem, e eu posso ver nos arquivos de log que ele está atualizando o banco de dados.
No entanto, quando eu faço logout da minha sessão SSH, o serviço da web falha ao tentar acessar o banco de dados.
Ele retorna ...
java.sql.SQLException: path to 'dbrocket.db': '/home/rich/roketapp' does not exist
Obviamente, esse caminho existe, assim como o arquivo.
Se eu me reconectar ao servidor Ubuntu, ele começará a funcionar novamente (não estou reiniciando o aplicativo), então é quase como se ele perdesse alguns direitos de segurança quando eu sair.
A segurança no arquivo é
-rw-r--r-- 1 rich rich 3697664 Dec 5 09:27 dbroket.db
Talvez eu precise mudar isso, mas prefiro entender por que isso está acontecendo.
Sou bastante novo no Ubuntu / Java / Linux, etc. por favor, tenha paciência comigo se estiver faltando algo óbvio.
Saída de df /home/rich/roketapp
Filesystem 1K-blocks Used Available Use% Mounted on
/home/rich/.Private 127147284 2561168 118084332 3% /home/rich