天天看點

linux中程式定時重新開機腳本,linux下通過腳本實作自動重新開機程式

自動重新開機故障相信大家都遇到過,原因也有很多,跟系統,硬體或者外界因素都有關,但是在Linux中可沒有那麼簡單。這裡集中讨論linux實作自動重新開機程式的方法。下面一起看看!

linux中程式定時重新開機腳本,linux下通過腳本實作自動重新開機程式

自動重新開機腳本

假定需要實作重新開機的程式名為 test ,我們這裡通過判斷程序數目來判斷程式是否正常。

ps -ef | grep "$1" | grep -v "grep" | wc –l 是擷取$1(本例中為test)的程序數,腳本根據程序數來決定下一步的操作。通過一個死循環,每隔1秒檢查一次系統中的指定程式的程序數。

代碼如下:

腳本check

#!/bin/sh

#-----------------------------------# 函數: CheckProcess# 功能: 檢查一個程序是否存在# 參數: $1 --- 要檢查的程序名稱# 傳回: 如果存在傳回0, 否則傳回1.#---------------------------------------CheckProcess(){ # 檢查輸入的參數是否有效 if [ "$1" = "" ]; then return 1 fi #$PROCESS_NUM擷取指定程序名的數目,為1傳回0,表示正常,不為1傳回1,表示有錯誤,需要重新啟動 PROCESS_NUM=`ps -ef | grep "$1" | grep -v "grep" | wc -l` if [ $PROCESS_NUM -eq 1 ]; then return 0 else return 1 fi}

# 檢查test執行個體是否已經存在while [ 1 ] ; do CheckProcess "test" CheckQQ_RET=$? if [ $CheckQQ_RET -eq 1 ]; then# 殺死所有test程序,可換任意你需要執行的操作 killall -9 test exec ./test & fi sleep 1done

腳本start:

加入limit coredumpsize 102400,設定core file的大小,一旦程式Core Dump,有迹可尋。在該腳本中背景執行check腳本,可以省去很多麻煩,

#!/bin/cshlimit coredumpsize 102400

./check &

補充:電腦總是自動重新開機怎麼辦

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、點選完成,即可實作自動重新開機了

方法二:

網上搜尋個自動重新開機關機類軟體,這比較多,簡單設定一下就可以了。

linux下通過腳本實作自動重新開機程式相關文章: