本文共 2143 字,大约阅读时间需要 7 分钟。
如题所示,有时候需要设置Tomcat开机自启动,一般来说可以通过以下两种方法来实现:
我们可以通过在/etc/rc.d/rc.local这个文件中添加tomcat的启动脚本的路径达到开机自启动tomcat的目的。这种方式的特点是简单粗暴,特别是有多个tomcat时可以很快速地设置。当然,时间上不是很急的话不推荐用这种方法
1 | [root@localhost ~] # vim /etc/rc.d/rc.local |
在文件末尾添加以下内容:
1 2 | export JAVA_HOME=/usr/java/jdk1.7.0_71 /usr/local/apache-tomcat-test/bin/startup.sh |
可以看出,第一句是jdk的路径,第二句是一个具体的tomcat的启动脚本的路径。当然,这些都需要根据自己的实际需求进行更改的
(1)添加自启脚本:
1 | [root@localhost init.d] # vim /etc/init.d/tomcat_test |
其内容是:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | #!/bin/sh # chkconfig: 345 99 10 # description: Auto-starts tomcat # /etc/init.d/tomcatd # Tomcat auto-start # Source function library. #. /etc/init.d/functions # source networking configuration. #. /etc/sysconfig/network RETVAL=0 export JAVA_HOME= /usr/java/jdk1 .7.0_71 export JRE_HOME= /usr/java/jdk1 .7.0_71 /jre export CATALINA_HOME= /usr/local/apache-tomcat-test export CATALINA_BASE= /usr/local/apache-tomcat-test start() { if [ -f $CATALINA_HOME /bin/startup .sh ]; then echo $ "Starting Tomcat_test" $CATALINA_HOME /bin/startup .sh RETVAL=$? echo " OK" return $RETVAL fi } stop() { if [ -f $CATALINA_HOME /bin/shutdown .sh ]; then echo $ "Stopping Tomcat_test" $CATALINA_HOME /bin/shutdown .sh RETVAL=$? sleep 1 ps -fu root | grep apache-tomcat- test | grep - v grep | grep - v PID | awk '{print $2}' | xargs kill -9 echo " OK" # [ $RETVAL -eq 0 ] && rm -f /var/lock/... return $RETVAL fi } case "$1" in start) start ;; stop) stop ;; restart) echo $ "Restaring Tomcat" $0 stop sleep 1 $0 start ;; *) echo $ "Usage: $0 {start|stop|restart}" exit 1 ;; esac exit $RETVAL |
注:
前面的“export”那几句设置了jdk和该tomcat所在的路径
ps -fu root | grep apache-tomcat-test 这一句是指查看用户为root,并且包含“apache-tomcat-test”这个关键字的进程
(2)给脚本添加可执行权限:
1 | [root@localhost init.d] # chmod a+x /etc/init.d/tomcat_test |
(3)添加开机自启:
1 | [root@localhost init.d] # chkconfig tomcat_test on |
全部步骤到此结束,如果同一台服务器有多个Tomcat都需要设置开机自启动的话,可以根据上面的思路添加几个类似的脚本并重复操作即可
本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1862883,如需转载请自行联系原作者