Centos7搭建NFS伺服器

林堯彬發表於2018-05-30

借鑑別人這篇部落格搭建成功的: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許可權(最好不要設定,增加服務安全隱患,稍後再提)

      anonuid=<UID>:指定匿名訪問使用者的本地使用者UID,要和root_squash 以及 all_squash一同使用;

      anongid=<GID>:指定匿名訪問使用者的本地使用者組GID,要和root_squash 以及 all_squash一同使用;
 
      【anonuid/anongid :要和root_squash 以及 all_squash一同使用,用於指定使用NFS的使用者限定後的uid和gid,前提是本機的/etc/passwd中存在這個uid和gid】
 
      secure(預設):限制客戶端只能從小於1024的tcp/ip埠連線伺服器;

      insecure:允許客戶端從大於1024的tcp/ip埠連線伺服器;

      

      wdelay(預設):檢查是否有相關的寫操作,如果有則將這些寫操作一起執行,這樣可以提高效率;
 
      no_wdelay:若有寫操作則立即執行,應與sync配合使用;

      subtree_check(預設) :若輸出目錄是一個子目錄,則nfs伺服器將檢查其父目錄的許可權;
 
      no_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

  

 

 

轉載於:https://www.cnblogs.com/spll/p/9830522.html

相關文章