顯示具有 NFS 標籤的文章。 顯示所有文章
顯示具有 NFS 標籤的文章。 顯示所有文章

判斷NFS是否連線的sh

>> 2011年11月8日 星期二

NFS用在資料的備份是相當的方便,但是隱藏著一個危機:
當server端沒有開啟或是無法順利掛載時,
若是將NFS掛載寫在/etc/fstab中,則會造成無法順利開機。
若是將NFS掛載寫在備份執行的shell中,
則會讓備份檔案備份在本機,(NFS需要掛載在本機的一個目錄中)
這樣的結果,輕則造成硬碟空間被佔據,嚴重的話,則會因為分割區爆滿而整台server掛點。
避免這樣的問題其實很簡單,加個幾行的判斷式,就可以避免這樣的危機。
這個判斷式的原理很簡單,我用df加上管線指令去判斷目前的磁碟中是否存在指定的主機所掛載的磁碟。如果有,就繼續進行其他的動作,如果沒有,則終止整個sh,並傳出一個錯誤代碼1。
我把這一段判斷式寫成一個sh檔案,判斷完成後的剩餘工作,就由使用者自行去填寫囉!
因應linux與FreeBSD所使用的shell不一樣,在一開使的使用shell宣告上有些許不同,因此我針對不同的OS,寫了不同的sh,其實,差異只在於一開始的宣告而已。

test NFS link:

#!/bin/bash
# Program:
#       This program for test is nfs link?
# History:
# 2011/11/06    Yixin Chen(cat)      0.1 release
# 2011/11/07    Yixin Chen(cat)      0.1.1 release
# 2011/11/08    Yixin Chen(cat)      0.1.2 release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
# setting var
nfsip="172.17.1.241"
# -----------------------
flag=$(df |grep ${nfsip})
if [ "$flag" == "" ]; then
  echo "NFS is NOT link!"
exit 1
fi
echo "NFS is link!"
# other active ....
exit 
 sh檔案for LINUX:下載
 sh檔案for FreeBSD:下載

其他有關於NFS的掛載資訊,請參閱:
雄的 FreeBSD 筆記‧NFS (Network File System)
鳥哥的 Linux 私房菜第十三章、檔案伺服器之一:NFS 伺服器

Read more...

FreeBSD舊版本連線NSF的問題解決

NSF是一個相當方便的磁碟掛載機制,用在資料備份上面尤其方便,
區域網路內,可以限制clinet的連結,安全性相對也比較高。

一般來講,clinet需要的套件,freeBSD已經都具備了,只是較舊的版本(我所遇到的為FreeBSD 6.2-RELEASE,網路上看到的,甚至7.0都有這個問題)當使用

 mount -t nfs server.ip.addr:/path1/path2/backup /tmp/backup/ 
這樣的指令時,會出現下列的錯誤訊息:
[udp] server.ip.addr:/path1/path2/backup: NFSPROC_NULL: RPC: Timed out
這樣的問題,看起來是出在於所使用的通訊協定問題,
感謝同事楊老師的協助,提供一個參數-o,整個指令變成:
mount -o tcp -t nfs server.ip.addr:/path1/path2/backup /tmp/backup/ 
這樣,就可以順利掛載囉!


其他有關於NSF的設定,請參閱:雄的FreeBSD 筆記‧NFS (Network File System)

Read more...

About This Blog

程式碼標示

  © Free Blogger Templates Joy by Ourblogtemplates.com 2008

Back to TOP