皇家方舟

          linux 腳本

          一、shell腳本 program.sh
          #!/bin/sh

          export LANG=zh_CN.GB2312

          /bin/echo -e "start program!" >> /p2p.log

          ps -ef|grep 'program' |grep -v grep |awk '{print $2}' |xargs -t -l kill -9

          nohup /usr/java/jdk1.5.0_08/bin/java -jar /apps/program.jar 1>program.log&

          啟動(dòng)時(shí)sh program.sh即可

          二、看門狗shell腳本 monitor.sh

          #!/bin/bash

          #注:本腳本需要以超級(jí)用戶身份運(yùn)行。

          # 監(jiān)測(cè)的時(shí)間間隔,秒計(jì)
          INTERVAL=60

          # 重啟時(shí)間間隔
          INTERVALRESTART=1

          #==================================================================

          PROGRAME=program
          THREADNUMS=1
          LOG=/apps/monitor.log
          #SYSDATE=$(date)

          while true
          do
          ?? #echo " "
          ?? #echo "**********Now begin to monitor program's status , please wait.************"
          ?? #echo " "
          ?? #`ulimit -c unlimited`??
          ?? SYSDATE=$(date)
          ??
          ?? nowps1=`ps -e | grep $PROGRAME | grep -v grep | wc -l`
          ?? nowps1=`expr $nowps1`
          ???
          ?? #echo "ps = $nowps1"
          ??????
          ?? if? [? $nowps1 -lt $THREADNUMS ]; then
          ??
          ??????? /usr/bin/killall -9 $PROGRAME 1>/dev/null 2>/dev/null
          ??????? echo "======================================================" >> $LOG
          ??????? echo "Restart date:" $SYSDATE >> $LOG
          ??????? echo "Program name:" $PROGRAME >> $LOG
          ??????? echo "======================================================" >> $LOG
          ??#sleep $INTERVALRESTART????????
          ?????? # ./$PROGRAME 1>ucfile 2>ucfile
          ??????? /bin/sh /apps/server/p2pstart.sh
          ??????? echo " "
          ??????? echo "*******************************************************"
          ??????? echo "---------- Program $PROGRAME restart ----------------"
          ??????? echo "*******************************************************"
          ??????? echo " "

          ?? fi??

          ?? #echo "**********Now ended? monitor program's status !*************************"
          ?? #echo " "??
          ??
          ?? sleep $INTERVAL
          ??
          done

          #-----------------------------------------------------------
          exit 0

          如何在系統(tǒng)啟動(dòng)時(shí)啟動(dòng)看門狗程序:

          將/bin/sh /apps/monitor.sh加入到文件/etc/rc.local中即可,這樣每次系統(tǒng)啟動(dòng)都會(huì)運(yùn)行該程序以監(jiān)聽自己要監(jiān)聽的程序

          posted on 2007-05-10 12:35 阿輝 閱讀(456) 評(píng)論(0)  編輯  收藏 所屬分類: linux

          My Links

          Blog Stats

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 长岛县| 宣汉县| 永吉县| 晋宁县| 铜鼓县| 鄱阳县| 吴桥县| 昌江| 湘西| 博野县| 乐陵市| 临沭县| 绥阳县| 肇州县| 纳雍县| 工布江达县| 临汾市| 边坝县| 普安县| 成武县| 丹棱县| 靖安县| 铁岭县| 沧州市| 行唐县| 庆云县| 陈巴尔虎旗| 石渠县| 宁安市| 晴隆县| 财经| 雅江县| 甘孜| 长葛市| 富蕴县| 菏泽市| 临猗县| 敖汉旗| 镇江市| 纳雍县| 东源县|