> CentOS > CentOS教程 >

CentOS配置用户程序开机自启动

一、背景:

*平台:centos6.5

*目的:配置用户程序开机自启动


二、步骤:

1、编写开机自启动脚本

cd /etc/rc.d/init.d #init.d目录包含许多系统各种服务的启动和停止脚本
vim tomcat_start

下为启动程序脚本:  (实现开机启动tomcat及花生壳)

#!/bin/bash
# chkconfig: 2345 80 20         #启动级别+启动S服务优先级+关闭K服务优先级,优先级中越小越优先
# description: start the tomcat deamon    #这行必须有
# Source function library
. /etc/rc.d/init.d/functions #引入调用该文件里的函数
prog=tomcat
JAVA_HOME=/usr/java/jdk1.8.0_92
export JAVA_HOME
TOMCAT_HOME=/usr/tomcat/apache-tomcat-8.5.4
export TOMCAT_HOME
case "$1" in
start)
    echo "Starting Tomcat..."
    /root/Downloads/phddns2/phddns start
    $TOMCAT_HOME/bin/startup.sh
    ;;
stop)
    echo "Stopping Tomcat..."
    $TOMCAT_HOME/bin/shutdown.sh
    ;;
restart)
    echo "Stopping Tomcat..."
    $TOMCAT_HOME/bin/shutdown.sh
    sleep 2
    echo
    echo "Starting Tomcat..."
    $TOMCAT_HOME/bin/startup.sh
    ;;
*)
    echo "Usage: $prog {start|stop|restart}"
    ;;
esac
exit 0

Linux中有7种启动级别

0 为停机,机器关闭。 
1 为单用户模式,就像Win9x下的安全模式类似。 
2 为多用户模式,但是没有NFS支持。 
3 为完整的多用户模式,是标准的运行级。 
4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。 
5 就是X11,进到X Window系统了。 
6 为重启,运行init 6机器就会重启。
0和6一般不用;

chkconfig

*备注:/etc/rc.d/init.d/functions脚本详情请访问(http://www.cnblogs.com/image-eye/archive/2011/10/26/2220405.html)

# /etc/rc.d/init.d/functions这个脚本是给/etc/init.d里边的文件使用的,提供了一些基础的功能

*注:/etc/init.d路径其实真实地址是在/etc/rc.d/init.d

下接/etc/rc.local与/etc/init.d的资料地址 http://blog.csdn.net/acs713/article/details/7322082 http://www.jbxue.com/LINUXjishu/27489.html

本来就是同一个目录,当然内容相同了。
至于实现机制,其实/etc/init.d是一个符号链接文件,链接指向/etc/rc.d/init.d
你运行以下命令可以看出来:
# ls -ld /etc/init.d
lrwxrwxrwx  1 root root 11 2009-05-09  /etc/init.d -> rc.d/init.d
建立方法是:
ln -s /etc/rc.d/init.d /etc/init.d

2、加入开机自启动服务


 chmod 775 tomcat_start # 更改权限
 chkconfig --add tomcat_start  #加入自动启动.在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
 chkconfig --list tomcat_start #查看自动启动设置

*注:chkconfig资料地址:

http://man.linuxde.net/chkconfig  http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796873.html


#、结束语



(责任编辑:IT)