nfs 多台服務器共享目錄


最近遇到了點問題,項目本來以為不會部署多個站點,上傳文件之類的就直接配置到本機的目錄下了,這樣一來部署多個站點也沒有公用的文件服務器,壞事了,網上一找辦法,nfs能解決這個問題,那就開始試一試。

環境介紹:

服務器:CentOS 6.4_64 server 
ip:10.1.1.52

服務器:CentOS 6.4_64 client 
ip:10.1.1.47

 

安裝nfs(兩台均安裝)

yum install nfs-utils rpcbind

服務端配置

1、創建共享目錄

mkdir /home/test

2、NFS文件配置

vi /etc/exports

增加如下一行:

/home/test/ 10.1.1.47(rw,no_root_squash,no_all_squash,sync)

使配置生效

exportfs -rv

注:配置文件說明: 

/usr/local/test/ 為共享的目錄,使用絕對路徑。
NFS_Client_IP(rw,no_root_squash,no_all_squash,sync)為客戶端的地址及權限,地址可以是一個網段,一個IP地址或者是一個域名,域名支持通配符,如:*.youxia.com,地址與權限中間沒有空格,權限說明:
rw:read-write,可讀寫;
ro:read-only,只讀;
sync:文件同時寫入硬盤和內存;
async:文件暫存於內存,而不是直接寫入內存;
no_root_squash:NFS客戶端連接服務端時如果使用的是root的話,那么對服務端分享的目錄來說,也擁有root權限。顯然開啟這項是不安全的。
root_squash:NFS客戶端連接服務端時如果使用的是root的話,那么對服務端分享的目錄來說,擁有匿名用戶權限,通常他將使用nobody或nfsnobody身份;
all_squash:不論NFS客戶端連接服務端時使用什么用戶,對服務端分享的目錄來說都是擁有匿名用戶權限;
anonuid:匿名用戶的UID值,通常是nobody或nfsnobody,可以在此處自行設定;
anongid:匿名用戶的GID值。

啟動服務端

service rpcbind start
service nfs start

客戶端掛載

1、創建需要掛載的目錄:

mkdir /usr/local/test

2、測試掛載:

showmount -e 10.1.1.52

3、掛載

mount -t nfs NFS_Server_IP:/usr/local/test/usr/local/test

mount

NFS_Server_IP:/usr/local/test on /usr/local/testtype nfs (rw,vers=4,addr= NFS_Server_IP,clientaddr= NFS_Client_IP) 

如果信息如上顯示則掛載成功!

4、測試:

客戶端新建一個文件:

cd /home/test
echo "nfs test">>test.txt

看一下服務端共享目錄有此文件嗎


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM