天天看點

在 CentOS 上安裝和配置 NFS 4.0

安裝 nfs 伺服器所需的軟體包:

和安裝任何其他伺服器軟體一樣,安裝完 nfs 服務後就需要對 nfs 服務進行配置。輸出伺服器端的某個目錄,以便 nfs 用戶端能挂載和通路到這個目錄:

172.16.20.11 和 172.16.20.12 上面的使用者可以挂載 nfs 伺服器(172.16.20.1)上的 /bak 目錄到自己檔案系統裡;rw 在這裡表示可讀可寫。

把 nfs 服務加入系統啟動腳本并且手動啟動 nfs 服務:

确認 nfsv4 伺服器成功運作:

檢查 nfs 伺服器是否輸出我們想共享的目錄 /bak:

注意 nfs 使用 portmap,而且新版本的 portmap 使用 hosts.deny 和 hosts.allow 檔案來控制通路源,修改這2個配置檔案以便 nfs 用戶端能正常連接配接到伺服器:

首先啟動 portmap:

檢查 nfs 伺服器端是否有目錄共享:

使用 mount 挂載伺服器端的目錄 /bak 到用戶端某個目錄下:

在 /etc/fstab 中挂載 nfs 檔案系統:

在成功挂載伺服器端的 /bak 後就可以在用戶端裡操作了,這時候寫檔案或者拷貝檔案的時候會遇到一個權限問題報錯 : permission denied,這是因為上面我們在伺服器端建立了 /bak 但是 /bak 的 owner 是 root:root,而用戶端的正在通路 nfs 的使用者是 vpsee,nfs 要求伺服器端和用戶端的 uid 和 gid 必須一緻,是以要在 nfs 伺服器端修改 /bak 的權限和所屬:

注意使用 nfs 的時候,用戶端的使用者 uid 和 gid 必須和伺服器端的 uid 和 gid 完全符合,否則會造成權限錯誤。在小規模使用者的情況下,我們可以偷懶通過在客戶和伺服器兩端同時建立相同的使用者群組來解決這個問題,但是在大規模使用者情況 下最好的辦法是利用 nis 或者 openldap 來統一管理使用者,做到一次登入,到處通路。

2、如果遇到如下問題,可能是因為你的 mount -t nfs 使用的是 nfsv3 協定,需要明确指出使用 nfsv4 協定挂載 mount -t nfs4:

下一篇: SCP 指令詳解

繼續閱讀