0

我已经定义了一个服务并放在文件夹/etc/rc.d/init.d/somename 中,它放在chkconfig 中,级别为2-5。

但是,当我运行service somename start,它时,它没有启动。但是,如果我somename start直接运行,它会启动,

我错了哪一部分?

谢谢。

#!/bin/sh
# Startup script for xxx
#
# chkconfig: 2345 99 99
. /etc/rc.d/init.d/functions

prog="file"


start() {
    echo -n $"Starting : "
    echo
    daemon  /path/to/some/file
    let RETVAL=RETVAL+$?
    return $RETVAL
}

stop() {
    if test "x`pidof -x $prog`" != x; then
        echo -n $"Stopping $prog: "
        killproc  $prog
        echo
    fi
    RETVAL=$?
    return $RETVAL
}

case "$1" in
        start)
            start
            ;;

        stop)
            stop
            ;;

        status)
            echo $prog
            status $prog
            ;;

        restart)
            stop
            start
            ;;
        *)
            echo $"Usage: $0 {start|stop|restart|status}"
            exit 1

esac
4

1 回答 1

1

您的脚本似乎是正确的。

您可以添加set -x到脚本的开头,再次启动它,看看会发生什么。

于 2012-08-07T07:04:36.010 回答