我的伺服器是使用tomcat的,時不時tomcat的程序會突然結束掉,不知道為什麼,從日誌上看也沒有任何可疑之處,貌似就這樣突然沒了,接下來的日誌都是重新啟動tomcat之後列印的了。原因找不到,但要找變通方法,不要出了問題後總要上伺服器去自己重啟tomcat。我打算利用系統的cron服務來自動啟動tomcat,很簡單,大約1分鐘檢查一次tomcat的程序,如果沒有,就啟動之,指令碼如下:
#!/bin/bashexport jre_home=/usr/local/jre
if [ `ps -ef | egrep
'tomcat
' | egrep -v egrep | wc -l` -gt 0 ]; then
exit 1fi
echo `date`"
tomcat restart
" >> ~/shell/tomcat_restart.log
/usr/local/tomcat/bin/startup.sh
寫這個指令碼的時候千萬注意:空格不要亂加!shell程式設計和別的程式設計不太一樣,空格有特殊含義。指令碼在啟動tomcat的時候,會列印乙個log,到~/shell/tomcat_restart.log中,其中包括了乙個時間資訊,方便我去查詢原因(雖然我現在還是找不到原因)。
接下來就是配置crontab。
$crontab -e
* * * * * ~/shell/check_and_start_server.sh
/etc/init.d/crond start
這樣一來,每一分鐘,cron服務就會執行一次檢查。啟動tomcat大約需要10秒鐘,所以最壞的情況是你的伺服器可能會中斷1分鐘多一點的時間(考慮伺服器是在14:20:01秒退出的,cron服務剛檢查過,下次檢查是14:21:00,這時候啟動tomcat,大約到14:21:10這樣啟動完成)。
寫乙個指令碼,自動啟動tomcat
原文 我的伺服器是使用tomcat的,時不時tomcat的程序會突然結束掉,不知道為什麼,從日誌上看也沒有任何可疑之處,貌似就這樣突然沒了,接下來的日誌都是重新啟動tomcat之後列印的了。原因找不到,但要找變通方法,不要出了問題後總要上伺服器去自己重啟tomcat。我打算利用系統的cron服務來自...
寫乙個檔案備份指令碼
今天乙個意外,我寫的大半個月的日記加密檔案受損,無法恢復。於是決定寫乙個專用備份的指令碼檔案。主要思想就是在當前目錄backup 下根據當天的日期建立乙個資料夾,然後將檔案複製到該資料夾下。windows版的如下 echo off echo 開始備份日誌檔案 set ymd date 0,4 dat...
shell寫乙個搜尋指令碼
好久沒寫過部落格了,年初換了份工作,就一直很忙,超級忙,甚至沒有時間看看書或者寫寫小工具自己玩玩,確實是一件蠻遺憾的事情。魯迅說,時間就像海綿裡的水,擠擠總有的 魯迅說 這句話還真是我說的 現在工作更偏向客戶端,每天就是跟著美術爸爸的屁股後邊,把特效出現的時間延遲一會,或者把特效向左移動一點,還是蠻...