1.tomcat 作爲服務啓動
在Linux系統啓動一個服務是通過service 這個命令,service [服務名] [選項],例如service networking start ,用來啓動網絡服務。其實service在啓動服務的時候是執行的/etc/init.d/下的腳本文件。
執行service networking start 執行的就是netwoking這個腳本。
那麼,如果想通過service啓動一個自定義服務,只需在/etc/init.d/下,仿照任何一個腳本編寫一個對應的服務腳本即可。
通過service啓動tomcat服務,腳本如下(文件名爲tomcat):
#!/bin/sh -e
### BEGIN TOMCAT SERVICE
### END INIT INFO
export JAVA_HOME=/usr/work/jdk1.8.0
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.
export CATALINA_HOME=/usr/work/tomcat
case "$1" in
start)
${CATALINA_HOME}/bin/startup.sh
exit 0
;;
stop)
${CATALINA_HOME}/bin/shutdown.sh
exit 0
;;
debug)
${CATALINA_HOME}/bin/shutdown.sh
${CATALINA_HOME}/bin/catalina.sh run
exit 0
;;
force-reload|restart)
${CATALINA_HOME}/bin/startup.sh
${CATALINA_HOME}/bin/shutdown.sh
exit 0
;;
*)
echo "Usage: /etc/init.d/tomcat {start|stop|restart|force-reload|debug}"
exit 1
;;
esac
exit 0
在腳本的開頭,我定義一些環境變量,這是必須的。否則tomcat在開機啓動的時候找不到JAVA_HOME環境變量,儘管你在/etc/profile中設置了這些環境變量,這和Linux啓動有關。
export JAVA_HOME=/usr/work/jdk1.8.0 #根據你自己的路徑進行配置
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.
export CATALINA_HOME=/usr/work/tomcat
這樣,就可以通過service tomcat start 來啓動tomcat了。
執行 service tomcat stop 關閉tomcat。
2. tomcat開機自啓動
chkconfig是Linux管理系統服務啓動的一個工具。可以設置服務的運行級別,是否開機啓動等
在ubuntu中,安裝chkconfig,執行下面的命令:
wget http://archive.ubuntu.com/ubuntu/pool/universe/c/chkconfig/chkconfig_11.0-79.1-2_all.deb
dpkg -i chkconfig_11.0-79.1-2_all.deb
執行命令:
報錯,執行命令解決:
ln -s /usr/lib/insserv/insserv /sbin/insserv
默認是在系統運行級別2345時,隨系統自動啓動。
OK!