0

サービスを定義し、フォルダー /etc/rc.d/init.d/somename に配置しました。これは、レベル 2-5 で chkconfig に配置されています。

ただし、実行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 に答える