编写一个简单的测试服务

 1  1 #!/bin/bash
 2  2 #
 3  3 # chkconfig: - 98 3                #开机默认不启动s98 k3 
 4  4 # description: test service      #描述,是个测试服务
 5  5  
 6  6 . /etc/init.d/functions         #调用 函数
 7  7  
 8  8 start(){                  #函数名叫start
 9  9         touch /var/lock/subsys/`basename $0`       #这个函数用处 basename $0只要文件名不要路径(可以直接写服务名字)
10 10         action "starting `basename $0`"           #调用 函数 . /etc/init.d/functions 
11 11 }
12 12  
13 13 stop(){ #函数名叫stop
14 14         rm -f /var/lock/subsys/`basename $0`       #这个函数用处 basename $0只要文件名不要路径
15 15         action "stopping `basename $0`"          #调用 函数 . /etc/init.d/functions 
16 16 }
17 17 status(){                            #函数名叫status
18 18         [ -f /var/lock/subsys/`basename $0` ] && echo `basename $0` is running || echo `basename $0` is stopped  # 判断文件是否存在 存在显示正在running 反正stopped19 19 }
20 20 case $1 in
21 21 start)           #开始,调用上面写的start
22 22         start
23 23         ;;
24 24 stop)            #关闭,调用上面写的stop
25 25         stop
26 26         ;;
27 27 restart)          #重启,调用上面的先关闭,在开启
28 28         stop
29 29         start
30 30         ;;
31 31 status)          # 状态,调用上面的状态
32 32         status
33 33         ;;
34 34 *)             # 除了上面的几个,输入其他任意字符的显示下面echo
35 35         echo "Usage: /etc/init.d/`basename $0` {start|stop|status|restart}"
36 36 esac

服务脚本必须存放的位置:

  /etc/init.d

服务脚本必须有的两行

   # chkconfig: 2345 90 60   默认 在2345下是启动服务的,都设为不启动-    90 是S90 60 是K60

   # description: cron is a standard UNIX program that runs user-specified    描述,按情况写

 执行完命令如service testsrv start 会自动在/etc/rc*.d里面生成相应的软链接
service testsrv启动服务  service testsrv start
  start stop restart status

chkconfig --add testsrv    添加为服务
chkconfig --list  testsrv   查看是否有testsrv这个服务,这个服务是否开启(on 表示开启,off 表示未开启)
chkconfig --level 35 testsrv on   3和5服务开启
chkconfig --del testsrv    删除服务

 

  

原文地址:https://www.cnblogs.com/alexlv/p/13367162.html