如題所示,有時候需要設置Tomcat開機自啓動,一般來說可以通過以下兩種方法來實現:
方法一:修改/etc/rc.d/rc.local文件
我們可以通過在/etc/rc.d/rc.local這個文件中添加tomcat的啓動腳本的路徑達到開機自啓動tomcat的目的。這種方式的特點是簡單粗暴,特別是有多個tomcat時可以很快速地設置。當然,時間上不是很急的話不推薦用這種方法
[root@localhost ~]# vim /etc/rc.d/rc.local
在文件末尾添加以下內容:
export JAVA_HOME=/usr/java/jdk1.7.0_71 /usr/local/apache-tomcat-test/bin/startup.sh
可以看出,第一句是jdk的路徑,第二句是一個具體的tomcat的啓動腳本的路徑。當然,這些都需要根據自己的實際需求進行更改的
方法二:添加Tomcat啓動腳本
(1)添加自啓腳本:
[root@localhost init.d]# vim /etc/init.d/tomcat_test
其內容是:
#!/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)給腳本添加可執行權限:
[root@localhost init.d]# chmod a+x /etc/init.d/tomcat_test
(3)添加開機自啓:
[root@localhost init.d]# chkconfig tomcat_test on
全部步驟到此結束,如果同一臺服務器有多個Tomcat都需要設置開機自啓動的話,可以根據上面的思路添加幾個類似的腳本並重復操作即可