NFS服務器與客戶端的安裝與配置

今天實驗室需要搭建NAS,我負責的是NFS的安裝與配置,現將整理的文檔分享一下:

 

參考一:Linuxrpm 安裝包方式安裝

http://linux.chinaunix.net/techdoc/beginner/2008/03/17/983528.shtml

參考二:CentOSNFS安裝與配置

http://blog.csdn.net/puwenhui/article/details/6298178

 

步驟:

一、服務器端

1安裝rpm

rpm -ivh nfs4-acl-tools-0.3.3-1.el5.x86_64.rpm

rpm -ivh libgssapi-0.10-2.x86_64.rpm

rpm -ivh libgssapi-devel-0.10-2.x86_64.rpm

rpm -ivh libevent-1.1a-3.2.1.x86_64.rpm

rpm -ivh libevent-devel-1.1a-3.2.1.x86_64.rpm

rpm -ivh nfs-utils-lib-1.0.8-7.6.el5.x86_64.rpm

rpm -ivh nfs-utils-lib-devel-1.0.8-7.6.el5.x86_64.rpm

rpm -ivh portmap-4.0-65.2.2.1.x86_64.rpm

rpm -ivh nfs-utils-1.0.9-42.el5.x86_64.rpm

2創建NFS文件系統服務端目錄(例:/opt/nfs),並賦予用戶權限

mkdir /opt/nfs

chown nastors:storage /opt/nfs

chmod 777 /opt/nfs

3編輯配置文件/etc/exports,加入以下語句:

/opt/nfs *(rw,sync,no_root_squash)

注:①/opt/nfs爲服務器掛載目錄

         IP*處指定客戶端IP*表示所有IP

(4啓動服務

/etc/init.d/portmap start  啓動RPC進程,爲NFS提供端口

/etc/init.d/nfs start

/etc/init.d/nfslock start  來控制文件一致性

(5查看端口和服務

rpcinfo p localhost  看到portmapnfsmountd進程都已經開啓

(6查看nfs的設置

showmount -e localhost  查看exports文件

showmount -a localhost  查看nfs與主機連接情況

(7重新修改 /etc/exports ,使用exportfs[-aruv]來使系統明白

-a :全部掛載(或卸除) /etc/exports 檔案內的設定

-r :重新掛載 /etc/exports 裏面的設定,此外,亦同步更新 /etc/exports

     /var/lib/nfs/xtab 的內容!

-u :卸除某一目錄

-v :在 export 的時候,將分享的目錄顯示到屏幕上!

修改後一定記得重啓nfs服務:service nfsrestart

 

二、客戶端

1開啓客戶端的RPC

/etc/init.d/portmap start

2開啓客戶端的nfslock(與服務器端對應)

/etc/init.d/nfslock start

3檢查一下RPC是否開啓

showmount –e 222.31.76.177[S2] 

如果顯示出在服務器端寫的exports文件的內容,則說明成功

4進行nfs掛載

原因:①服務器端做修改後未重啓服務:

exportfs -a

service nfs restart

           ②服務器配置文件/etc/exports中指定的客戶端IP不對

 

測試用例:

222.31.76.177(服務器)上建了兩個共享目錄/opt/nfs/opt/nfs_cwn,前者是對所有IP都開放,後者只對222.31.76.195(客戶端)開放。經實驗,在195上能成功加載這兩個共享目錄,而另一臺虛擬機222.31.76.48(客戶端)只能掛載/opt/nfs

結論:NFS能同時存在多個共享目錄,並分別指定共享範圍,都在服務器配置文件/etc/exports下設定。另一方面,多個客戶端也能同時使用這些共享目錄。


 [S1]* rw:read-write,可擦寫的權限;

 

* ro:read-only,只讀的權限;

 

* sync:數據同步寫入到內存與硬盤當中;

 

* async:數據會先暫存於內存當中,而非直接寫入硬盤!

 

* no_root_squash:

      登入 NFS 主機使用分享目錄的用戶,如果是 root 的話,那麼對於這個分享的目錄來說,他就具有 root 的權限! 這個項目『極不安全』,不建議使用!

 

* root_squash:

      在登入 NFS 主機使用分享之目錄的用戶如果是 root 時,那麼這個使用者的權限將被壓縮成爲匿名用戶,通常他的 UID 與 GID 都會變成nobody(nfsnobody) 那個系統賬號的身份;

 

* all_squash:

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

 

* anonuid:

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

 

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

 [S2]IP爲服務器的IP

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章