• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 學習電腦 > 電腦故障 > 電腦故障現象 > 自動重啟 >

    智能監測自動重啟Apache服務器的Shell腳本

    時間: 加城1195 分享

      自動重啟故障相信大家都遇到過,原因也有很多,跟系統,硬件或者外界因素都有關。這篇文章主要介紹了智能監測自動重啟Apache服務器的Shell腳本,實現監控Apache不可用時,第一次強制重啟,第二次郵件通知管理員,需要的朋友可以參考下

      腳本功能與特點

      1、能夠每隔一段時間監測Apache服務器的可用性(由于本腳本直接模擬了客戶端的訪問,因此這里的“可用性”是指切切實實的正常可訪問)

      2、在出現無法訪問的情況下,能夠自動重啟Apache服務(強行重啟)

      3、在重啟后仍然無法正常訪問的話,自動執行更進一步的操作(比如發送郵件、重啟服務器等)

      后文將給出此腳本的具體使用方法與注釋,大家可以根據自己的情況手動修改(需了解一定bash shell編程)。

      腳本內容:

      #!/bin/bash

      URL=”http://127.0.0.1/”

      curlit()

      {

      curl –connect-timeout 15 –max-time 20 –head –silent “$URL” | grep '200′

      # 上面的15是連接超時時間,若訪問localhost的HTTP服務超過15s仍然沒有正確響應200頭代碼,則判斷為無法訪問。

      }

      doit()

      {

      if ! curlit; then

      # 如果localhost的apache服務沒有正常返回200頭,即出現異常。執行下述命令:

      sleep 20

      top -n 1 -b >> /var/log/apachemonitor.log

      # 上面將top命令內容寫入日至文件備查

      /usr/bin/killall -9 apache2 && /usr/bin/killall -9 php5-cgi && /usr/bin/killall -9 httpd && /usr/bin/killall -9 http && /usr/bin/killall -9 apache && /usr/bin/killall -9 php-cgi > /dev/null

      # 兼容起見,殺死了各種apache的進程。可以根據自己apache服務的特點修改

      sleep 2

      /etc/init.d/apache2 start > /dev/null

      /etc/init.d/httpd start > /dev/null

      # 兼容起見,執行了兩種apache重啟命令,可根據需要自己修改。

      echo $(date) “Apache Restart” >> /var/log/apachemonitor.log

      # 寫入日志

      sleep 30

      # 重啟完成后等待三十秒,然后再次嘗試一次

      if ! curlit; then

      # 如果仍然無法訪問,則:

      echo $(date) “Failed! Now Reboot Computer!” >> /var/log/apachemonitor.log

      # 寫入apache依然重啟失效的日志

      reboot

      # 重啟機器唄。實際上重啟整個服務器是一種非常不得已的做法。本人并不建議。大家根據需要自己修改,比如短信、郵件報警什么的。

      fi

      sleep 180

      fi

      }

      sleep 300

      # 運行腳本后5分鐘后才開始正式工作(防止重啟服務器后由于apache還沒開始啟動造成誤判)

      while true; do

      # 主循環體

      doit > /dev/null

      sleep 10

      done

      使用方法

      使用方法非常靈活,總之讓上面的腳本在開機后一直執行就行了。由于腳本使用了curl命令,因此還需要安裝curl環境。安裝curl的方法:

      根據發行版選擇下面兩條命令即可:

      yum install curl

      apt-get install curl

      若希望將其自動啟動,則可以把腳本寫入rc.local中即可。

      補充:電腦總是自動重啟怎么辦

      1、右擊“我的電腦”,選擇“屬性”項。

      2、在打開的系統屬性窗口中選擇“高級系統設置”項進入。

      3、在打開的“系統屬性”窗口中,切換至“高級”選擇卡,然后點擊“系統和故障恢復 設置”按鈕。

      4、在打開的窗口中取消勾選“自動重啟啟動”項并按確認即可。

      5、當電腦在使用的過程中產生藍屏時,我們就可以進入“系統日志”管理器中查看產生系統失敗的根源啦。打開“運行”對話框,輸入命令“eventvwr.msc”即可查看日志信息,從中定位系統產生失敗的原因。

      6、當然,我們也可以通過禁用某些開機項來嘗試修復系統。打開“運行”對話框,輸入命令“msconfig”進入“系統配置實用程序”界面,勾選“常規”選項卡下的“診斷啟動”選項。

      7、還有一種修復計算機藍屏或重啟故障的方法,就是在電腦啟動時按“F8”進入系統故障菜單,從中選擇“安全模式”進入或“最后一次正確的配置”項進入系統,將及有可能修復系統。

      8、當然,如果以上方法均不能解決問題,那么建議您還是重新安裝一下系統,畢竟安裝系統所耗費的時間相對修復所用時間要少許多。一勞永逸之事才是王道。

      相關閱讀:電腦自動重啟方法

      方法一:

      1、打開控制面板-管理工具-計劃任務程序

      2、創建基本任務,名稱欄目,輸入“定時重啟”,下一步;

      3、在窗口里,有每天、每周、每月、一次各種選擇,這里小誠選擇一次,這次執行完就失效,您可以根據自己的情況進行選擇哈,點擊下一步;

      4、設置重啟的日期、時間點,下一步;

      5、選擇啟動程序,下一步;

      6、在打開頁面里,點擊瀏覽,找到C;\Windows\System32\Shutdown.exe,點擊打開;

      7、在添加參數欄目里輸入“-r”(重啟),進行下一步

      8、點擊完成,即可實現自動重啟了

      方法二:

      網上搜索個自動重啟關機類軟件,這比較多,簡單設置一下就可以了。


    自動重啟Apache服務器的Shell腳本相關文章:

    1.windows下怎么啟動apache

    2.linux安裝apache命令

    3.linux shell腳本執行命令

    4.使用腳本實現故障時自動重啟Apache代碼

    5.如何在Windows下運行linux shell腳本

    4022767 主站蜘蛛池模板: 奇米视频7777| 国产伦精品一区二区三区免费下载 | 天堂资源最新版在线官网| 国内精品一区二区三区在线观看 | 九九视频在线观看6| 国产精品v欧美精品v日韩精品| 4hu四虎永久免在线视| 国产美女久久久久| 97精品伊人久久久大香线蕉| 在体育课被老师做了一节课视频| 99ri在线精品视频| 国产麻豆交换夫妇| 6080理论片国产片| 国产精品成人久久久久| 你懂得视频在线观看| 国产精品久久影院| 第一福利视频导航| 国产欧美精品一区二区色综合| 色综合久久天天影视网| 学渣坐在学长的棒棒上写作业作文| 三级视频中文字幕| 好男人社区www在线视频| www.亚洲精品| 在线观看中文字幕| 91嫩草私人成人亚洲影院| 国产精品永久免费| 亚洲人配人种jizz| 国产婷婷色一区二区三区深爱网| 黑冰女王踩踏视频免费专区| 月夜直播手机免费视频高清| 国产精品嫩草影院免费| 内射毛片内射国产夫妻| 久久精品中文字幕久久| poren日本| 欧美精品久久久久久久自慰| 妞干网在线视频观看| 国产内射爽爽大片视频社区在线| 久久亚洲成a人片| 艹逼视频免费看| 成人欧美一区二区三区| 免费人成年轻人电影|