【发布时间】:2009-03-12 17:23:57
【问题描述】:
我继承了一个 java 系统,它应该在 Linux 服务器的后台运行。指示要求启动它java -jar start.jar。这对我来说似乎有点太脆弱了。我希望它真正在后台运行,最好在启动时自动启动。
实现这一目标的最佳方法是什么?我研究过在screen 环境中运行系统,它运行良好,但在系统重启时不会自动启动。
【问题讨论】:
标签: linux daemon startupscript
我继承了一个 java 系统,它应该在 Linux 服务器的后台运行。指示要求启动它java -jar start.jar。这对我来说似乎有点太脆弱了。我希望它真正在后台运行,最好在启动时自动启动。
实现这一目标的最佳方法是什么?我研究过在screen 环境中运行系统,它运行良好,但在系统重启时不会自动启动。
【问题讨论】:
标签: linux daemon startupscript
您可以为它编写一个 init.d 脚本! (init.d 脚本在启动时以指定的运行级别启动)
或者你可以在后台使用 & 在命令末尾启动它。
java -jar start.jar &
您使用哪种分发方式? Debian?
【讨论】:
至少在 ubuntu 上,我会将此命令放在 /etc/rc.local 文件中,并以 & 结尾。
【讨论】:
+1 使用 init.d 脚本
您还应该考虑在您的 init.d 脚本中使用 jsvc (http://commons.apache.org/daemon/jsvc.html) 以允许您在以非特权用户身份运行服务时使用特权资源。 jsvc 至少与 Debian 和 Ubuntu 捆绑在一起。
【讨论】: