centos7檔案共享伺服器nfs搭建
前言
相對於samba來說,如果僅僅只是希望搭建一個linux之間進行檔案共享的伺服器,而不是所有異構的系統之間共享的話,nfs是一個不錯的選擇。但是客戶端如果想要共享nfs伺服器上的檔案,則必須安裝nfs-utils客戶端才能共享成功。各有優劣,下面來講nfs的搭建。
搭建步驟
1.安裝
yum -y install nfs-utils rpcbind
2.啟動服務,先啟動rpcbind
service rpcbind start
service nfs start
3.建立需要共享的目錄
mkdir -p /data/share
4.對資料夾設定許可權
chown -R nfsnobody /data/share
5.編輯共享
vim /etc/exports
#增加下面內容
/data/share 192.168.0.50(ro,insecure,sync,all_squash)
注:可以指定特定的ip,也可以直接寫*開放所有ip訪問許可權。
常見的選項:
ro:預設選項,以只讀的方式共享。
rw:以讀寫的方式共享。
root_squash:將客戶端使用的是root使用者時,則對映到NFS伺服器的使用者為NFS的匿名使用者(nfsnobody)。
no_root_squash:將客戶端使用的是root使用者時,則對映到FNS伺服器的使用者依然為root使用者。
all_squash:預設選項,將所有訪問NFS伺服器的客戶端的使用者都對映為匿名使用者,不管客戶端使用的是什麼使用者。
anonuid:設定對映到本地的匿名使用者的UID
anongid:設定對映到本地的匿名使用者的GID
sync:預設選項,保持資料同步,資料同步寫入到記憶體和硬碟。
async:非同步,先將資料寫入到記憶體,在將資料寫入到硬碟。
secure:NFS客戶端必須使用NFS保留埠(通常是1024以下的埠),預設選項。
insecure:允許NFS客戶端不使用NFS保留埠(通常是1024以上的埠)。
6.生效配置
exportfs -r
7.開啟防火牆
firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --reload
8.客戶端安裝
yum -y install nfs-utils
9.客戶端建立需要掛載的目錄
mkdir /usr/share
10.客戶端檢視伺服器共享目錄資訊
showmount -e 伺服器ip
11.進行掛載
mount -t nfs 主機ip:/data/share /usr/share -o proto=tcp -o nolock
常見錯誤排查
在掛載時如果使用了非法埠,也就是使用了大於1024的埠報錯後,可以通過下面命令檢視日誌確認:
cat /var/log/messages | grep mount
總結
搭建流程就介紹完了,主要給大家講了nfs搭建,有個小坑就是,如果客戶端既需要共享檔案伺服器上的檔案,也要裝一些其他軟體的話,nfs-client和即將要安裝的軟體可能會產生的依賴衝突。而samba客戶端不需要安裝,就可以直接訪問samba服務端的檔案,所以在生產環境中還是建議大家安裝samba。如果有需要,可以看博主之前寫的關於samba的安裝。