网站地图    收藏   

主页 > 系统 > linux系统 >

编写启动脚本 - Linux操作系统:Ubuntu_Centos_Debian

来源:自学PHP网    时间:2015-04-14 11:13 作者: 阅读:

[导读] 编写启动脚本以前写的启动脚本都没有颜色,研究了下functions ,functions 是个很好的启动脚本接口文件,最重要的是daemon和killproc2个函数。于是自己跟着写了nginx的#!/bin/bash #chkconfig:35 2...

编写启动脚本
 
以前写的启动脚本都没有颜色,研究了下functions ,functions 是个很好的启动脚本接口文件,最重要的是daemon和killproc2个函数。
于是自己跟着写了nginx的
 
#!/bin/bash     
#chkconfig:35 23 34   
#description: nginx webserver
#set -x
 
 
if [ -f  /etc/init.d/functions ] ; then
  . /etc/init.d/functions     ##载入functions,. 在这里相当于source的功能
fi
prog=nginx  ##服务名,会多处调用
RETVAL=0  ##状态返回值,functions 函数会调用这个值
nginx=/usr/local/nginx/sbin/nginx
NGINX_CONF_FILE=/usr/local/nginx/conf/nginx.conf
pidfile=/usr/local/nginx/logs/nginx.pid
lockfile=/var/lock/subsys/${prog}  ##subsys目录下的文件是用于给其他程序判断服务的实例运行状态的
 
 
start() {
      echo  -n $"Starting $prog: "
      daemon $nginx  -c  $NGINX_CONF_FILE ###daemon调用后面的命令执行情况
      RETVAL=$?
      echo 
      [ $RETVAL  -eq  0  ] &&  touch ${lockfile}
      return $RETVAL
}
stop () {
      echo  -n $"Stopping $prog: "
      killproc  -p ${pidfile}    ###killproc 从pidfile 获取到pid,并杀死
      #RETVAL=$?
      echo 
      [ $RETVAL  -eq  0  ] &&  /bin/rm -f ${lockfile}
      return $RETVAL
}
 
 
case $1 in 
start) 
start
;;
stop)
stop
;;
restart)
stop
start
;;
 
 
esac
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论