将java作为服务启动并指定用户

时间:2017-11-15 10:28:20

标签: java ubuntu service

作为介绍,我们只是说我是一个使用linux的真正的菜鸟。我尝试做正确的事情,如果丑陋,不要打我。

所以,有问题的。我正在尝试在ubuntu服务器上运行一些jar作为webservices。我创建了一个没有pwd的特定用户(nuxservice)。我编辑了sudoers,以便在没有密码的情况下使用这个帐户启用一些用户(我自己和root)sudo。

然后我从http://www.jcgonzalez.com/linux-java-service-wrapper-example

中获取了很多灵感

大多数工作正常,只有一个真正的问题,我的java进程似乎无权创建其日志文件。

我使用经典

运行我的服务
sudo service myservice start/stop/restart

启动我的服务的命令行是:

nohup sudo -u nuxservice java -jar myjar.jar myargs

当我执行ps -ef时,服务将与我的nuxservice用户一起启动。

当我执行ls -ld时,nuxservice是所有者并拥有权利。

如果我自己在终端中启动命令,它会起作用。作为服务启动时,不会创建我的日志文件。

任何线索配偶?

1 个答案:

答案 0 :(得分:0)

因此...

有点傻。

我的用户权限很好。问题是,我没有在我的脚本中设置工作文件夹,因此考虑到创建用于记录的文件夹/文件,Java全部丢失。

我所要做的只是添加一点

cd $PATH_TO_JAR

一切都准备好了!