shell腳本自動檢測網(wǎng)絡(luò)掉線和自動重連
在ppp移植成功后,有時會出現(xiàn)ppp掉線等情況。這篇文章寫了一個自動檢測連接網(wǎng)絡(luò)的解決方法。
創(chuàng)建一個shell腳本,在里面添加一下內(nèi)容。(記得給操作權(quán)限)
#!/bin/sh //根據(jù)你自己的shell類型來選擇。 while true //先做一個死循環(huán) do ping -c 3 -I ppp0 172.16.1.11 >/dev/null //指定一個出口去ping服務(wù)器的局域網(wǎng)ip,將結(jié)果重定向到/dev/null里。 //-c 3 是指ping執(zhí)行3次后結(jié)束。 //-w 3 是指ping執(zhí)行3秒后結(jié)束。 if [ $? -eq 0 ];then //[]的兩邊都要有空格隔開 //當(dāng)ping成功了,它的返回值為0,什么也不用干。說明網(wǎng)絡(luò)暢通。 //$?是用來獲取函數(shù)返回值或者上一個命令的退出狀態(tài)。 echo "ppp0 is ready" sleep 30 //為了防止過度的占用cpu資源,選擇延遲一段時間。 else //當(dāng)不成功說明這個網(wǎng)絡(luò)或出口有問題。 echo "ppp0 is connecting" pppd call connectvpn //重新?lián)芴枺⑿逻@個出口。 ifconfig sleep 30 fi sleep 30 done
程序中加入了延時,是為了減少檢測所占用的cpu資源。本腳本是一分鐘檢測一次網(wǎng)絡(luò)狀況。
當(dāng)執(zhí)行shell時出現(xiàn)syntax error: unexpected “then” (expecting “done”)報錯是是因為編碼格式不對,重新手打一遍就應(yīng)該好了。
ps:linux檢測程序是否掛掉并自動重新運行的腳本
編寫一個腳本替代應(yīng)用程序的運行,也就是通過啟動腳本來啟動程序,并監(jiān)測程序是否掛掉,若掛掉則重新運行
#!/bin/sh while true do ps -ef | grep "$PWD/app/auto_run.sh" | grep -v "grep" if [ "$?" -eq 1 ] then /home/root/app/auto_run.sh #啟動應(yīng)用,修改成自己的啟動應(yīng)用腳本或命令 echo "process has been restarted!" else echo "process already started!" fi sleep 10 done
總結(jié)
以上所述是小編給大家介紹的shell腳本自動檢測網(wǎng)絡(luò)掉線和自動重連,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對我們網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
上一篇:Linux下升級安裝python3.8并配置pip及yum的教程
欄 目:Linux/apache
本文標(biāo)題:shell腳本自動檢測網(wǎng)絡(luò)掉線和自動重連
本文地址:http://www.jygsgssxh.com/a1/Linux_apache/10551.html
您可能感興趣的文章
- 04-02linux中jobs命令 shell jobs命令
- 01-10Shell腳本之Expect免交互的實現(xiàn)
- 01-10shell之分離解析腳本的實現(xiàn)方法
- 01-10shell之正向解析腳本的實現(xiàn)方法
- 01-10Shell腳本實戰(zhàn)之DNS主從同步腳本實例
- 01-10easyswoole一鍵安裝腳本及寶塔安裝錯誤問題
- 01-10Linux下shell通用腳本啟動jar(微服務(wù))
- 01-10Shell腳本的條件測試和if條件語句使用方法
- 01-10開發(fā)者常用及實用Linux Shell命令備忘錄(小結(jié))
- 01-10centOS6中使用crontab定時運行執(zhí)行jar程序的腳本


閱讀排行
本欄相關(guān)
- 04-02linux關(guān)閉串口命令 關(guān)閉linux端口命令
- 04-02linux文件命令重命名 linux重命名文件名
- 04-02linux中jobs命令 shell jobs命令
- 04-02linux命令注入過濾 linux 代碼注入
- 04-02linux依次執(zhí)行命令 linux命令的執(zhí)行過程
- 04-02linux命令注銷vnc linux命令行注銷用戶
- 04-02linux命令免輸入 linux配置免密登錄
- 04-02軟交換linux命令 軟交換網(wǎng)絡(luò)主要協(xié)議
- 04-02linux命令歷史記錄 linux查看歷史記錄的
- 04-02linux命令頁面 linux命令頁面中文
隨機(jī)閱讀
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 04-02jquery與jsp,用jquery
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10delphi制作wav文件的方法
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10C#中split用法實例總結(jié)
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改


