1. 程式人生 > >centos7檔案共享伺服器nfs搭建

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的安裝。