NFS

NFS伺服端架設前置步驟

Edited by 鄭智記, 陳嘉偉

 

ps: 提醒Centos作業系統下,有些檔案fedora不同,要記得查資料。 

檢查是否安裝NFS套件

 

請於終端機底下輸入 rpm –qa | grep nfs 執行,檢查是否安裝NFS套件。

※ 至少要安裝nfs-utils-x.x.x-x 此套件。

 

檢查RPC程序是否已啟動 

請於終端機底下輸入 rpcinfo -p執行,檢查系統中RPC程序的執行狀況。

 

 

RPC未啟動的錯誤訊息。

 

 

請於終端機底下輸入 /etc/rc.d/init.d/portmap start指令執行啟動portmapper程序。

 

 

※若想設定每次開機時自動啟動portmapper程序。

請於終端機底下執行 chkconfig portmap on 指令設定。

 

 

 

 

NFS伺服端架設步驟

 

啟動NFS服務

當確認已安裝NFS套件並啟動portmapper程序之後,接著就可以啟動NFS服務了。

請於終端機底下輸入 /etc/rc.d/init.d/nfs start 執行啟動NFS服務。

 

 

檢查NFS服務目前的狀態

請於終端機底下輸入 /etc/rc.d/init.d/nfs status 及輸入 ps ax | grep nfsd 執行,可檢查NFS服務目前的執行狀態。

 

 

關閉及重新啟動NFS服務

關閉NFS服務。

請於終端機底下輸入 /etc/rc.d/init.d/nfs stop關閉NFS服務。

 

重新啟動NFS服務。

請於終端機底下輸入 /etc/rc.d/init.d/nfs restart來重新啟動NFS服務。

 

 

※ 若想設定每次開機時自動啟動NFS服務。

請於終端機底下執行 chkconfig nfs on 指令設定。

設定NFS服務的分享路徑

 

要設定NFS分享的目錄,則需使用 /etc/exports 這個檔案。

請於終端機底下輸入 gedit /etc/exports & 開啟並設定分享的目錄。

 

 

於檔案中輸入分享的目錄、分享的對象、使用權限。

※ 這裡分享的對象為所有網域的電腦,以星號表示之。

 

 

 

下列為常用的權限設定項目:

※    (同時使用兩項設定時,兩者間請以逗號區隔)

 

ro:設定權限為唯讀。 

 

rw:設定權限為可讀寫。 

 

sync:資料同步寫入到記憶體與硬碟當中。 

 

async:資料會先暫存於記憶體當中,而非直接寫入硬碟,可增加檔案的讀寫效率,但是遇到當機時容易造成檔案損毀。 

 

root_squash:在登入 NFS 主機使用分享之目錄的使用者如果以 root 帳號登入 時,那麼這個使用者的權限將被壓縮成為匿名使用者,通常他的 UID 與 GID 都會變成 nobody(nfsnobody)系統帳號的身份,以避免系統被入侵,此為預設值。 

 

no_root_squash:登入 NFS 主機使用分享目錄的使用者,如果以 root 帳號登入的話,那麼對於這個分享的目錄來說,就具有 root (管理者)的權限。  

※這個項目『極不安全』,不建議使用! 

 

all_squash:不論登入 NFS 的使用者身份為何, 他的身份都會被壓縮成為匿名使用者,通常也就是 nobody(nfsnobody)

 

anonuid:anon 意指 anonymous (匿名者) 前面關於 *_squash 提到的匿名使用者的 UID 設定值,通常為 nobody(nfsnobody),但是您可以自行設定這個 UID 的值!當然,這個 UID 必需要存在於您的 /etc/passwd 當中! 

 

anongid:同 anonuid ,但是變成 group ID 就是了!  

 

 

 

 

NFS用戶端架設前置步驟

  

 

檢查是否安裝NFS套件

 請於終端機底下輸入 rpm -qa | grep nfs 執行,檢查是否安裝NFS套件。

 

 

 

 

檢查RPC程序是否已啟動

請於終端機底下輸入 rpcinfo -p執行,檢查系統中RPC程序的執行狀況。

 

 

 

 RPC未啟動的錯誤訊息。

 

 

 

 請於終端機底下輸入 /etc/rc.d/init.d/portmap start指令執行啟動portmapper程序。

 

 

 

若想設定每次開機時自動啟動portmapper程序。

請於終端機底下執行 chkconfig portmap on 指令設定。

 

 

PS: Fedora core7以後,找不到portmap, 改成rpcbind。

1.檢查有無這兩個套件 rpm -qa |grep rpcbind

2.安裝 yum install -y rpcbind

3.啟動服務 service rpcbind start

 

以伺服器主機名稱來對應伺服器之IP

 請於終端機底下輸入 gedit /etc/hosts & 開啟並設定伺服器IP對應之伺服器主機名稱。

 

 

 

 於檔案中輸入伺服器IP及其對應之伺服器主機名稱,以後在用戶端電腦上,伺服器主機名稱ee101則對應為伺服器IP140.135.12.101。 

  

 

 

 

 

 

NFS用戶端架設步驟

  

查看NFS伺服器分享的目錄

在掛載目錄之前,要先知道NFS伺服器分享出那些目錄,以及允許哪些電腦進入,可以使用NFS套件中的showmount這個指令來查看。

請於終端機底下輸入 showmount -e 140.135.12.101 指令執行,可以查看伺服器所分享的目錄。

 

 

或於終端機底下輸入 showmount -e ee101 指令執行,可以查看伺服器所分享的目錄。

 

 

建立與伺服端掛載目錄相同的絕對路徑位置

由於掛載遠端伺服器所分享的目錄,需於用戶端電腦建立相同之絕對路徑目錄資料夾。

請於終端機底下輸入 mkdir /usr/cad 指令執行。

※ 由於 /home 已存在,所以不需建立。

 

 

  

 

開機時自動掛載遠端目錄

當用戶端一開機時,即自動掛載遠端的目錄,則必須將掛載目錄的設定寫入至 /etc/fstab 檔案中。

請於終端機底下輸入 gedit /etc/fstab & 開啟並設定開機時掛載遠端目錄的相關設定。

 

 

 

於檔案中輸入遠端的目錄路徑、本機的掛載目錄、檔案系統形式、權限等設定值。

  

  

 

 mount -t nvs -vvv -o ro,bg,soft,nolock,_netdev,nfsvers=3,udp,rsize=32768,wsize=32768 Server_ip_address:/cad /mnt/test_dir

notes:

(1)we need to put these options !!

    nfsvers=3,udp