1.2.1 nfs系統掛載結構**與介紹
下圖是企業工作中的nfs伺服器與客戶端掛載情況結構圖
客戶端掛載nfs後,本地掛載基本資訊顯示如下:
[root@nfs01 ~]# df -h
filesystem size used use% mounted on
/dev/sda1 1.1t 467g 544g 47% /
tmpfs 7.9g 0 7.9g 0% /dev/shm
10.0.0.7:/video 1002g 59g 892g 7% /video #<==10.0.0.7為nfsserver的ip位址
mount 10.0.0.7:/video /video
1.2.2 什麼是rpc(remote procedure call)
1.2.3 nfs的工作流程原理
當訪問程式通過nfs客戶端向nfs服務端訪問檔案時,其請求資料流程大致如下:
1)首先使用者訪問**程式,由程式在nfs客戶端上發出訪問nfs檔案的請求,這時nfs客戶端(即執行程式的伺服器)的rpc服務(rpcbind服務)就會通過網路向nfs伺服器端的rpc服務(rpcbind服務)的111埠發出nfs檔案訪問功能的詢問請求。
2)nfs服務端的rpc服務(rpcbind服務)找到對應的已註冊的nfs埠後,通知nfs客戶端的rpc服務(rpcbind服務)
3)此時nfs客戶端獲取到正確的埠,並與nfs daemon聯機訪問資料
4)nfs客戶端把資料訪問成功後,返回給前端訪問程式,告知給使用者訪問結果,作為**使用者,就完成了一次訪問操作。
因為nfs的各項功能都需要向rpc服務(rpcbind服務)註冊,所以只有rpc服務(rpcbind服務)才能獲取到nfs服務的各項功能對應的埠號(port number),pid,nfs在主機所監聽的ip等資訊,而nfs客戶端也只能通過向rpc服務(rpcbind服務)詢問才能找到正確的埠。也就是說,nfs需要有rpc服務(rpcbind服務)的協助才能成功對外提供服務。從上面的描述,我們不難推斷,無論是nfs客戶端還是nfs伺服器端,當要使用nfs時,都需要首先啟動rpc服務(rpcbind服務),nfs服務必須在rpc服務啟動之後啟動,客戶端無需啟動nfs服務,但需要啟動rpc服務。
nfs伺服器搭建
yum install -y nfs-utils rpcbind
rpm -ql nfs-utils
/etc/rc.d/init.d/nfs
/usr/sbin/showmount
rpm -ql rpcbind
/etc/rc.d/init.d/rpcbind
/usr/sbin/rpcbind
[root@nfs01 ~]# vim /etc/exports
/data 172.16.1.0/24(rw,sync)
說明:配置檔案資訊 指定共享目錄 指定共享目錄訪問控制網段或主機資訊(共享目錄引數資訊)
mkdir /data
chown -r nfsnobody.nfsnobody /data
啟動nfs和rpc服務
/etc/init.d/rpcbind start
/etc/init.d/nfs start
進行服務配置檢查
先檢查**資訊是否註冊
rpcbind -p 172.16.1.31
檢查是否存在可用的共享目錄
[root@nfs01 ~]# showmount -e 10.0.0.31
export list for 10.0.0.31:
/data 172.16.1.0/24
nfs客戶端部署流程:
第二個里程:進行軟體服務安裝
yum install -y nfs-utils rpcbind
第三個里程:進行共享目錄掛載
[root@web02 ~]# mount -t nfs 172.16.1.31:/data /mnt
[root@web02 ~]# df -h
rwread-write,表示可讀寫許可權
roread-only,表示唯讀許可權
sync
(同步,實時)請求或吸入資料時,資料同步寫入到nfs server的硬碟後才返回
async
(非同步)寫入時資料會先寫到記憶體緩衝區,只到硬碟有空檔才會寫入磁碟,這樣可以提公升寫入速率!風險為若伺服器掛掉或不正常關機,會損失緩衝區中未寫入磁碟的資料
no_root_squash
訪問nfs server共享目錄的使用者如果是root,它對該共享目錄具有root許可權。
root_squash
如果訪問目錄的是root,則它的許可權將被壓縮成匿名使用者。
all_squash
不管訪問共享目錄的使用者身份如何,它的許可權都被壓縮成匿名使用者。
anonuid
指定共享資料夾裡檔案所有者的uid號:例如:(rw,squash,anonuid=12306,anongid=12306)
anongid
指定共享資料夾裡檔案所有者的gid號:例如:(rw,squash,anonuid=12306,anongid=12306)
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...