亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 電腦故障 > 電腦故障現(xiàn)象 > 自動重啟 >

      linux下監(jiān)視進程 崩潰掛掉后自動重啟的shell腳本

      時間: 加城1195 分享

        自動重啟故障相信大家都遇到過,原因也有很多,跟系統(tǒng),硬件或者外界因素都有關(guān)。如何保證即使服務(wù)掛掉了也能自動重啟?在寫服務(wù)程序時經(jīng)常會碰到這樣的問題。在Linux系統(tǒng)中,強大的shell就可以很靈活的處理這樣的事務(wù)

        =================================================

        本文為khler原作,轉(zhuǎn)載必須確保本文完整并完整保留原作者信息及本文原始鏈接

        Author: HeYuanHui

        E-mail: khler@163.com

        QQ: 23381103

        MSN: pragmac@hotmail.com

        =================================================

        如何保證服務(wù)一直運行?如何保證即使服務(wù)掛掉了也能自動重啟?在寫服務(wù)程序時經(jīng)常會碰到這樣的問題。在Linux系統(tǒng)中,強大的shell就可以很靈活的處理這樣的事務(wù)。

        下面的shell通過一個while-do循環(huán),用ps -ef|grep 檢查loader進程是否正在運行,如果沒有運行,則啟動,這樣就保證了崩潰掛掉的進程重新被及時啟動。

        必須注意兩點:

        1、ps |grep 一個進程時必須加上其路勁,否則容易grep到錯誤的結(jié)果;

        2、必須用 -v 從結(jié)果中去除grep命令自身,否則結(jié)果非空。

        復(fù)制代碼 代碼如下:

        #!/bin/sh

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

        #YuanHui.HE

        #khler@163.com

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

        while :

        do

        echo "Current DIR is " $PWD

        stillRunning=$(ps -ef |grep "$PWD/loader" |grep -v "grep")

        if [ "$stillRunning" ] ; then

        echo "TWS service was already started by another way"

        echo "Kill it and then startup by this shell, other wise this shell will loop out this message annoyingly"

        kill -9 $pidof $PWD/loader

        else

        echo "TWS service was not started"

        echo "Starting service ..."

        $PWD/loader

        echo "TWS service was exited!"

        fi

        sleep 10

        done

        如果啟動此shell時發(fā)現(xiàn)進程已經(jīng)存在,說明以別的方式啟動了進程而不是此shell,那么它會持續(xù)提醒找到進程,解決辦法是,要么只用此shell啟動服務(wù),要么一經(jīng)發(fā)現(xiàn)以其他方式啟動的服務(wù)即kill掉,上面的語句就是這么干的:

        kill -9 $pidof $PWD/loader


      linux下監(jiān)視進程 崩潰掛掉后自動重啟的shell腳本相關(guān)文章:

      1.linux shell退出命令

      2.linux shell腳本執(zhí)行命令

      3.Linux中執(zhí)行shell腳本的方法

      4.xshell操作linux系統(tǒng)的常用命令

      5.linux shell sed命令

      4022495