nfs,是network file system的簡寫,即網路檔案系統。網路檔案系統是freebsd支援的檔案系統中的一種,也被稱為nfs; nfs允許乙個系統在網路上與他人共享目錄和檔案。
nfs伺服器可以讓pc將網路中的nfs伺服器共享的目錄掛載到本地端的檔案系統中,而在本地端的系統中來看,那個遠端主機的目錄就好像是自己的乙個磁碟分割槽一樣,在使用上相當便利;
模式: c/s 模式
埠:
nfs是net file system的簡寫,即網路檔案系統.nfs通常執行於2049埠。
由於在使用nfs服務進行檔案共享之前,需要使用rpc(remote procedure call,遠端過程呼叫)服務將nfs伺服器的ip位址和埠號等資訊傳送給客戶端。因此,在啟動nfs服務之前,還需要順帶重啟並啟用rpcbind服務程式。
首先伺服器端先將自己要共享的檔案和要共享給的ip指定,例如我們在nfs伺服器設定好乙個共享目錄/home/public後,其他的有權訪問nfs伺服器的nfs客戶端就可以將這個目錄掛載到自己檔案系統的某個掛載點,這個掛載點可以自己定義,至於客戶端對於這個檔案的許可權(唯讀或者讀寫等)是在伺服器端進行設定的。下面我們來詳細的說一下流程:
要部署nfs服務,必須安裝下面兩個軟體包:nfs-utils:nfs主程式 |rpcbind:prc主程式;
既然nfs是通過網路來進行伺服器端和客戶端之間的資料傳輸,那麼兩者之間要傳輸資料就要有想對應的網路埠,nfs本身是沒有提供資訊傳輸的協議和功能的,那麼客戶端又是如何知道nfs伺服器端到底使用的是哪個埠呢?這時就需要通過遠端過程呼叫(remote procedure call,rpc)協議來實現了!
所以要安裝 nfs 的同時也要安裝 rpc,rpcbind是乙個rpc服務,主要是在nfs共享時候負責通知客戶端,伺服器的nfs埠號的。簡單理解rpc就是乙個中介服務。
[root@songqi ~]# yum install rpcbind nfs-utils -y
第二步、配置檔案
進入nfs 的配置檔案 /etc/exports
[root@localhost ~]# vim /etc/exports1 /songqi 192.168.5.3(rw) 192.168.5.4(rw) 192.168.5.99(rw)
/songqi 表示共享的檔案,rw表示所賦予的許可權
/data *(rw) 表示給所有的ip共享vim
/data 192.168.10.0/24(rw) 把網段共享出去 24表示掩碼
nfs也可以共享多個目錄
/ken 192.168.64.5(rw)
/test 192.168.64.7(rw)
()裡的引數可以有
rw表示可讀寫
roread-only表示只能讀許可權
sync
請求或者寫入資料時,資料同步寫入到nfs server的硬碟中後才會返回
no_root_squas
訪問nfs server共享目錄的使用者如果是root的話,它對該目錄具有root許可權。這個配置原本為無盤使用者準備的。使用者應避免使用!
root_squash
對於訪問nfs server共享目錄的使用者,如果是root的話會被壓縮成為nobody使用者身份。
all_squash
不管訪問nfs server共享目錄的使用者身份如何包括root,它的許可權都將被壓縮成為匿名使用者,同時他們的udi和gid都會變成nobody或nfsnobody賬戶的uid,gid。在多個nfs客戶端同時讀寫nfs server資料時,這個引數很有用可以確保大家寫入的資料的許可權是一樣的。
但不同系統有可能匿名使用者的uid,gid不同。因為此處我們需要服務端和客戶端之間的使用者是一樣的。比如說:服務端指定匿名使用者的uid為2000,那麼客戶端也一定要存在2000這個賬號才可以
anonuid
anonuid就是匿名的uid和gid。說明客戶端以什麼許可權來訪問服務端,在預設情況下是nfsnobody。uid65534.
anongid
同anongid,就是把uid換成gid而已
第三步 更改屬主屬組
客戶端訪問服務端預設是使用nfsnobody這個使用者來進行訪問的
[root@songqi ~]# chown -r nfsnobody: /songqi
第四步 重啟rpcbind、nfs服務
在centos7裡,nfs服務依賴於rpcbind服務,故應在rpcbind服務啟動成功後再啟動nfs服務。
[root@songqi ~]# systemctl restart rpcbind[root@songqi ~]# systemctl restart nfs
第五步 客戶端掛載使用
在客戶端上不能直接使用服務端共享的目錄,就像一塊磁碟必須接到電腦上才能使用一樣嗎,必須要掛載在客戶端的本地檔案上
[root@host1 ~]# showmount -e 172.20.10.6#檢視共享(後面加的ip位址是服務端ip)
export list
for192.168.5.2
:/songqi 192.168.5.0/24 #192.168.5.0網段的主機均可以獲取共享檔案
[root@host1 ~]# mkdir /test #建立掛載目錄
[root@host1 ~]# mount -t nfs 192.168.5.2
:/songqi /test #將服務端/songqi掛載到客戶端的/test
[root@host1 ~]# mkdir /test/ken #測試是否共享成功
NFS網路檔案系統
一 samba伺服器與nfs伺服器的區別 samba伺服器用於建立windows與linux虛擬機器之間的檔案共享.nfs伺服器用於建立linux虛擬機器與arm嵌入式系統之間的檔案共享.二 nfs網路檔案系統的建立 1 在linux虛擬機器下執行選單 系統設定 伺服器設定 nfs伺服器,開啟nfs...
NFS 網路檔案系統
1.nfs network filesystem 網路檔案系統 讓不同的機器,不同的os在網路上共享目錄和檔案。通過nfs,使用者和程式可以象訪問本地檔案一樣訪問遠端系統上的檔案。4.配置nfs 共享的nfs目錄在 etc exports中列出,這個檔案控制對目錄的共享。書寫規則是 共享目錄 主機 ...
網路檔案系統NFS
1 介紹 network file system,由sun公司在1984年開發,目前nfs被普遍使用。nfs4.0以前的版本在效能上存在瓶頸,nfs4.1已經是pnfs了,即並行nfs?目的是在安裝unix計算機之間實現磁碟檔案共享,構建於ip協議之上,是標準的c s架構,nfs伺服器輸出 expo...