我想讓ubuntu下的tomcat7 實現8個小時就自動重啟一次。要怎麼弄? 求各路大神獻計獻策。謝謝!
认证高级PHP讲师
我幫你搜尋這個http://stackoverflow.com/questions/20454435/how-to-restart-a-process-every-4-hours-using-crontab 每八小時這麼寫。 * */8 * * * user-name command to be executed
* */8 * * * user-name command to be executed
順道推薦一個可靠的管理tomcat的腳本
#!/bin/bash # # tomcat This shell script takes care of starting and stopping Tomcat # # chkconfig: - 80 20 # ### BEGIN INIT INFO # Provides: tomcat # Required-Start: $network $syslog # Required-Stop: $network $syslog # Default-Start: # Default-Stop: # Short-Description: start and stop tomcat ### END INIT INFO export JAVA_HOME=/usr/java/jdk1.6.0_43 TOMCAT_HOME=/usr/local/apache-tomcat-6.0.37 SHUTDOWN_WAIT=45 tomcat_pid() { echo `ps aux | grep org.apache.catalina.startup.Bootstrap | grep -v grep | awk '{ print }'` } start() { pid=$(tomcat_pid) if [ -n "$pid" ] then echo "Tomcat is already running (pid: $pid)" else # Start tomcat echo "Starting tomcat" $TOMCAT_HOME/bin/startup.sh fi return 0 } stop() { pid=$(tomcat_pid) if [ -n "$pid" ] then echo "Stoping Tomcat" $TOMCAT_HOME/bin/shutdown.sh let kwait=$SHUTDOWN_WAIT count=0 count_by=5 until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ] do echo "Waiting for processes to exit. Timeout before we kill the pid: ${count}/${kwait}" sleep $count_by let count=$count+$count_by; done if [ $count -gt $kwait ]; then echo "Killing processes which didn't stop after $SHUTDOWN_WAIT seconds" kill -9 $pid fi else echo "Tomcat is not running" fi return 0 } case in start) start ;; stop) stop ;; restart) stop start ;; status) pid=$(tomcat_pid) if [ -n "$pid" ] then echo "Tomcat is running with pid: $pid" else echo "Tomcat is not running" fi ;; esac exit 0
使用crontab定時任務解決。
# 设置定时任务 root> crontab -e # 8点,每天,每月执行脚本 root> 0 8 * * * /full/path/to/tomcat/restart/script # 查看定时任务列表 root> crontab -l
http://stackoverflow.com/questions/3474280/how-to-set-up-a-cron-job-to-run-an-executable-every-hour?answertab=oldest#tab-top
#!/bin/sh
。 /etc/設定檔
pid=ps aux | grep tomcat7_portal | grep -v grep | grep -v retomcat7_portal | awk '{print }'回顯$pid
ps aux | grep tomcat7_portal | grep -v grep | grep -v retomcat7_portal | awk '{print }'
if [ -n "$pid" ]then{ echo ===========關機================ /opt/tomcat7_portal/ bin/shutdown.sh sleep 1 pid=ps aux | grep tomcat7_portal | grep -v grep | grep -v retomcat7_portal | awk '{print }' if [ -n "$pid" ] then
fi sleep 1 echo ===========startup.sh============== /opt/tomcat7_portal/bin/startup.sh }else echo ===========startup.sh==============/opt/tomcat7_portal/bin/startup.sh
菲
我幫你搜尋這個
http://stackoverflow.com/questions/20454435/how-to-restart-a-process-every-4-hours-using-crontab
每八小時這麼寫。
* */8 * * * user-name command to be executed
順道推薦一個可靠的管理tomcat的腳本
使用crontab定時任務解決。
http://stackoverflow.com/questions/3474280/how-to-set-up-a-cron-job-to-run-an-executable-every-hour?answertab=oldest#tab-top
#!/bin/sh
。 /etc/設定檔
pid=
ps aux | grep tomcat7_portal | grep -v grep | grep -v retomcat7_portal | awk '{print }'
回顯$pid
if [ -n "$pid" ]
雷雷then
{
echo ===========關機================
/opt/tomcat7_portal/ bin/shutdown.sh
sleep 1
pid=
ps aux | grep tomcat7_portal | grep -v grep | grep -v retomcat7_portal | awk '{print }'
if [ -n "$pid" ]
then
fi
sleep 1
echo ===========startup.sh==============
/opt/tomcat7_portal/bin/startup.sh
}
else
echo ===========startup.sh==============
/opt/tomcat7_portal/bin/startup.sh
菲