linux - Derby 安 : my service doesn't autostart

标签 linux debian

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

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

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

我的脚本开始于:

### 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效果很好。一直不明白为什么另一种方法行不通。无论现在对我有什么好处,谢谢你的帮助。

最佳答案

其中一个原因可能是,在操作系统启动期间,启动脚本无法在已知位置找到 Java:env var JAVA_HOME,路径 /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 中的建议进行操作并使用包含 JAVA_HOME 值的 .conf 文件。

关于linux - Derby 安 : my service doesn't autostart,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22932404/

相关文章:

c - 调试剥离程序时在 gdb 中加载伪调试符号

linux - 交叉编译 FTDI VCP Driver for embedded linux arm

linux - systemd:tar(备份)问题backup.service

php - 最大连接数(Debian、phpmyadmin、apache)

linux - 如何提供嵌套的overlayfs挂载

select 能否被内核模块不间断地阻塞?

linux - 在 Linux 上以 O_APPEND 模式对文件进行原子写入和告知

mysql - 如何测试不同时区的数据库记录?

javascript - 错误: password authentication failed for user "myuser"

mysql - .mysql_history 没有被自动保存