自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

NFS掛載腳本的代碼實(shí)現(xiàn)

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
下面我們來(lái)對(duì)NFS掛載腳本的具體代碼進(jìn)行一下解析。首先我們來(lái)了解一下筆者的初衷,之后對(duì)于問(wèn)題的解決再來(lái)著重看一下。

今天們主要講解一下NFS掛載腳本的內(nèi)容。這個(gè)在監(jiān)控系統(tǒng)中是常見(jiàn)的問(wèn)題。那么具體的nagios監(jiān)控腳本是監(jiān)控NFS是否被掛載上的腳本信息,讓們從下文來(lái)了解一下吧。先說(shuō)下寫(xiě)這個(gè)NFS掛載腳本的初衷吧,事情還是因?yàn)樯洗尉W(wǎng)絡(luò)部調(diào)整服務(wù)器機(jī)柜位置引起的,當(dāng)時(shí)自信滿滿的認(rèn)為服務(wù)器上已經(jīng)配置好了自動(dòng)掛載NFS,所以根本不用擔(dān)心NFS掛載腳本的情況,當(dāng)服務(wù)器啟動(dòng)恢復(fù)后,的nagios給發(fā)了一個(gè)recovery的郵件,就想當(dāng)然的認(rèn)為好了,也就沒(méi)管。第二天開(kāi)發(fā)人員居然找到,問(wèn)昨天是不是有兩臺(tái)機(jī)器重啟了,說(shuō)是呀,他們就說(shuō)NFS沒(méi)有掛載上,當(dāng)時(shí)還很強(qiáng)調(diào)說(shuō)不可能呢,結(jié)果手動(dòng)重啟了一下昨天的機(jī)器,發(fā)現(xiàn)真的沒(méi)有自動(dòng)掛載上,讓很是郁悶。

沒(méi)有自動(dòng)掛載到還不是讓人最郁悶,那個(gè)已經(jīng)通過(guò)技術(shù)問(wèn)題解決了,郁悶的是有了問(wèn)題居然不是nagios***時(shí)間通知。由于之前使用的是nagios的check_disk這個(gè)腳本,在NFS磁盤(pán)有問(wèn)題,不可讀寫(xiě)或空間不足的時(shí)候給報(bào)過(guò)警,但經(jīng)過(guò)測(cè)試發(fā)現(xiàn),這個(gè)腳本只能監(jiān)控本地磁盤(pán)(包括掛載好的NFS)可用性,而不管是否NFS掛載是否正確了,所以才有了今天這個(gè)腳本。

腳本名稱:check_nfsmount

腳本作用:

1,檢查NFS磁盤(pán)是否被掛載

2,報(bào)告哪些NFS沒(méi)有被掛載

使用方法:

1,將需要mount的NFS磁盤(pán)寫(xiě)入到fstab,如下

# cat /etc/fstab
/dev/VolGroup00/LogVol00 /   ext3defaults,usrquota,grpquota1 1
LABEL=/boot /boot   ext3defaults1 2
tmpfs   /dev/shmtmpfs   defaults0 0
devpts  /dev/ptsdevpts  gid=5,mode=620  0 0
sysfs   /syssysfs   defaults0 0
proc/proc   procdefaults0 0
/dev/VolGroup00/LogVol01 swapswapdefaults0 0
192.168.211.129:/home/tst   /data/tst   nfs defaults0 0
192.168.211.129:/home/tst02 /data/tst02 nfs defaults0 0
192.168.211.129:/home/tst03 /data/tst03 nfs defaults0 0

2,將腳本nagios安裝目錄的libexec下,并賦予可執(zhí)行權(quán)限

3,配置nrpe配置文件,添加相應(yīng)的command

4,nagios監(jiān)控機(jī)上添加相應(yīng)的服務(wù)

NFS掛載腳本內(nèi)容:

  1. #!/bin/bash  
  2.  
  3. #VERSION="1.0" 
  4. #AUTHOR by wenzizone.cn  
  5.  
  6. . /usr/local/nagios/libexec/utils.sh  
  7.  
  8. CHECKNAME="Mount NFS" 
  9.  
  10. RESULT="" 
  11. EXIT_STATUS=$STATE_OK  
  12.  
  13. NFSFSTAB=`LC_ALL=C awk '!/^#/ && $3 ~ /^nfs/ && $3 != "nfsd" && $4 !~ /noauto/ { print $1 }' /etc/fstab`  
  14. NFSMTAB=`LC_ALL=C awk '$3 ~ /^nfs/ && $3 != "nfsd" && $2 != "/" { print $1 }' /proc/mounts`  
  15.  
  16. theend() {  
  17. echo $RESULT  
  18. exit $EXIT_STATUS  
  19. }  
  20.  
  21. CHECK_MOUNT(){  
  22. LIST="" 
  23. for list in $NFSFSTAB  
  24. do  
  25. NFS_MOUNT=$(LC_ALL=C cat /proc/mounts |cut -d " " -f 1|grep "${list}$")  
  26. if [ -z "${NFS_MOUNT}" ];then  
  27. LIST="$LIST$list " 
  28. fi  
  29. done  
  30. return $LIST  
  31. }  
  32. if [ -n "${NFSMTAB}" ];then  
  33. if [ "${NFSFSTAB}" = "${NFSMTAB}" ];then  
  34. RESULT="$CHECKNAME OK - NFS BE MOUNTED PROPERLY" 
  35. EXIT_STATUS=$STATE_OK  
  36. else  
  37. CHECK_MOUNT  
  38. RESULT="$CHECKNAME WARNING - ${LIST} NOT BE MOUNTED" 
  39. EXIT_STATUS=$STATE_WARNING  
  40. fi  
  41. else  
  42. RESULT="$CHECKNAME CRITICAL - ALL NFS NOT BE MOUNTED" 
  43. EXIT_STATUS=$STATE_CRITICAL  
  44. fi  
  45.  
  46. theend 

對(duì)于NFS掛載腳本中還沒(méi)有考慮到的還希望各位指出。

責(zé)任編輯:佟健 來(lái)源: IT實(shí)驗(yàn)室
相關(guān)推薦

2010-08-04 14:43:03

NFS掛載

2010-08-04 14:22:55

掛載NFS

2010-08-05 15:05:44

NFS掛載

2010-08-04 11:37:44

PHP NFS

2010-08-04 14:33:42

自動(dòng)掛載nfs

2010-08-04 17:41:52

掛載NFS

2010-08-03 17:19:43

NFS服務(wù)

2019-05-08 13:18:22

Linux網(wǎng)絡(luò)文件系統(tǒng)系統(tǒng)運(yùn)維

2010-07-28 15:13:42

VMwareNFS

2013-07-30 10:29:07

SUSE LinuxNFS

2010-07-30 13:51:23

NFS配置

2010-08-03 17:23:41

NFS服務(wù)

2009-09-08 15:06:45

NFS服務(wù)器

2010-06-18 10:54:00

Linux Acloc

2018-05-25 14:16:55

NFS源代碼線程

2010-07-22 12:54:15

開(kāi)啟telnet服務(wù)

2011-08-01 16:42:24

ibmdwNFS文件系統(tǒng)

2010-07-27 10:38:02

NFS ServerNFS Client

2010-04-08 09:27:44

Oracle 安裝腳本

2010-05-31 10:55:08

Nagios mysq
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)