借鑑別人這篇部落格搭建成功的:http://blog.51cto.com/mrxiong2017/2087001
NFS系統:用來共享檔案、圖片、視訊
準備兩個centOS7伺服器,一個作NFS service,另一個用NFS client
192.168.26.137 此伺服器作NFS服務端主機
192.168.26.233 此伺服器作NFS客戶端
主要應用原理:
在192.168.26.137上安裝NFS服務端,設定一個檔案目錄test資料夾用來共享。然後在192.168.26.233上安裝NFS客戶端,也建立一個test資料夾目錄。再然後把NFS服務端共享的test目錄掛載到NFS客戶端的test資料夾目錄上,這樣192.168.233上的test資料夾目錄就會實時顯示(並可以做讀寫操作)192.168.26.137伺服器上test資料夾裡面的資料檔案了。同理搭建多個NFS客戶端,就可以多臺機器操作主機上NFS服務端test資料夾中的資料檔案
【注意最近在centos7上搭了很多服務,因為弄很多服務都要關閉防火牆,所以我在安裝centos7的時候一開始就把所有centos7系統的防火牆給關了。】
一、192.168.26.137伺服器上部署NFS服務端
#1、檢查系統版本及NFS服務nfs-utils 和rpcbind有沒有安裝
rpm -qa nfs-utils rpcbind
#出現下面這個就說明安裝好了:
#2、如果沒有,那就安裝NFS服務的nfs-unitls和rpcbind (因為centos7自帶了rpcbind,所以不用安裝rpc服務)
yum -y install nfs-utils (只安裝nfs-unitls)
yum install nfs-utils rpcbind -y (安裝nfs-unitls和rpcbind服務,與上面二選一)
#3、啟動rpcbind服務(一定要先啟動rpcbind服務再啟動nfs服務)
#先檢視rbcbind服務狀態
systemctl status rpcbind.service
#啟動rpcbind服務
後面懶得寫了。。。。。。。。。。。。。。
配置NFS服務的配置檔案,引數配置:
vi /etc/exports
開啟這個配置檔案,並寫入簡單配置如下:
上圖引數解析:(裡面檔案每一行定義 一個共享目錄)
/usr/local/data/test #表示你要共享的目錄
192.168.26.1/24 #表示 所允許訪問的客戶端IP,這裡表示整個26.1以上網段都可以訪問,也可以指定單個地址如:192.168.26.233,也可以用*號表示所有使用者都可以訪問你所共享的目錄
(rw,sync,root_squash) #rw:表示讀寫許可權,sync:表示資料同步寫入記憶體硬碟,root_squash:表示訪問共享目錄時,使用者如果是root許可權,對共享目錄的許可權會被壓縮為nfsnobody使用者的許可權
【
下面配置nfs所有不同許可權,表示如下:
ro:表示只讀許可權
rw:讀寫許可權
sync:資料同步寫記憶體硬碟
async:將資料先儲存在記憶體緩衝區中,必要時才寫入磁碟;
all_squash:不管你訪問共享目錄的使用者是誰,都必須壓縮為nfsnobody使用者的許可權;
no_all_squash(預設):訪問使用者先與本機使用者匹配,匹配失敗後再對映為匿名使用者或使用者組;
root_squash: 如果訪問共享目錄是root的許可權使用者,對共享目錄的許可權會被壓縮為nfsnobody使用者的權
no_root_squash:來訪的root使用者保持root帳號許可權;
no_squash:訪問共享目錄時,使用者如果是root許可權,對共享目錄也具有root許可權(最好不要設定,增加服務安全隱患,稍後再提)
anongid=<GID>:指定匿名訪問使用者的本地使用者組GID,要和root_squash 以及 all_squash一同使用;
insecure:允許客戶端從大於1024的tcp/ip埠連線伺服器;
subtree_check(預設) :若輸出目錄是一個子目錄,則nfs伺服器將檢查其父目錄的許可權;
】
192.168.26.233機器上NFS客戶端配置:
其實nfs客戶端不用配置什麼。
第一步:在192.168.26.233機器上安裝nfs(因為centOS7自帶了rpcbind, 不用安裝rpc服務)
安裝nfs命令:yum install -y nfs-utils
第二步:為rpcbind做開機啟動
systemctl enable rpcbind.service
然後啟動rpcbind服務:
systemctl start rpcbind.service