免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1173 | 回复: 0
打印 上一主题 下一主题

linux自定义启动服务 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-05 11:04 |只看该作者 |倒序浏览

                启动程序你需要分清楚,是一般的程序还是服务
对于有些服务开机要启动,关机的时候还要关闭,所以,比较好的方法是写服务脚本,然后放到/etc/init.d,然后在相应的运行级启动目录中添加链接。
如果只是一般的程序,并且关机时不需要退出。那么加在任何一个自启动的脚本都可以。下面结合condor启动的设计作一下详细的介绍:
第一:确定你的运行级,就是/etc/inittab文件的id:X:initdefault那一行,该行指出了你的机器默认启动的运行级别,我的X=5,是X11启动方式。获得了运行级,我们下面就可以找到对应启动脚本的目录,例如运行级是3那么,启动自动执行/etc/rc3.d,如果是5就是/etc/rc5.d。里面有一堆链接,随便你写在任何一个链接的目标文件中,但那些多数是服务脚本,有start和stop段(修改rc.local,是不分运行级的)。
第二:编写服务脚本,如果有现成的,可以不用编写,直接复制到/etc/init.d/目录下即可。我的condor启动服务脚本是condor.boot。如下所示:
MASTER=/usr/local/condor/sbin/condor_master
PS="/bin/ps auwx"
case $1 in
'start')
    if [ -x $MASTER ]; then
        echo "Starting up Condor"
        $MASTER
    else
        echo "$MASTER is not executable.  Skipping Condor startup."
        exit 1
    fi
    ;;
'stop')
    pid=`$PS | grep condor_master | grep -v grep | awk '{print $2}'`
    if [ -n "$pid" ]; then
        echo "Shutting down Condor (fast-shutdown mode)"
        kill -QUIT $pid
    else
        echo "Condor not running"
    fi   
    ;;
'restart')
     $0 'stop'
     sleep 10
     $0 'start'
    ;;
*)
    echo "Usage: condor {start|stop|restart}"
    ;;
esac
第三:在自己机器运行级对应的启动脚本目录中添加指向condor.boot的软连结
cd /etc/rc.d/rc5.d
ln -s ../init.d/condor.boot ./condor
第四:重新启动,认真观察启动选项,看看有没有错误,然后根据错误做相应的修改即可。
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/66402/showart_1106571.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP