Debian:我的服务没有自动启动

时间:2014-04-08 09:05:26

标签: linux debian

我正在使用debian 7 x64,我想在启动时添加服务自动启动但它不起作用。

命令:“update-rc.d defaults”运行良好并返回我:update-rc.d:使用基于依赖的启动顺序

我的脚本在我使用命令时工作:service start / stop 但是当我重新启动计算机时,服务已关闭。

我的脚本开始于:

### BEGIN INIT INFO
# Provides:          scriptname
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO

我不明白出了什么问题?

编辑:

我为我的脚本尝试了另一种方式,我看了一下这个例子:http://doc.ubuntu-fr.org/tutoriel/comment_transformer_un_programme_en_service并且效果很好。总是不明白为什么其他方式不起作用。不管它现在对我有什么好处,谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

其中一个原因可能是,在操作系统启动期间,启动脚本无法在已知位置找到Java:env var JAVA_HOME,path /usr/bin/java等。

就我而言,/var/log/boot.log中有一条消息:Unable to find Java。它来自launch.script的这一部分:

# Find Java
if [[ -n "$JAVA_HOME" ]] && [[ -x "$JAVA_HOME/bin/java" ]]; then
    javaexe="$JAVA_HOME/bin/java"
elif type -p java > /dev/null 2>&1; then
    javaexe=$(type -p java)
elif [[ -x "/usr/bin/java" ]];  then
    javaexe="/usr/bin/java"
else
    echo "Unable to find Java"
exit 1
fi

要解决此问题,您需要确保在操作系统启动期间Java在路径中可用。或者,您可以按照deployment docs中的建议操作,并使用.conf文件中的JAVA_HOME值。