O processo em segundo plano não tem mais acesso ao arquivo .db depois de fazer logout

0

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
    
por Rich S 05.12.2016 / 10:31

0 respostas