我继承了一个应该在Linux服务器后台运行的java系统。这些说明要求启动它java -jar start.jar
。这对我来说似乎有点太脆弱了。我希望它实际上在后台运行,理想情况下在启动时自动启动。
实现这一目标的最佳方法是什么?我已经考虑在screen
环境中运行系统,该工作正常,但在系统重新启动时不会自动启动。
答案 0 :(得分:7)
你可以为它编写一个init.d脚本! (init.d脚本在启动时在指定的运行级别启动)
或者您可以在后台启动它&在命令的最后。
java -jar start.jar &
您使用什么样的发行版?的Debian?
答案 1 :(得分:1)
至少在ubuntu上,我将这个命令放在带有&的/etc/rc.local文件中。最后。
答案 2 :(得分:1)
+1
您还应该考虑在init.d脚本中使用jsvc(http://commons.apache.org/daemon/jsvc.html),以允许您在以非特权用户身份运行服务时使用特权资源。 jsvc至少捆绑了Debian和Ubuntu。