Bash 如何正确启动redhat linux服务?

Bash 如何正确启动redhat linux服务?,bash,service,redhat,Bash,Service,Redhat,我已经定义了一个服务,并将其放在/etc/rc.d/init.d/somename文件夹中,它放在chkconfig中,级别为2-5 但是,当我运行服务somename start时,它不会启动。但是,如果我直接运行somename start,它就会启动 哪一部分我弄错了 谢谢 #!/bin/sh # Startup script for xxx # # chkconfig: 2345 99 99 . /etc/rc.d/init.d/functions prog="file" star

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

但是,当我运行
服务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

你的脚本似乎是正确的


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

感谢您的回复,脚本确实是正确的。该问题是由服务本身引起的,该服务在该过程中退出。