偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

NFS掛載腳本的代碼實現

網絡 網絡管理
下面我們來對NFS掛載腳本的具體代碼進行一下解析。首先我們來了解一下筆者的初衷,之后對于問題的解決再來著重看一下。

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

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

腳本名稱:check_nfsmount

腳本作用:

1,檢查NFS磁盤是否被掛載

2,報告哪些NFS沒有被掛載

使用方法:

1,將需要mount的NFS磁盤寫入到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í)行權限

3,配置nrpe配置文件,添加相應的command

4,nagios監(jiān)控機上添加相應的服務

NFS掛載腳本內容:

  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 

對于NFS掛載腳本中還沒有考慮到的還希望各位指出。

責任編輯:佟健 來源: IT實驗室
相關推薦

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

自動掛載nfs

2010-08-04 17:41:52

掛載NFS

2010-08-03 17:19:43

NFS服務

2019-05-08 13:18:22

Linux網絡文件系統(tǒng)系統(tǒng)運維

2010-07-28 15:13:42

VMwareNFS

2013-07-30 10:29:07

SUSE LinuxNFS

2010-08-03 17:23:41

NFS服務

2010-07-30 13:51:23

NFS配置

2009-09-08 15:06:45

NFS服務器

2010-06-18 10:54:00

Linux Acloc

2018-05-25 14:16:55

NFS源代碼線程

2010-07-22 12:54:15

開啟telnet服務

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
點贊
收藏

51CTO技術棧公眾號