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

linux 添加 service 服务并自动添加 chkconfig 启动级别

时间:2015-10-29 12:47:14      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:

下面以添加一个叫做watchcat的服务为例进行说明:

1、写一个提供给service命令使用的脚本

service 命令的使用方法一般如下

启动:

$ service watchcat start

停止:

$ service watchcat stop

重启:

$ service watchcat restart

所以这个watchcat脚本就需要至少接受这三个命令

大概如下:$ cat watchcat

技术分享
#!/bin/bash

function start_cat()
{
    echo "cat run ..."
}

function stop_cat()
{
    echo "cat stop ..."
}

case "$1" in
    start)
    start_cat
    ;;  

    stop)
    stop_cat
    ;;  

    restart)
    stop_cat
    start_cat
    ;;
    *)
    echo "Usage : start | stop | restart"
    ;;
esac
View Code

注:这个脚本不是最终脚本,还不能作为服务使用

2、还需要让这个脚本被 chkconfig 支持

其实这个很重要,那就是在刚刚的脚本上面添加几行注释,这几行只是是用来给chkconfig使用的。也就是说,当chkconfig 看到这几行注释的时候,它是不会把这几行当做注释的。

完整的脚本如下:

 1 #!/bin/bash
 2 #
 3 # watchcat    start/stop cats
 4 #
 5 # chkconfig: 12345 80 90
 6 # description: start/stop cats
 7 #
 8 ### BEGIN INIT INFO
 9 # Description: start/stop cats
10 ### END INIT INFO
11 
12 function start_cat()
13 {
14     echo "cat run ..."
15 }
16 
17 function stop_cat()
18 {
19     echo "cat stop ..."
20 }
21 
22 case "$1" in
23     start)
24     start_cat
25     ;;  
26 
27     stop)
28     stop_cat
29     ;;  
30 
31     restart)
32     stop_cat
33     start_cat
34     ;;
35     *)
36     echo "Usage : start | stop | restart"
37     ;;
38 esac

现在这个脚本算是可以正式使用了。

上面代码的第5行是必须的,这是给chkconfig看的。

第5 行的12345是表示这个watchcat 程序是需要在系统的运行级别为1、2、3、4、5的时候都进行启动的。80和90 的意思是在rc1.d/~rc5.d/目录下建立S80xxxxx和K90xxxxx的链接文件的。

3、配置watchcat的service支持

首先给watchcat添加可执行权限:

$ chmod 775 watchcat

把脚本添加复制到/etc/init.d/目录下

$ cp watchcat /etc/init.d/
cp: cannot create regular file `/etc/init.d/watchcat: Permission denied
$ sudo cp watchcat /etc/init.d/

此时就可以使用service进行控制了,如下:

$ service watchcat start
cat run ...
$ service watchcat stop
cat stop ...

4、然并卵,这只是完成了手动控制的阶段,还需要开机启动

先查看一下
$ chkconfig --list watchcat service watchcat supports chkconfig, but is not referenced in any runlevel (run chkconfig --add watchcat)
收我们没有添加这个叫watchcat的服务 $ chkconfig
--add watchcat You do not have enough privileges to perform this operation. $ sudo chkconfig --add watchcat
检查添加后的结果
$ chkconfig --list watchcat watchcat 0:off 1:on 2:on 3:on 4:on 5:on 6:off

这样就完成了。

 

引用文献:

http://www.cnblogs.com/jimeper/archive/2013/03/12/2955687.html

http://www.linuxidc.com/Linux/2015-01/111438.htm

 

linux 添加 service 服务并自动添加 chkconfig 启动级别

标签:

原文地址:http://www.cnblogs.com/fengbohello/p/4919925.html

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