NFS網路檔案系統

2022-03-11 04:42:58 字數 2949 閱讀 2472

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...