部署NFS服務
NFS即網絡文件系統,它允許網絡中的計算機之間通過TCP/IP網絡共享資源。在NFS的應用中,本地NFS的客戶端應用可以透明地讀寫位於遠端NFS服務器上的文件,就像訪問本地文件一樣。NFS最早由Sun公司開發,分2、3、4三個版本,2和3由Sun起草開發,4.0開始Netapp公司參與並主導開發,最新為4.1版本。
搭建部署
服務端
1、安裝軟件
[[email protected] ~]# yum install -y nfs-utils rpcbind
2、編輯配置文件
[[email protected] ~]# vim /etc/exports /home/nfssharedir 192.168.137.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000) ##配置格式:共享目錄 客戶端IP(參數1,參數2,參數.......)
▎參數說明:
rw:允許讀寫;
ro:只允許讀;
sync:同步模式,內存數據實時寫入磁盤,影響性能;
async:非同步模式,數據有丟失風險;
no_root_squash:客戶端掛載NFS共享目錄後,root用戶不受約束,權限很大;
all_squash:客戶端上所有用戶在使用NFS共享目錄時都被限定為一個普通用戶;
anonuid/anongid:和上面幾個選項搭配使用,定義被限定用戶的uid和gid。
3、授權
[[email protected] ~]# mkdir -p /home/nfssharedir [[email protected] ~]# chown 777 /home/nfssharedir
4、檢查與啟動
[[email protected] ~]# netstat -ltnp [[email protected] ~]# systemctl start nfs [[email protected] ~]# ps aux | grep nfs [[email protected] ~]# ps aux | grep rpc [[email protected] ~]# systemctl enable nfs
客戶端
[[email protected] ~]# yum install -y nfs-utils [[email protected] ~]# showmount -e 192.168.137.100
如果沒有效果,先確認服務端服務已經啟動,再確認服務端和客戶端的防火墻已經關閉後,再次嘗試。
也可以掛載:
[[email protected] ~]# mount -t nfs 192.168.137.100:/home/nfssharedir /mnt/
exportfs
重啟nfs服務時,需要把所有掛載點卸載掉。可以使用exportfs -arv命令。
1、編輯配置文件
[[email protected] ~]# vim /etc/exports /home/nfssharedir 192.168.137.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000) /tmp 192.168.137.200(rw,sync,no_root_squash) ##新增該行
2、執行exportfs -arv命令
[[email protected] ~]# exportfs -arv exporting 192.168.137.200:/tmp exporting 192.168.137.0/24:/home/nfssharedir
3、關閉服務端和客戶端防火墻
4、檢查效果
[[email protected] ~]# showmount -e 192.168.137.100 [[email protected] ~]# mount -t nfs 192.168.137.100:/tmp/ /mnt/
▎NFS 4/6版本會有該問題(客戶端文件屬主屬組nobody)
1、CentOS 7版本系統如果出現問題解決方案:
客戶端掛載服務端共享目錄到掛載點後,再重新掛載一次同時指定NFS的版本為3;
2、CentOS 6可以這樣解決:
客戶端和服務端都需要修改如下配置文件內容:
vim /etc/idmapd.conf
把“#Domain = local.domain.edu” 改為 “Domain = xxx.com” (這裏的xxx.com,隨意定義吧),然後再重啟rpcidmapd服務。
本文出自 “Gorilla City” 博客,請務必保留此出處http://juispan.blog.51cto.com/943137/1959153
部署NFS服務