Tomcat Linux下自启动

使用root用户在/etc/init.d中touch tomcat文件,使用VI编辑脚本内容如下:

#!/bin/bash
#
# tomcat        
#
# chkconfig:345 71 71 
# description:  Start up the Tomcat servlet engine.

# Source function library.
. /etc/init.d/functions


RETVAL=$?
CATALINA_HOME="/home/ams/apache-tomcat-7.0.54"

case "$1" in
 start)
        if [ -f $CATALINA_HOME/bin/startup.sh ];
          then
        echo $"Starting Tomcat"
            /bin/su ams $CATALINA_HOME/bin/startup.sh
        fi
    ;;
 stop)
        if [ -f $CATALINA_HOME/bin/shutdown.sh ];
          then
        echo $"Stopping Tomcat"
            /bin/su ams $CATALINA_HOME/bin/shutdown.sh
        fi
    ;;
 restart)
    /bin/su ams $CATALINA_HOME/bin/shutdown.sh
    /bin/su ams $CATALINA_HOME/bin/startup.sh
    ;;
 *)
    echo $"Usage: $0 {start|stop}"
    exit 1
    ;;
esac

exit $RETVAL

之后运行命令 chkconfig --add tomcat 就可以将脚本文件加入开机启动项了

可以使用 chkconfig --list tomcat 查看tomcat脚本在各个runlevel下的启动情况

每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。

例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

chkconfig使用范例:
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

参考:http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796873.html

P.s.

在tomcat文件的头几行的注释语句中,必须包含chkconfig和description两部分内容,否则在执行“chkconfig --add tomcat”时,会出现“tomcat服务不支持chkconfig”的错误提示。chkconfig这行表示缺省启动的运行级别以及启动和停止的优先级,如该服务缺省不再任何运行级启动,则以 - 代替运行级别。在tomcat中表示脚本在运行级2、3、4、5启动,启动优先权为20(优先权数越大服务启动的越晚),停止优先权为80。如果服务已经设置好了,那么通过编辑tomcat文件来修改启动优先权就不管用了,先删除服务再添加进来就可以了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。