新聞中心
Linux Watchdog的簡單使用方法

成都創(chuàng)新互聯(lián)是一家專注于做網(wǎng)站、成都網(wǎng)站制作與策劃設(shè)計,云夢網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:云夢等地區(qū)。云夢做網(wǎng)站價格咨詢:18980820575
當計算機系統(tǒng)中遇到崩潰時,通常情況下我們需要手動重啟系統(tǒng)。然而,在某些情況下,當系統(tǒng)崩潰后,我們可能并不能立即發(fā)現(xiàn)這個問題,如果這個時候沒有及時處理,可能會引起更加嚴重的后果,比如丟失數(shù)據(jù)、系統(tǒng)物理損壞等。為了解決這個問題,Linux內(nèi)核中提供了一個叫做Watchdog的工具,用來自動監(jiān)控系統(tǒng)崩潰并自動重啟。
Watchdog是一種硬件和/或軟件組合,它可以在檢測到系統(tǒng)故障的情況下執(zhí)行軟件自動重啟。Watchdog與硬件和軟件配合使用是必要的。硬件部分通常由一個物理計時器構(gòu)成,比如說計時器會周期性的發(fā)出信號,如果內(nèi)核沒有在指定時間內(nèi)對其響應(yīng),則會觸發(fā)硬件故障重啟。而軟件部分由內(nèi)核提供。
下面介紹一下在Linux中如何使用Watchdog。
1.檢查Kernel支持是否已啟用
在開始使用Watchdog之前,需要確保已經(jīng)啟用內(nèi)核支持??梢酝ㄟ^以下命令來檢查:
“`
$ grep -i watchdog /usr/src/linux/.config
“`
如果Kernel支持已啟用,會顯示這樣的信息:
“`
CONFIG_WATCHDOG=y
“`
否則,需要重新編譯Kernel,然后確保Kernel支持已啟用。
2.安裝Watchdog軟件包
安裝Watchdog的命令如下:
“`
$ sudo apt-get install watchdog
“`
3.修改配置文件
檢查Watchdog配置文件/opt/watchdog.conf是否存在,如果不存在可以通過以下命令創(chuàng)建:
“`
$ sudo nano /etc/watchdog.conf
“`
修改配置文件如下:
“`
watchdog-device = /dev/watchdog
watchdog-timeout = 15
realtime = yes
priority = 1
max-load-1 = 24
“`
其中,watchdog-device是指定Watchdog設(shè)備,watchdog-timeout是設(shè)置Watchdog超時時間,realtime是設(shè)置Watchdog以實時方式工作,priority是進程優(yōu)先級,max-load-1是設(shè)置1分鐘內(nèi)系統(tǒng)核心數(shù)負載的更大值。
添加運行腳本
下面是一份可以使用的Watchdog腳本。打開一個新文件來編寫腳本。
“`
#!/bin/bash
service mysql status # 檢查 mysql 服務(wù)是否已經(jīng)停止
if [ “$?” != “0” ]; then
service mysql stop && service mysql start
fi
“`
該腳本可以通過檢查MySQL服務(wù)是否正在運行,如果它正在運行,則不進行任何操作,否則它會停止并重新啟動服務(wù)。
接下來,保存腳本,并將其放置在系統(tǒng)可執(zhí)行路徑中,例如在/usr/local/bin/目錄中。
“`
sudo chmod +x /usr/local/bin/watchdog_mysql.sh
“`
5.啟用Watchdog服務(wù)
使用以下命令來啟用Watchdog服務(wù):
“`
$ sudo systemctl enable watchdog
“`
重啟系統(tǒng)并使用以下命令來啟動Watchdog服務(wù):
“`
$ sudo systemctl start watchdog
“`
至此,Watchdog就可以在系統(tǒng)出現(xiàn)故障時自動重啟系統(tǒng)了。
Watchdog是一種非常實用的工具,可以在系統(tǒng)出現(xiàn)故障時自動重啟系統(tǒng),更加方便地確保系統(tǒng)的穩(wěn)定性和安全性。在Linux中安裝和使用Watchdog非常簡單,只需要通過上面的步驟就可以輕松配置并啟用Watchdog服務(wù),對于Linux服務(wù)器管理員來說,這個功能絕對是繞不過去的一道重要課題。
相關(guān)問題拓展閱讀:
- 您好,如果要關(guān)閉linux系統(tǒng)的看門狗,要怎么操作呢?多謝!
- linux怎樣使用top命令查看系統(tǒng)狀態(tài)
- Linux。 Shell編程。 為hello.sh寫一個守護進程watchDog.sh
您好,如果要關(guān)閉linux系統(tǒng)的看門狗,要怎么操作呢?多謝!
您好,感謝您選擇巖輪惠普產(chǎn)品。一、為了保證筆記本運行的穩(wěn)定性和安全性,hp官方不建議用戶安裝雙系統(tǒng),也沒有雙系統(tǒng)運行方面的相關(guān)資料,惠普推薦您安裝使用單一的系統(tǒng)。二、Linux的分區(qū)格式和window7及windows8系統(tǒng)的分區(qū)格式是不一樣的,因此您在安裝操作系統(tǒng)前需要將重要的文件保存出來然后用諸如PQ這樣的分區(qū)軟件更改分格粗運信式為NTFS再進行安裝。三、修改分區(qū)格式后建議您可以保存重要的文件后按下面的方法光驅(qū)引導重新安裝操作系統(tǒng):①將安裝光盤放入光驅(qū),重悄薯新啟動電腦②當屏幕上出現(xiàn)“HP/COMPAQ”的LOGO時,連續(xù)點擊“F9”鍵③選擇“CD/DVDROMDrive”,按下回車(Enter)鍵確定。注:由于各機型不同,光驅(qū)引導的界面略有不同,請選擇代表光驅(qū)的一項。④Win7的安裝過程,您可以參考一下微軟官方文檔資料:/portal/site/hpsc/public/kb/docDisplay/?docId=emr_na-c希望以上回復能夠?qū)δ兴鶐椭?/p>
linux怎樣使用top命令查看系統(tǒng)狀態(tài)
命令行輸入top,回車
13:42:59 當前系統(tǒng)時間
6 days, 9:29 系統(tǒng)已經(jīng)運行了6天6小時29分鐘(在這期間沒有重啟過)
3 users 當前有3個用戶登錄系統(tǒng)
load average: 3.06,3.01, 1.79 load average后面的三個數(shù)分別是1分鐘、5分鐘、15分鐘的負載情況。
load average數(shù)據(jù)是每隔5秒鐘檢查一次活躍的進程數(shù),然后按特定算法計算出的數(shù)值。如果這個數(shù)除以邏凳譽瞎輯CPU的數(shù)棗空量,結(jié)果高于5的時候就表明系統(tǒng)在超負荷運轉(zhuǎn)了。
Tasks 任務(wù)(進程),系統(tǒng)現(xiàn)在共有131個進程,其中處于運行中的有3個,127個在休眠(sleep),stoped狀態(tài)的有0個,zombie狀態(tài)(僵尸)的有1個。
10.6% us 用戶空間占用CPU的百分比。
2.2% sy 內(nèi)核空間占用CPU的百分比。
0.0% ni 改變過優(yōu)先級的進程占用CPU的百分比
84.5% id 空閑CPU百分比
2.5% wa IO等待占用CPU的百分比
0.1% hi 硬中斷(Hardware IRQ)占用虛祥CPU的百分比
0.0% si 軟中斷(Software Interrupts)占用CPU的百分比
在這里CPU的使用比率和windows概念不同,如果你不理解用戶空間和內(nèi)核空間,需要充充電了。
k total 物理內(nèi)存總量(8GB)
k used 使用中的內(nèi)存總量(5.7GB)
k free 空閑內(nèi)存總量(2.2G)
k buffers 緩存的內(nèi)存量 (434M)
第五行:swap交換分區(qū)
k total 交換區(qū)總量(8GB)
41568k used 使用的交換區(qū)總量(40.6M)
k free 空閑交換區(qū)總量(8GB)
k cached 緩沖的交換區(qū)總量(4GB)
內(nèi)存總量(used)指的是現(xiàn)在系統(tǒng)內(nèi)核控制的內(nèi)存數(shù),空閑內(nèi)存總量(free)是內(nèi)核還未納入其管控范圍的數(shù)量。納入內(nèi)核管理的內(nèi)存不見得都在使用中,還包括過去使用過的現(xiàn)在可以被重復利用的內(nèi)存,內(nèi)核并不把這些可被重新使用的內(nèi)存交還到free中去,因此在linux上free內(nèi)存會越來越少,但不用為此擔心。
如果出于習慣去計算可用內(nèi)存數(shù),這里有個近似的計算公式:第四行的free + 第四行的buffers + 第五行的cached,按這個公式此臺服務(wù)器的可用內(nèi)存:++= 6.6GB。
對于內(nèi)存監(jiān)控,在top里我們要時刻監(jiān)控第五行swap交換分區(qū)的used,如果這個數(shù)值在不斷的變化,說明內(nèi)核在不斷進行內(nèi)存和swap的數(shù)據(jù)交換,這是真正的內(nèi)存不夠用了。
各進程(任務(wù))的狀態(tài)監(jiān)控:
PID 進程id
USER 進程所有者
PR 進程優(yōu)先級
NI nice值。負值表示高優(yōu)先級,正值表示低優(yōu)先級
VIRT 進程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
RES 進程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
SHR 共享內(nèi)存大小,單位kb
S 進程狀態(tài)。D=不可中斷的睡眠狀態(tài) R=運行 S=睡眠 T=跟蹤/停止 Z=僵尸進程
%CPU 上次更新到現(xiàn)在的CPU時間占用百分比
%MEM 進程使用的物理內(nèi)存百分比
TIME+ 進程使用的CPU時間總計,單位1/100秒
COMMAND 進程名稱(命令名/命令行)
1.命令格式:
top
2.命令功能:
顯示當前系統(tǒng)正在燃嫌執(zhí)行的進程的相關(guān)信息,包括進程ID、內(nèi)存占用率、CPU占用率等
3.命令參數(shù):
-b 批處理
-c 顯示完整的治命令
-I 忽略失效過碧李程
-s 保密模式
-S 累積模式
-i 設(shè)置間隔時間
-u 指定用戶名
-p 指定進程
-n 循環(huán)顯示的次數(shù)
4.使用實悔段遲例:
實例1:顯示進程信息
命令:top
輸出:
復制代碼
代碼如下:
# top
top – 14:06:23 up 70 days, 16:44, 2 users, load average: 1.25, 1.32, 1.35
Tasks: 206 total, 1 running, 205 sleeping, 0 stopped, 0 zombie
Cpu(s): 5.9%us, 3.4%sy, 0.0%ni, 90.4%id, 0.0%wa, 0.0%hi, 0.2%si, 0.0%st
Mem:k total,k used,k free,k buffers
Swap:k total, 0k used,k free,k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
28894 rootm 405m 10m S 52.2 1.3 2534:16 java
18249 rootm 1.9g 11m S 35.9 6.0 569:39.41 java
2808 rootm 1.0g 11m S 24.3 3.1 526:51.85 java
25668 rootm 704m 11m S 14.0 2.2 360:44.53 java
574 rootm 611m 10m S 12.6 1.9 556:59.63 java
1599 rootm 1.9g 11m S 12.3 6.2 262:01.14 java
1008 rootm 842m 10m S 0.3 2.6 4:31.08 java
13823 rootm 2.1g 10m S 0.3 6.8 176:57.34 java
28218 rootR 0.3 0.0 0:01.43 top
29062 rootm 227m 10m S 0.3 0.7 2:07.32 java
1 root4 572 S 0.0 0.0 1:30.85 init
2 root RTS 0.0 0.0 0:01.01 migration/0
3 rootS 0.0 0.0 0:00.00 ksoftirqd/0
4 root RTS 0.0 0.0 0:00.00 watchdog/0
5 root RTS 0.0 0.0 0:00.80 migration/1
6 rootS 0.0 0.0 0:00.00 ksoftirqd/1
7 root RTS 0.0 0.0 0:00.00 watchdog/1
8 root RTS 0.0 0.0 0:20.59 migration/2
9 rootS 0.0 0.0 0:00.09 ksoftirqd/2
10 root RTS 0.0 0.0 0:00.00 watchdog/2
11 root RTS 0.0 0.0 0:23.66 migration/3
12 rootS 0.0 0.0 0:00.03 ksoftirqd/3
13 root RTS 0.0 0.0 0:00.00 watchdog/3
14 root RTS 0.0 0.0 0:20.29 migration/4
15 rootS 0.0 0.0 0:00.07 ksoftirqd/4
16 root RTS 0.0 0.0 0:00.00 watchdog/4
17 root RTS 0.0 0.0 0:23.07 migration/5
18 rootS 0.0 0.0 0:00.07 ksoftirqd/5
19 root RTS 0.0 0.0 0:00.00 watchdog/5
20 root RTS 0.0 0.0 0:17.16 migration/6
21 rootS 0.0 0.0 0:00.05 ksoftirqd/6
22 root RTS 0.0 0.0 0:00.00 watchdog/6
23 root RTS 0.0 0.0 0:58.28 migration/7
top命令輸出內(nèi)容詳細說明:
統(tǒng)計信息區(qū):
前五行是當前系統(tǒng)情況整體的統(tǒng)計信息區(qū)。下面我們看每一行信息的具體意義。
之一行,任務(wù)隊列信息,同 uptime 命令的執(zhí)行結(jié)果,具體參數(shù)說明情況如下:
14:06:23 — 當前系統(tǒng)時間
up 70 days, 16:44 — 系統(tǒng)已經(jīng)運行了70天16小時44分鐘(在這期間系統(tǒng)沒有重啟過的吆?。?/p>
2 users — 當前有2個用戶登錄系統(tǒng)
load average: 1.15, 1.42, 1.44 — load average后面的三個數(shù)分別是1分鐘、5分鐘、15分鐘的負載情況。
load average數(shù)據(jù)是每隔5秒鐘檢查一次活躍的進程數(shù),然后按特定算法計算出的數(shù)值。如果這個數(shù)除以邏輯CPU的數(shù)量,結(jié)果高于5的時候就表明系統(tǒng)在超負荷運轉(zhuǎn)了。
第二行,Tasks — 任務(wù)(進程),具體信息說明如下:
系統(tǒng)現(xiàn)在共有206個進程,其中處于運行中的有1個,205個在休眠(sleep),stoped狀態(tài)的有0個,zombie狀態(tài)(僵尸)的有0個。
第三行,cpu狀態(tài)信息,具體屬性說明如下:
5.9%us — 用戶空間占用CPU的百分比。
3.4% sy — 內(nèi)核空間占用CPU的百分比。
0.0% ni — 改變過優(yōu)先級的進程占用CPU的百分比
90.4% id — 空閑CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中斷(Hardware IRQ)占用CPU的百分比
0.2% si — 軟中斷(Software Interrupts)占用CPU的百分比
備注:在這里CPU的使用比率和windows概念不同,需要理解linux系統(tǒng)用戶空間和內(nèi)核空間的相關(guān)知識!
第四行,內(nèi)存狀態(tài),具體信息如下:
k total — 物理內(nèi)存總量(32GB)
k used — 使用中的內(nèi)存總量(14GB)
k free — 空閑內(nèi)存總量(18GB)
169884k buffers — 緩存的內(nèi)存量 (169M)
第五行,swap交換分區(qū)信息,具體信息說明如下:
k total — 交換區(qū)總量(32GB)
0k used — 使用的交換區(qū)總量(0K)
k free — 空閑交換區(qū)總量(32GB)
k cached — 緩沖的交換區(qū)總量(3.6GB)
備注:
第四行中使用中的內(nèi)存總量(used)指的是現(xiàn)在系統(tǒng)內(nèi)核控制的內(nèi)存數(shù),空閑內(nèi)存總量(free)是內(nèi)核還未納入其管控范圍的數(shù)量。納入內(nèi)核管理的內(nèi)存不見得都在使用中,還包括過去使用過的現(xiàn)在可以被重復利用的內(nèi)存,內(nèi)核并不把這些可被重新使用的內(nèi)存交還到free中去,因此在linux上free內(nèi)存會越來越少,但不用為此擔心。
如果出于習慣去計算可用內(nèi)存數(shù),這里有個近似的計算公式:第四行的free + 第四行的buffers + 第五行的cached,按這個公式此臺服務(wù)器的可用內(nèi)存:k +169884k +k = 22GB左右。
對于內(nèi)存監(jiān)控,在top里我們要時刻監(jiān)控第五行swap交換分區(qū)的used,如果這個數(shù)值在不斷的變化,說明內(nèi)核在不斷進行內(nèi)存和swap的數(shù)據(jù)交換,這是真正的內(nèi)存不夠用了。
第六行,空行。
第七行以下:各進程(任務(wù))的狀態(tài)監(jiān)控,項目列信息說明如下:
PID — 進程id
USER — 進程所有者
PR — 進程優(yōu)先級
NI — nice值。負值表示高優(yōu)先級,正值表示低優(yōu)先級
VIRT — 進程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
RES — 進程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
SHR — 共享內(nèi)存大小,單位kb
S — 進程狀態(tài)。D=不可中斷的睡眠狀態(tài) R=運行 S=睡眠 T=跟蹤/停止 Z=僵尸進程
%CPU — 上次更新到現(xiàn)在的CPU時間占用百分比
%MEM — 進程使用的物理內(nèi)存百分比
TIME+ — 進程使用的CPU時間總計,單位1/100秒
COMMAND — 進程名稱(命令名/命令行)
其他使用技巧:
1.多U多核CPU監(jiān)控
在top基本視圖中,按鍵盤數(shù)字“1”,可監(jiān)控每個邏輯CPU的狀況:
觀察上圖,服務(wù)器有16個邏輯CPU,實際上是4個物理CPU。再按數(shù)字鍵1,就會返回到top基本視圖界面。
2.高亮顯示當前運行進程
敲擊鍵盤“b”(打開/關(guān)閉加亮效果),top的視圖變化如下:
我們發(fā)現(xiàn)進程id為2570的“top”進程被加亮了,top進程就是視圖第二行顯示的唯一的運行態(tài)(runing)的那個進程,可以通過敲擊“y”鍵關(guān)閉或打開運行態(tài)進程的加亮效果。
3.進程字段排序
默認進入top時,各進程是按照CPU的占用量來排序的,在下圖中進程ID為28894的java進程排在之一(cpu占用142%),進程ID為574的java進程排在第二(cpu占用16%)。
敲擊鍵盤“x”(打開/關(guān)閉排序列的加亮效果),top的視圖變化如下:
可以看到,top默認的排序列是“%CPU”。
4. 通過”shift + >”或”shift + ”的效果圖,視圖現(xiàn)在已經(jīng)按照%MEM來排序。
實例2:顯示 完整命令
命令:top -c
輸出:
實例3:以批處理模式顯示程序信息
命令:top -b
實例4:以累積模式顯示程序信息
命令:top -S
實例5:設(shè)置信息更新次數(shù)
命令:top -n 2
說明:表示更新兩次后終止更新顯示
實例6:設(shè)置信息更新時間
命令:top -d 3
說明:表示更新周期為3秒
實例7:顯示指定的進程信息
命令:top -p 574
輸出:
5.top交互命令
在top 命令執(zhí)行過程中可以使用的一些交互命令。這些命令都是單字母的,如果在命令行中使用了s 選項, 其中一些命令可能會被屏蔽。
h 顯示幫助畫面,給出一些簡短的命令總結(jié)說明
k 終止一個進程。
i 忽略閑置和僵死進程。這是一個開關(guān)式命令。
q 退出程序
r 重新安排一個進程的優(yōu)先級別
S 切換到累計模式
s 改變兩次刷新之間的延遲時間(單位為s),如果有小數(shù),就換算成m s。輸入0值則系統(tǒng)將不斷刷新,默認值是5 s
f或者F 從當前顯示中添加或者刪除項目
o或者O 改變顯示項目的順序
l 切換顯示平均負載和啟動時間信息
m 切換顯示內(nèi)存信息
t 切換顯示進程和CPU狀態(tài)信息
c 切換顯示命令名稱和完整命令行
M 根據(jù)駐留內(nèi)存大小進行排序
P 根據(jù)CPU使用百分比大小進行排序
T 根據(jù)時間/累計時間進行排序
W 將當前設(shè)置寫入~/.toprc文件中
Linux。 Shell編程。 為hello.sh寫一個守護進程watchDog.sh
watchDog.sh實例,這個只如扮森是個思路,具體你得缺伏自己測試
#!/bin/sh
hello=`ps -ef| grep hello.sh|grep -v grep |awk ‘渣畝{print $2}’`
while true;
do
if ; then
./hello.sh
fi
done
linux watchdog使用的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux watchdog使用,Linux watchdog的簡單使用方法,您好,如果要關(guān)閉linux系統(tǒng)的看門狗,要怎么操作呢?多謝!,linux怎樣使用top命令查看系統(tǒng)狀態(tài),Linux。 Shell編程。 為hello.sh寫一個守護進程watchDog.sh的信息別忘了在本站進行查找喔。
成都網(wǎng)站營銷推廣找創(chuàng)新互聯(lián),全國分站站群網(wǎng)站搭建更好做SEO營銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價格厚道。提供成都服務(wù)器托管租用、綿陽服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽服務(wù)器機房服務(wù)器托管租用。
網(wǎng)頁標題:Linux watchdog的簡單使用方法 (linux watchdog使用)
文章鏈接:http://fisionsoft.com.cn/article/cdsgssd.html


咨詢
建站咨詢
