NFS(Network File System),網(wǎng)絡(luò)文件存儲(chǔ)系統(tǒng),它最早是由 Sun 公司開(kāi)發(fā)的,也是 FreeBSD 支持的文件系統(tǒng)中的一個(gè),它允許網(wǎng)絡(luò)中的計(jì)算機(jī)之間通過(guò)TCP/IP 網(wǎng)絡(luò)共享資源。通過(guò) NFS 協(xié)議,我們本地 NFS 的客戶端應(yīng)用可以透明的讀寫(xiě)位于服務(wù)端 NFS 服務(wù)器上的文件,就像訪問(wèn)本地文件一樣方便。簡(jiǎn)單的理解,NFS 就是可以透過(guò)網(wǎng)絡(luò),讓不同的主機(jī),不同的操作系統(tǒng)可以共享存儲(chǔ)的服務(wù)。
目前創(chuàng)新互聯(lián)建站已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機(jī)、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、常熟網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
NFS 在文件傳送或信息傳送過(guò)程中依賴 RPC(Remote Procedure Call)協(xié)議,即遠(yuǎn)程過(guò)程調(diào)用,NFS的各項(xiàng)功能都必須向 RPC 來(lái)注冊(cè),如此一來(lái) RPC 才能了解 NFS 這服務(wù)的各項(xiàng)功能 Port,PID,NFS 在服務(wù)器所監(jiān)聽(tīng)的 IP 等,而客戶端才能透過(guò) RPC 的詢問(wèn)找到正確對(duì)應(yīng)的端口,所以 NFS 必須要有 RPC 存在是才能成功的提供服務(wù),簡(jiǎn)單的理解二者關(guān)系:NFS 是一個(gè)文件存儲(chǔ)系統(tǒng),而 RPC 是負(fù)責(zé)信息的傳輸。
通過(guò)上面的簡(jiǎn)介,我們知道 NFS 服務(wù)需要依賴 RPC 服務(wù),所以這里 NFS 服務(wù)端需要安裝 rpcbind 和 nfs-utils ,客戶端只需要安裝 nfs-utils 即可,由于我們選用 CentOS 系統(tǒng),所以可以使用 yum 快速的安裝。
然后安裝 NFS 服務(wù)
另:Ubuntu 16.04 安裝命令
我們?cè)诜?wù)端創(chuàng)建一個(gè)共享目錄 /data/share ,作為客戶端掛載在遠(yuǎn)端入口,然后設(shè)置權(quán)限
然后,修改 NFS 配置文件 /etx/exports
說(shuō)明一下,這里配置后邊有很多參數(shù),每個(gè)參數(shù)有不同的含義,具體可以參考下邊。此處,我配置了將 /data/share 文件目錄設(shè)置為允許IP為 192.168.0.0/24 區(qū)間的客戶端掛載。然后,如果客戶端IP不在該區(qū)間也想要掛載的話,可以設(shè)置IP區(qū)間更大或者設(shè)置為 * 即允許所有客戶端掛載,例如: /home *(ro, sync,insecure,no_root_squash) 設(shè)置 /home 目錄允許所有客戶端只讀掛載。
接下來(lái),我們先啟動(dòng) RPC 服務(wù)
我們發(fā)現(xiàn),啟動(dòng)了 NFS 服務(wù)后,RPC 注冊(cè)的端口列表明顯增多。現(xiàn)在服務(wù)端都啟動(dòng)起來(lái)了,在服務(wù)端看下是否正確加載了設(shè)置的 /etc/exports 配置
最后,在另一臺(tái)Linux虛擬機(jī)上測(cè)試一下,是否能夠正確掛載。首先,我們可以在客戶端查看下NFS服務(wù)端設(shè)置可共享的目錄信息
然后,在客戶端創(chuàng)建掛載目錄/share
最后,掛載遠(yuǎn)端目錄到本地 /share 目錄
可以看到,可以正確將遠(yuǎn)端 NFS 目錄掛載到本地。注意:掛載點(diǎn) /share 目錄必須已經(jīng)存在,而且目錄中沒(méi)有文件或子目錄
最后,我們?cè)?NFS 服務(wù)端 /data/share 目錄下創(chuàng)建一個(gè)文件,看下客戶端能否正確讀取并修改
都可以了,這里因?yàn)樯厦嬖O(shè)置了 NFS 遠(yuǎn)端目錄權(quán)限為 rw 擁有讀寫(xiě)權(quán)限,如果設(shè)置為 ro ,那么客戶端只能讀取,不能寫(xiě)入。根據(jù)實(shí)際應(yīng)用場(chǎng)景合理配置。
NFS 默認(rèn)使用 UDP協(xié)議進(jìn)行掛載,為了提供 NFS 的穩(wěn)定性,可以使用 TCP 協(xié)議掛載,那么客戶端掛載命令如下:
最后,卸載命令
NFS(Network File System)即網(wǎng)絡(luò)文件系統(tǒng),是FreeBSD支持的文件系統(tǒng)中的一種,它允許網(wǎng)絡(luò)中的計(jì)算機(jī)之間共享資源。在NFS的應(yīng)用中,本地NFS的客戶端應(yīng)用可以透明地讀寫(xiě)位于遠(yuǎn)端NFS服務(wù)器上的文件,就像訪問(wèn)本地文件一樣。
NFS最顯而易見(jiàn)的優(yōu)點(diǎn):
1、節(jié)省本地存儲(chǔ)空間,將常用的數(shù)據(jù)存放在一臺(tái)NFS服務(wù)器上且可以通過(guò)網(wǎng)絡(luò)訪問(wèn),那么本地終端將可以減少自身存儲(chǔ)空間的使用。
2、用戶不需要在網(wǎng)絡(luò)中的每個(gè)機(jī)器上都建有Home目錄,Home目錄可以放在NFS服務(wù)器上且可以在網(wǎng)絡(luò)上被訪問(wèn)使用。
3、一些存儲(chǔ)設(shè)備如軟驅(qū)、CDROM和Zip(一種高儲(chǔ)存密度的磁盤(pán)驅(qū)動(dòng)器與磁盤(pán))等都可以在網(wǎng)絡(luò)上被別的機(jī)器使用。這可以減少整個(gè)網(wǎng)絡(luò)上可移動(dòng)介質(zhì)設(shè)備的數(shù)量。
擴(kuò)展資料:
NFS 有很多實(shí)際應(yīng)用。下面是比較常見(jiàn)的四點(diǎn):
1、多個(gè)機(jī)器共享一臺(tái)CDROM或者其他設(shè)備。這對(duì)于在多臺(tái)機(jī)器中安裝軟件來(lái)說(shuō)更加便宜跟方便。
2、在大型網(wǎng)絡(luò)中,配置一臺(tái)中心 NFS 服務(wù)器用來(lái)放置所有用戶的home目錄可能會(huì)帶來(lái)便利。這些目錄能被輸出到網(wǎng)絡(luò)以便用戶不管在哪臺(tái)工作站上登錄,總能得到相同的home目錄。
3、不同客戶端可在NFS上觀看影視文件,節(jié)省本地空間。
4、在客戶端完成的工作數(shù)據(jù),可以備份保存到NFS服務(wù)器上用戶自己的路徑下。
NFS是運(yùn)行在應(yīng)用層的協(xié)議。隨著NFS多年的發(fā)展和改進(jìn),NFS既可以用于局域網(wǎng)也可以用于廣域網(wǎng),且與操作系統(tǒng)和硬件無(wú)關(guān),可以在不同的計(jì)算機(jī)或系統(tǒng)上運(yùn)行。
參考資料來(lái)源:
百度百科-NFS
百度百科-linux
nfs語(yǔ)法參數(shù)解釋
(1) nfs共享目錄:是NFS服務(wù)器需要共享出去的實(shí)際目錄,文件夾,必須寫(xiě)絕對(duì)路徑,且注意目錄的讀寫(xiě)本地權(quán)限,如果你允許客戶端讀寫(xiě)操作,other需要有一個(gè)讀寫(xiě)的權(quán)限(user,group,other三個(gè)身份)
(2) NFS客戶端地址,也就是NFS服務(wù)端授權(quán)可以訪問(wèn)共享目錄的地址,可以寫(xiě)主機(jī)名,可以寫(xiě)通配符,ip地址
(3) 權(quán)限參數(shù),對(duì)NFS授權(quán)的客戶端,進(jìn)行權(quán)限控制的參數(shù),詳細(xì)見(jiàn)下面的案例
nfs客戶端地址形式
單一客戶端 192.168.178.120 用的很少
允許整個(gè)網(wǎng)段訪問(wèn) 192.168.178.0/24 指定局域網(wǎng)網(wǎng)段,用的還是很多的
授權(quán)整個(gè)域名客戶端 nfs.yu.com 用的很少
授權(quán)子域名客戶端 *.yu.com 用的很少
nfs客戶端的權(quán)限參數(shù)
ro 只讀
rw 讀寫(xiě)
root_squash 當(dāng)nfs客戶端以root賬號(hào)訪問(wèn)NFS服務(wù)端共享目錄數(shù)據(jù)的時(shí)候,把該root映射為NFS服務(wù)端的一個(gè)匿名用戶,該用戶的UID,GID會(huì)變成nfsnobody的信息
no_root_squash 幾乎和上面一樣,root賬號(hào)會(huì)映射為root賬戶,非常不安全,禁用
all_squash 所有nfs客戶端的用戶都映射為匿名用戶,很安全,生產(chǎn)環(huán)境常用
sync 數(shù)據(jù)同步寫(xiě)入到內(nèi)存和磁盤(pán),優(yōu)點(diǎn)是保證內(nèi)存數(shù)據(jù)安全,但是效率太低
async 數(shù)據(jù)先寫(xiě)入到內(nèi)存,再持久化到磁盤(pán),效率非常高,但是可能會(huì)有數(shù)據(jù)丟失的隱患
最近做了一個(gè)文件的異地備份,采用網(wǎng)絡(luò)掛載的方式,效果比之前用sync拷貝要方便的多。
也比之前簡(jiǎn)單的多,其實(shí)也就是幾件事情。
首先是,需要備份的服務(wù)器和備份的服務(wù)器都裝上nfs。
yum?install?nfs-utils
有的可能還需要單獨(dú)安裝一下rpcbind
那就
yum?install?rpcbind
接著在被掛載服務(wù)器編寫(xiě)配置文件
vim? /etc/exports
/root/work 192.168.0.3(rw,no_root_squash,no_all_squash,async)
/root/work 192.168.0.16(rw,no_root_squash,no_all_squash,async)
如像這樣,授權(quán)了本地的/root/work?目錄可以被兩個(gè)服務(wù)器訪問(wèn),權(quán)限是讀寫(xiě)(rw)
這一部分就完成了。
接下來(lái)是需要備份的服務(wù)器:
安裝玩nfs以后,在/mnt目錄下建一個(gè)目錄(通常都是在這個(gè)目錄下,別問(wèn)為什么?問(wèn)就是通用習(xí)慣。)
cd? /mnt
mkdir backserver
這就完成了目錄創(chuàng)建
接著也是最重要的一步
mount -t nfs 192.168.0.18:root/work/backup /mnt/backserver/
這條命令的意思是掛載192.168.0.18:root/work/backup目錄到本機(jī)的/mnt/backserver/
-t?是指定掛載類(lèi)型,nfs,就是網(wǎng)絡(luò)文件系統(tǒng)的簡(jiǎn)稱(chēng)。
這樣之后,本機(jī)的/mnt/backserver/存的文件實(shí)際上是存在192.168.0.18:root/work/backup目錄下的。
接下來(lái)就是一個(gè)見(jiàn)的文件拷貝命令。
rsync -avz /usr/local/nginx /usr/local/tomcat? /mnt/backserver/09back
就把文件備份到192.168.0.18:root/work/backup目錄下了。
實(shí)現(xiàn)自動(dòng)備份就更簡(jiǎn)單了,直接把剛才的命令寫(xiě)入shell腳本
保存為backup.sh
然后加入系統(tǒng)定時(shí)計(jì)劃
crontab -e
30 3 * * * sh /root/work/work/backup.sh
意思是每天三點(diǎn)執(zhí)行一次腳本,就完成了自動(dòng)異地備份。
整個(gè)過(guò)程還是很簡(jiǎn)答的,其中涉及一個(gè)cs的模式。
需要知道:
1,是客戶端掛載到服務(wù)端。
2,服務(wù)端需要授予客戶端訪問(wèn)權(quán)限。
網(wǎng)頁(yè)標(biāo)題:linux中的nfs命令 Linux NFS
網(wǎng)站地址:http://chinadenli.net/article32/hgojpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、網(wǎng)站收錄、Google、網(wǎng)站排名、用戶體驗(yàn)、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)