您好,登錄后才能下訂單哦!
一分鐘帶你了Linux NFS機(jī)制的工作原理?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。
什么是NFS
network file system 網(wǎng)絡(luò)文件系統(tǒng)
通過網(wǎng)絡(luò)存儲(chǔ)和組織文件的一種方法或機(jī)制。
為什么要用NFS
前端所有的應(yīng)用服務(wù)器接收到用戶上傳的圖片、文件、視頻,都會(huì)統(tǒng)一放到后端的存儲(chǔ)上。
共享存儲(chǔ)的好處:方便數(shù)據(jù)的查找與取出,缺點(diǎn):存儲(chǔ)服務(wù)器壓力大,壞了丟失全部數(shù)據(jù)。
NFS工作原理
NFS功能,有很多服務(wù),每個(gè)服務(wù)都有自己的端口,并且經(jīng)常變換。
客戶端查找這些端口,就需要一個(gè)中間人---RPC服務(wù)(默認(rèn)端口號(hào)111)。
工作流程:
1.啟動(dòng)RPC服務(wù)
2.啟動(dòng)NFS服務(wù)(同時(shí)向RPC服務(wù)注冊(cè)啟動(dòng)的端口)
3.客戶端向RPC請(qǐng)求NFS服務(wù)
4.RPC返回端口到客戶端
5.客戶端用返回的端口地址向NFS請(qǐng)求傳輸數(shù)據(jù)。
安裝NFS服務(wù)
安裝:yum install nfs-utils rpcbind
查看:rpm -qa nfs-utils rpcbind
開啟服務(wù)并設(shè)置開機(jī)自啟:systemctl start rpcbind.service systemctl enable rpcbind.service
systemctl start nfs systemctl enable nfs
配置NFS
nfs配置文件 /etc/exports
執(zhí)行命令man exports 找到其中的:
配置文件的格式:
要共享的目錄 訪問的主機(jī)(權(quán)限)
①要共享的目錄:存取數(shù)據(jù)的目錄
②訪問的主機(jī):?jiǎn)蝹€(gè)主機(jī):172.16.1.7或主機(jī)名 網(wǎng)段:172.16.1.0/24或172.16.1.*
③權(quán)限:rw 可讀 ro 只讀 sync 寫到遠(yuǎn)端磁盤(慢,安全) async 異步寫到遠(yuǎn)端緩沖區(qū)(快,不安全)
root_squash anonuid=匿名用戶的UID anongid=匿名用戶的GID
all_squash 無(wú)論客戶端是什么用戶,到服務(wù)端都當(dāng)做nfsnobody
[root@nfs01 ~]# vim /etc/exports
注:一個(gè)目錄可同時(shí)給多個(gè)主機(jī)共享,如上圖test。注意小括號(hào)和前面的字符中間沒有空格。
創(chuàng)建目錄:[root@nfs01 ~]# mkdir -p /data
nfs的默認(rèn)用戶是nfsnobody,所以要對(duì)目錄進(jìn)行授權(quán):[root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data
重啟NFS:[root@nfs01 ~]# systemctl reload nfs 或者 exportfs -r (平滑重啟)
檢查:
打開web01虛擬機(jī),安裝rpc和nfs服務(wù)(原則上客戶端只安裝rpc即可,我們這里是為了測(cè)試showmount命令)
掛載共享目錄,并創(chuàng)建文件測(cè)試
關(guān)于一分鐘帶你了Linux NFS機(jī)制的工作原理問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。