码迷,mamicode.com
首页 > 系统相关 > 详细

linux init.d脚本编写模板

时间:2014-08-18 16:03:02      阅读:280      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   color   io   文件   for   

#!/bin/bash  
### BEGIN INIT INFO  
#  
# Provides:  location_server  
# Required-Start:   $local_fs  $remote_fs  
# Required-Stop:    $local_fs  $remote_fs  
# Default-Start:    2 3 4 5  
# Default-Stop:     0 1 6  
# Short-Description:    initscript  
# Description:  This file should be used to construct scripts to be placed in /etc/init.d.  
#  
### END INIT INFO  
  
## Fill in name of program here.  
PROG="location_server"  
PROG_PATH="/opt/location_server" ## Not need, but sometimes helpful (if $PROG resides in /opt for example).  
PROG_ARGS=""   
PID_PATH="/var/run/"  
  
start() {  
    if [ -e "$PID_PATH/$PROG.pid" ]; then  
        ## Program is running, exit with error.  
        echo "Error! $PROG is currently running!" 1>&2  
        exit 1  
    else  
        ## Change from /dev/null to something like /var/log/$PROG if you want to save output.  
        $PROG_PATH/$PROG $PROG_ARGS 2>&1 >/var/log/$PROG &  
    $pid=`ps ax | grep -i location_server | sed s/^\([0-9]\{1,\}\).*/\1/g | head -n 1`  
  
        echo "$PROG started"  
        echo $pid > "$PID_PATH/$PROG.pid"  
    fi  
}  
  
stop() {  
    echo "begin stop"  
    if [ -e "$PID_PATH/$PROG.pid" ]; then  
        ## Program is running, so stop it  
    pid=`ps ax | grep -i location_server | sed s/^\([0-9]\{1,\}\).*/\1/g | head -n 1`  
    kill $pid  
          
        rm -f  "$PID_PATH/$PROG.pid"  
        echo "$PROG stopped"  
    else  
        ## Program is not running, exit with error.  
        echo "Error! $PROG not started!" 1>&2  
        exit 1  
    fi  
}  
  
## Check to see if we are running as root first.  
## Found at http://www.cyberciti.biz/tips/shell-root-user-check-script.html  
if [ "$(id -u)" != "0" ]; then  
    echo "This script must be run as root" 1>&2  
    exit 1  
fi  
  
case "$1" in  
    start)  
        start  
        exit 0  
    ;;  
    stop)  
        stop  
        exit 0  
    ;;  
    reload|restart|force-reload)  
        stop  
        start  
        exit 0  
    ;;  
    **)  
        echo "Usage: $0 {start|stop|reload}" 1>&2  
        exit 1  
    ;;  
esac  
其中,PROG变量为所要运行的可执行程序的名称, PROG_PATH为可执行文件所在的目录,PROG_ARGS为执行程序的各个参数。

linux init.d脚本编写模板,布布扣,bubuko.com

linux init.d脚本编写模板

标签:des   style   blog   http   color   io   文件   for   

原文地址:http://www.cnblogs.com/LoveJulin/p/3919472.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!