我注销后,后台进程不再有权访问 .db 文件

我注销后,后台进程不再有权访问 .db 文件

我有一个 Java 应用程序,我从它开始......

nohup java -cp MyServer.jar > log.txt 2> errors.txt < /dev/null &

该应用程序只是一个 Web 服务,提供一些更新 SQLite 数据库的方法。

当我启动应用程序(使用上述命令)时,它运行良好,并且我可以在日志文件中看到它正在更新数据库。

但是,当我退出 SSH 会话时,Web 服务尝试访问数据库时失败。

它返回...

java.sql.SQLException: path to 'dbrocket.db': '/home/rich/roketapp' does not exist

显然,该路径确实存在,文件也确实存在。

如果我重新连接到 Ubuntu 服务器,它就会再次开始工作(我不会重新启动应用程序),所以就好像我注销时失去了一些安全权限一样。

该文件的安全性是

-rw-r--r-- 1 rich rich 3697664 Dec  5 09:27 dbroket.db

也许我需要改变这一点,但我宁愿理解为什么这正在发生。

我对 Ubuntu/Java/Linux 等还很陌生,所以如果我遗漏了一些明显的信息,请耐心等待。

输出自df /home/rich/roketapp

Filesystem          1K-blocks    Used Available Use% Mounted on
/home/rich/.Private 127147284 2561168 118084332   3% /home/rich

相关内容