關(guān)鍵字: 在suse linux中將tomcat作為service運行
在/etc/init.d/boot.local文件中添加命令。Red Hat系統(tǒng)的對應(yīng)文件是/etc/rc.d/rc.local,。
對于Linux系統(tǒng)啟動時自動運行的命令或程序,,在rh-based linux 系統(tǒng),一般常見是放在 /etc/rc.d/rc.local 中,。但SuSE Linux 沒有這個文件,,另外也不推薦使用者這樣管理啟動服務(wù)。推薦使用正規(guī)的方式來管理服務(wù)啟動方式,。 有人會說,,在SuSE系統(tǒng)里,可以放在 /etc/init.d/boot.local 中,,這要看實際情況,。因為 SuSE 的 /etc/init.d/boot.local 文件是由/etc/init.d/boot 這個 script 所啟動的,而且是最后 boot script 工作完成要準(zhǔn)備進(jìn)入 runlevel 環(huán)境執(zhí)行各項 rc script 時所執(zhí)行,。而rh 的 /etc/rc.d/rc.local 檔案是 runlevel 環(huán)境執(zhí)行各項 rc script 時最后一個階段執(zhí)行的,,所以層面不一樣。如果你要運行的程序適合于runlevel 這項服務(wù)之前就執(zhí)行的話,,在SuSE linux 中可以放在 boot.local 文件里,。 但如果你的服務(wù)需要是在進(jìn)入 runlevel 后才執(zhí)行的話,SuSE 下正規(guī)做法應(yīng)該是自己寫一個 rc script放到 /etc/init.d/ 目錄下,,然后使用 chkconfig or inssev 程序來管理配置能夠于某個 runlevel 環(huán)境開機(jī)時是否要啟用關(guān)閉該服務(wù)項目,。該 rc script 寫法可以自己參考一下 /etc/init.d/ 里面現(xiàn)成的 script 檔案,應(yīng)該很容易就寫一個自己的版本,。 一,、創(chuàng)建啟動/停止腳本文件 通過一下腳本,可以使Tomcat以Service方式運行,。 #!/bin/bash # chkconfig: 2345 10 90 # description: Starts and Stops the Tomcat daemon. TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-5.5.25 TOMCAT_START=$TOMCAT_HOME/bin/startup.sh TOMCAT_STOP=$TOMCAT_HOME/bin/shutdown.sh # necessary environment variables export CATALINA_HOME=$TOMCAT_HOME export JAVA_HOME=/usr/java/jdk1.6.0_03 # source function library. . /etc/rc.d/init.d/functions # source networking configuration. . /etc/rc.d/network # check that networking is up. [ "${NETWORKING}" = "no" ] && exit 0 # check for tomcat script if [ ! -f $TOMCAT_HOME/bin/catalina.sh ] then echo "Tomcat not valilable..." exit fi start(){ echo -n "Starting Tomcat: " daemon $TOMCAT_START echo touch /var/lock/subsys/tomcat } stop(){ echo -n $"Shutting down Tomcat: " daemon $TOMCAT_STOP rm -f /var/lock/subsys/tomcat.pid echo } restart(){ stop start } status(){ ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap start" | awk '{printf $1 " "}' | wc | awk '{print $2}' > /tmp/tomcat_process_count.txt read line < /tmp/tomcat_process_count.txt if [ $line -gt 0 ]; then echo -n "tomcat ( pid " ps ax --width=1000 | grep "org.apache.catalina.startup.Bootstrap start" | awk '{printf $1 " "}' echo -n ") is running..." echo else echo "Tomcat is stopped" fi } case "$1" in start) start ;; stop) stop ;; restart) stop sleep 3 start ;; status) status ;; *) echo "Usage: tomcatd {start|stop|restart|status}" exit 1 esac exit 0 二,、保存并設(shè)置腳本文件 將以上的腳本文件保存在/etc/init.d中,命名為tomcat; 設(shè)置tomcat的文件屬性 #chmod a+x tomcat 三,、設(shè)置服務(wù)運行級別 最后用chkconfig設(shè)置服務(wù)運行 #chkconfig --add tomcat 服務(wù)就添加成功了,。 然后你就可以用 chkconfig --list 查看,,在服務(wù)列表里就會出現(xiàn)自定義的服務(wù)了。 注意: 在tomcat文件的頭兩行的注釋語句中,,需要包含chkconfig和description兩部分內(nèi)容(確認(rèn)不要拼寫錯誤,,),否則在執(zhí)行“chkconfig --add tomcat”時,,會出現(xiàn)“tomcat服務(wù)不支持chkconfig”的錯誤提示,。 chkconfig這行表示缺省啟動的運行級別以及啟動和停止的優(yōu)先級,如該服務(wù)缺省不再任何運行級啟動,,則以 - 代替運行級別,。在tomcat中表示腳本在運行級2、3,、4,、5啟動,,啟動優(yōu)先權(quán)為10,,停止優(yōu)先權(quán)為90。 description行對服務(wù)進(jìn)行描述,,可以用 “\” 跨行注釋,。 |
|