NFS服務搭建

NFS全稱是network file system,NFS允許一個系統在網絡上與他人共享目錄和文件。通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統上的文件。 假如有三臺機器A, B, C,它們需要訪問同一個目錄,目錄中都是圖片,傳統的做法是把這些圖片分別放到A, B, C. 但是使用NFS只需要放到A上,然後A共享給B和C即可。訪問的時候,B和C是通過網絡的方式去訪問A上的那個目錄的。 


廢話不多說,搭建走着。。。。。

首先先聲明的是搭建環境爲centos6.4

服務端ip:192.168.0.120

客戶端ip:192.168.0.121

1、需要安裝兩個包(nfs-utils和rpcbind):

yum install -y nfs-utils rpcbind

2、提供nfs服務的機器上 vim /etc/exports  //內容如下:

/home/ 192.168.0.0/24(rw,sync,all_squash,anonuid=501,anongid=501)

(解釋下這個:共分爲三部分,第一部分就是本地要共享出去的目錄,第二部分爲允許訪問的主機(可以是一個IP也可以是一個IP段)第三部分就是小括號裏面的,爲一些權限選項。它表示:共享的目錄爲/home,信任的主機爲192.168.0.0/24這個網段,權限爲讀寫,同步,限定所有使用者,並且限定的uid和gid都爲501。

rw :讀寫;

ro :只讀;

sync :同步模式,內存中數據時時寫入磁盤;

async :不同步,把內存中數據定期寫入磁盤中;

no_root_squash :加上這個選項後,root用戶就會對共享的目錄擁有至高的權限控制,就像是對本機的目錄操作一樣。不安全,不建議使用;

root_squash:和上面的選項對應,root用戶對共享目錄的權限不高,只有普通用戶的權限,即限制了root;

all_squash:不管使用NFS的用戶是誰,他的身份都會被限定成爲一個指定的普通用戶身份;anonuid/anongid :要和root_squash 以及all_squash一同使用,用於指定使用NFS的用戶限定後的uid和gid,前提是本機的/etc/passwd中存在這個uid和gid,包括客戶端。)

3、啓動 /etc/init.d/rpcbind start; /etc/init.d/nfs start

(注意先啓動rpcbind,否則會報錯)

4、客戶端同樣安裝:yum install -y nfs-utils 

查看服務器端都共享了哪些目錄:showmount -e 192.168.0.120  

在客戶端上掛載服務端的nfs:     

mount -t nfs 192.168.0.120:/home/ /mnt/ 

df -h  查看掛載的情況

5、小技巧:

a)改變/etc/exports配置文件後,不用重啓nfs服務直接用這個exportfs即可,如:exportfs -arv 

-a :全部掛載或者卸載;

-r :重新掛載;

-u :卸載某一個目錄;

-v :顯示共享的目錄。

b)客戶端在使用nfs時,常用一個選項就是 -o nolock,如:

mount -t nfs -o nolock 192.168.0.120:/home/text /mnt/

意思指掛載的時候指定這個文件不加鎖。

c)客戶端開機加載這個文件可以在/etc/rc.local加入:

mount -t nfs -o nolock 192.168.0.120:/home/text /mnt/


疑問:服務端設置/home/text 192.168.0.0/24(rw,sync,no_root_squash)時,客戶端寫的時候容易卡


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