NFS存儲(chǔ)服務(wù)部署

第1章 NFS介紹

1.1 NFS服務(wù)內(nèi)容的概述

□ RPC服務(wù)知識(shí)概念介紹說(shuō)明徙赢,以及RPC服務(wù)存在價(jià)值(必須理解掌握)

□ NFS服務(wù)工作原理講解(必須理解掌握)

□ NFS共享文件系統(tǒng)使用原理講解(必須理解掌握)

□ NFS服務(wù)配罝文件exports編寫(xiě)格式說(shuō)明(必須理解掌握)

1.2 NFS是什么

NFS(Network File System)即網(wǎng)絡(luò)文件系統(tǒng)

?? 它的主要功能是通過(guò)網(wǎng)絡(luò)(一般是局域網(wǎng))讓不同的主機(jī)系統(tǒng)之間可以共享文件或目錄。

?? 分布式文件系統(tǒng)Moosefs(mfs)\glusterFS

1.2.1 NFS的qudian

nfs屬于本地文件存儲(chǔ)服務(wù)

?? 缺點(diǎn)一:

??? winndows上無(wú)法使用

?? 缺點(diǎn)二:

在高并發(fā)場(chǎng)景探越,以及存儲(chǔ)量比較高的場(chǎng)景,對(duì)數(shù)據(jù)安全性要求比較高場(chǎng)景

??????? 需要采用分布式儲(chǔ)存(mfs ?FastDFS)

??????? 分布式文件系統(tǒng):無(wú)法在服務(wù)器中看到真實(shí)的文件信息

1.2.2 實(shí)現(xiàn)Windows與linux系統(tǒng)文件數(shù)據(jù)共享方法

??????? a.ftp(ftp服務(wù)部署)

??????? b.samba服務(wù)???

1.3 NFS共享網(wǎng)絡(luò)文件系統(tǒng)企業(yè)應(yīng)用

主要用于存儲(chǔ)web服務(wù)器上用戶上傳的數(shù)據(jù)信息狡赐,圖片 附件 頭像 視頻 音頻

1.4 NFS文件系統(tǒng)存在意義


1.4.1 實(shí)現(xiàn)的不同方法

軟件實(shí)現(xiàn):

本地文件系統(tǒng)NFS? 分布式文件系統(tǒng) mfs

硬件實(shí)現(xiàn):

IBM (服務(wù)器 小型機(jī) 大型機(jī) 存儲(chǔ) DS V7000 V5000) oracle EMC = 去IOE

1.5 NFS 網(wǎng)絡(luò)文件系統(tǒng)工作方式

?在nfs服務(wù)端創(chuàng)建共享目錄

?通過(guò)mount 網(wǎng)路掛載,將NFS客戶端本地目錄掛載到NFS服務(wù)端共享目錄上

?NFS客戶端掛載目錄上創(chuàng)建钦幔、刪除枕屉、查看數(shù)據(jù)操作,等價(jià)于在服務(wù)端進(jìn)行的創(chuàng)建鲤氢、刪除搀擂、查看數(shù)據(jù)操作


如圖10-5所示,在 NFS服務(wù)器端設(shè)置好一個(gè)共享目錄 /video后卷玉,其他有權(quán)限訪問(wèn) NFS服務(wù)器端的客戶端都可以將這個(gè)共享目錄 /video掛載到客戶端本地的某個(gè)掛載點(diǎn)(其實(shí)就是一個(gè)目錄哨颂,這個(gè)掛載點(diǎn)目錄可以自己隨意指定),圖10-5中的兩個(gè) NFS客戶端本地的掛載點(diǎn)分別為/ v/video和/video ,不同客戶端的掛載點(diǎn)可以不相同相种。

客戶端正確掛載完畢后咆蒿,就可以通過(guò) NFS客戶端的掛載點(diǎn)所在的/v/video或 /video目錄查看

到 NFS服務(wù)器端 /video共享出來(lái)的目錄下的所有數(shù)據(jù)。在客戶端上查看時(shí) 蚂子,NFS服務(wù)器端的 /video目錄就相當(dāng)于客戶端本地的磁盤(pán)分區(qū)或目錄,幾乎感覺(jué)不到使用上的區(qū)別缭黔,根據(jù) NFS服務(wù)器端授予 的 NFS共享權(quán)限以及共享目錄的本地系統(tǒng)權(quán)限食茎,只要在指定的 NFS客戶端操作掛載/ v/video或/video的目錄,就可以將數(shù)據(jù)輕松地存取到NFS服務(wù)器端上的/video目錄中了馏谨。

1.6 NFS網(wǎng)絡(luò)文件系統(tǒng)重點(diǎn)要了解兩個(gè)重要服務(wù)

?RPC服務(wù)

???? ??NFS服務(wù)

1.6.1 NFS工作流程圖



1.6.2 RPC服務(wù)工作原理


1.6.3 NFS詳細(xì)的訪問(wèn)

當(dāng)訪問(wèn)程序通過(guò)NFS客戶端向NFS服務(wù)器存取文件時(shí)别渔,其請(qǐng)求數(shù)據(jù)流程大致如下:

01.首先用戶訪間網(wǎng)站程序,由程序在NFS客戶端上發(fā)出存取NFS文件的請(qǐng)求惧互,這時(shí)NFS客戶端(即執(zhí)行程序的服務(wù)器)的RPC服務(wù)(rpcbind服務(wù))就會(huì)通過(guò)網(wǎng)絡(luò)向NFS服務(wù)器端的RPC服務(wù)(rpcbind服務(wù))的111端口發(fā)出NFS文件存取功能的詢(xún)間請(qǐng)求.

02.NFS服務(wù)器端的RPC服務(wù)(rpcbind服務(wù))找到對(duì)應(yīng)的已注冊(cè)的NFS端口后哎媚,通知NFS客戶端的RPC服務(wù)(rpcbind服務(wù))。

03.此時(shí)NFS客戶端獲取到正確的端口,并與NFS daemon聯(lián)機(jī)存取數(shù)據(jù)

04.NFS客戶端把數(shù)據(jù)存取成功后喊儡,返回給前端訪間程序拨与,告知用戶存取結(jié)果,作為網(wǎng)站用戶艾猜,就完成了一次存取操作买喧。

?? 因?yàn)镹FS的各項(xiàng)功能都需要向RPC服務(wù)(rpcbind服務(wù))注冊(cè)捻悯,所以只有RPC服務(wù)才能獲取到NFS服務(wù)的各項(xiàng)功能對(duì)應(yīng)的端口號(hào)(port number)、PID淤毛、NFS在主機(jī)所監(jiān)聽(tīng)的IP等信息今缚,而NFS客戶端也只能通過(guò)向RPC服務(wù)詢(xún)問(wèn)才能找到正確的端□。也就是說(shuō)低淡,NFS需要有RPC服務(wù)的協(xié)助才能成功對(duì)外提供服務(wù)姓言。從上面的描述,我們不難推斷蔗蹋,無(wú)論是NFS客戶端還是NFS服務(wù)器端何荚,當(dāng)要使用NFS時(shí),都需要首先啟動(dòng)RPC服務(wù)纸颜,NFS服務(wù)必須在RPC服務(wù)啟動(dòng)之后啟動(dòng)兽泣,客戶端無(wú)需啟動(dòng)NFS服務(wù),但需要啟動(dòng)RPC服務(wù)胁孙。

第2章 實(shí)踐操作NFS 服務(wù)

2.1 進(jìn)行服務(wù)器架構(gòu)規(guī)劃

NFS服務(wù)器部署角色I(xiàn)P

服務(wù)器系統(tǒng)

角色

IP

CentOS release 6.9 (Final)

NFS服務(wù)器端(NFS-Sever)

10.0.0.31

CentOS release 6.9 (Final)

NFS客戶端1(NFS-Client1)

10.0.0.8

CentOS release 6.9 (Final)

NFS客戶端2(NFS-Client2)

10.0.0.41

2.2 NFS服務(wù)端部署過(guò)程

2.2.1 第一個(gè)里程碑-確認(rèn)軟件是否已經(jīng)安裝唠倦,安裝NFS服務(wù)相關(guān)軟件

? rpm -qa|grep nfs

? rpm -qa|grep rpc

安裝rpcbind nfs-utils服務(wù)程序,并進(jìn)行驗(yàn)證安裝是否成功

? yum install -y nfs-utils rpcbind

? rpm -qa nfs-utils rpcbind


2.2.2 第二個(gè)里程碑-編寫(xiě)nfs配置文件

? nfs配置文件默認(rèn)存在/etc/exports

? vim /etc/exports

? #share /data by oldboy for share at 20170220

? /data?? 172.16.1.0/24(rw,sync)?

/etc/exports文件說(shuō)明:

第一部分:/data????????? ??--指定共享目錄信息

第二部分:172.16.1.0/24? --指定了一個(gè)網(wǎng)段信息涮较,表示允許指定的網(wǎng)段主機(jī)掛載到我本地的共享目錄上

第三部分:(rw,sync)?????? --表示定義共享參數(shù)信息稠鼻,

?????????? ??rw???? 表示讀寫(xiě),對(duì)共享目錄設(shè)置的權(quán)限

???????????? sync?? 同步狂票,數(shù)據(jù)會(huì)先寫(xiě)入到NFS服務(wù)器內(nèi)存中候齿,會(huì)立刻同步到磁盤(pán)里面==直接存儲(chǔ)硬盤(pán)中

2.2.3 第三個(gè)里程碑:創(chuàng)建共享目錄,進(jìn)行權(quán)限設(shè)定

? mkdir /data -p

? chown -R nfsnobody.nfsnobody /data

說(shuō)明:

NFS共享目錄管理用戶為nfsnobody闺属,此用戶不用創(chuàng)建慌盯,安裝nfs軟件時(shí)會(huì)自動(dòng)創(chuàng)建

2.2.4 第四個(gè)里程碑:?jiǎn)?dòng)服務(wù)(注意順序)

?? 首先,啟動(dòng)rpc服務(wù)

/etc/init.d/rpcbind start

?? 其次掂器,啟動(dòng)nfs服務(wù)

/etc/init.d/nfs start

? rpcbind服務(wù)啟動(dòng)信息查看

? [root@nfs01 ~]# ps -ef|grep rpcbind

? rpc??????? 4050????? 1? 0 10:55 ???????? 00:00:00 rpcbind

? root?????? 4054?? 3878? 0 10:55 pts/1??? 00:00:00 grep --color=auto rpcbind

? [root@nfs01 ~]# netstat -lntup|grep 111

? tcp??????? 0????? 0 0.0.0.0:111???????????????? 0.0.0.0:*?????????????????? LISTEN????? 4050/rpcbind???????

? tcp??????? 0????? 0 :::111????????????????????? :::*??????????????????????? LISTEN????? 4050/rpcbind???????

? udp??????? 0????? 0 0.0.0.0:111 ????????????????0.0.0.0:*?????????????????????????????? 4050/rpcbind???????

? udp??????? 0????? 0 :::111????????????????????? :::*??????????????????????????????????? 4050/rpcbind???????

? [root@nfs01 ~]# rpcinfo -p localhost

?? program vers proto?? port ?service

??? 100000??? 4?? tcp??? 111? portmapper

??? 100000??? 3?? tcp??? 111? portmapper

??? 100000??? 2?? tcp??? 111? portmapper

??? 100000??? 4?? udp??? 111? portmapper

??? 100000??? 3?? udp??? 111? portmapper

??? 100000??? 2?? udp??? 111? portmapper

??nfs啟動(dòng)后查看信息

[root@nfs01 ~]# rpcinfo -p localhost

?? program vers proto?? port? service

??? 100000??? 4?? tcp??? 111? portmapper

??? 100000??? 3?? tcp??? 111? portmapper

??? 100000??? 2?? tcp??? 111? portmapper

??? 100000??? 4?? udp??? 111? portmapper

??? 100000??? 3?? udp??? 111? portmapper

??? 100000??? 2?? udp??? 111? portmapper

??? 100024??? 1?? udp? 28467? status

??? 100024??? 1?? tcp? 56269? status

??? 100011??? 1?? udp??? 875? rquotad

??? 100011??? 2?? udp??? 875? rquotad

??? 100011??? 1?? tcp?? ?875? rquotad

??? 100011??? 2?? tcp??? 875? rquotad

??? 100005??? 1?? udp? 32886? mountd

??? 100005??? 1?? tcp?? 6154? mountd

??? 100005??? 2?? udp? 38339? mountd

??? 100005??? 2?? tcp? 60288? mountd

??? 100005??? 3?? udp? 49824? mountd

??? 100005??? 3?? tcp? 24427? mountd

??? 100003??? 2?? tcp?? 2049? nfs

??? 100003??? 3?? tcp?? 2049? nfs

??? 100003??? 4?? tcp?? 2049? nfs

??? 100227??? 2?? tcp?? 2049? nfs_acl

??? 100227??? 3?? tcp?? 2049? nfs_acl

??? 100003??? 2?? udp?? 2049? nfs

??? 100003??? 3?? udp?? 2049? nfs

??? 100003??? 4?? udp?? 2049? nfs

??? 100227??? 2?? udp?? 2049? nfs_acl

??? 100227??? 3?? udp?? 2049? nfs_acl

??? 100021??? 1?? udp? 61803? nlockmgr

??? 100021??? 3?? udp? 61803? nlockmgr

??? 100021??? 4?? udp? 61803? nlockmgr

??? 100021??? 1?? tcp?? 6064? nlockmgr

??? 100021??? 3?? tcp?? 6064? nlockmgr

??? 100021??? 4?? tcp?? 6064? nlockmgr

2.2.5 到此服務(wù)端部署配置完成

[root@nfs01 ~]# showmount -e 172.16.1.31

Export list for 172.16.1.31:

/data 172.16.1.0/24

NFS服務(wù)開(kāi)啟后亚皂,默認(rèn)的參數(shù)文件位置,注意:修改此文件,對(duì)nfs服務(wù)沒(méi)有任何影響

[root@nfs01 ~]# cat /var/lib/nfs/etab

/data? ? 172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,root_squash,all_squash)

2.3 NFS 客戶端部署

2.3.1 第一個(gè)里程碑:確認(rèn)軟件有沒(méi)有安裝,進(jìn)行nfs rpc 服務(wù)軟件安裝部署

yum install rpcbind nfs-utils -y

2.3.2 第二個(gè)里程碑:?jiǎn)?dòng)服務(wù)

提示:

rpcbind和nfs軟件都可以不啟動(dòng)

2.3.3 第三個(gè)里程碑: 檢查NFS服務(wù)端是否有可以進(jìn)行掛載的目錄

[root@nfs01 ~]# rpm -qf `which showmount`

nfs-utils-1.2.3-75.el6.x86_64

說(shuō)明:showmount使用理肺,需要安裝nfs-utils軟件

2.3.4 第四個(gè)里程碑:進(jìn)程nfs客戶端掛載

mount -t nfs 172.16.1.31:/data /mnt


[root@backup ~]# showmount -e 172.16.1.31

Export list for 172.16.1.31:

/data 172.16.1.0/24

[root@backup ~]# mount -t nfs 172.16.1.31:/data /mnt

說(shuō)明: 如果nfs軟件不安裝

??????? a 無(wú)法使用showmount 命令

??????? b 客戶端無(wú)法識(shí)別nfs 文件系統(tǒng)類(lèi)型

2.3.5 第五個(gè)里程碑: 進(jìn)行檢查測(cè)試

[root@backup ~]# df -h

Filesystem???????? Size? Used Avail Use% Mounted on

/dev/sda3?????????? 19G? 1.5G?? 17G?? 9% /

tmpfs????????????? 238M???? 0? 238M?? 0% /dev/shm

/dev/sda1????????? 190M?? 40M? 141M? 22% /boot

172.16.1.31:/data?? 19G? 1.5G?? 17G?? 9% /mnt

【測(cè)試】本地nfs客戶端 進(jìn)行增刪改數(shù)據(jù) 等價(jià)于 nfs服務(wù)端共享目錄操作

[root@backup mnt]# echo "test123">test.txt

[root@backup mnt]# ll test.txt

-rw-r--r-- 1 nfsnobody nfsnobody 8 Oct 13 11:28 test.txt

[root@nfs01 data]# cat test.txt

test123

第3章 知識(shí)深入

3.1 NFS服務(wù)相關(guān)進(jìn)程信息

3.1.1 簡(jiǎn)略說(shuō)明

rpcbind??????? rpc啟動(dòng)進(jìn)程 主進(jìn)程

rpc state???? ?檢查數(shù)據(jù)存儲(chǔ)的一致性

rpc.rquotad??? 磁盤(pán)配額

rpc.mountd???? 權(quán)限管理驗(yàn)證

nfsd??????????? NFS主進(jìn)程

rpc.idmapd???? 用戶壓縮映射

3.1.1 進(jìn)程/服務(wù) 詳細(xì)說(shuō)明

服務(wù)或進(jìn)程名

用途說(shuō)明

portmapper

rpcbind服務(wù)的進(jìn)程(centos5.x 上為 portmap軟件)

rquotad

磁盤(pán)配額進(jìn)程

nfs、nfs_acl

?? nfs服務(wù)進(jìn)程

nfsd (rpc.nfsd )

rpc.nfsd的主要功能是管理NFS客戶端是否能夠登入NFS服務(wù)器端主機(jī)禁漓,其中還包括含登入者的ID判別等。

mountd

rpc.mountd的主要功能則是管理NFS文件系統(tǒng)孵睬。當(dāng)NFS客戶端順利通過(guò)rpc.nfsd登入NFS服務(wù)器端主機(jī)時(shí)播歼,在使用NFS服務(wù)器提供數(shù)據(jù)之前,它會(huì)去讀NFS的配置文件/etc/exports來(lái)比對(duì)NFS客戶端的權(quán)限掰读,通過(guò)這一關(guān)之后荚恶,還要經(jīng)過(guò)NFS服務(wù)器端本地文件系統(tǒng)使用權(quán)限(就是owner撩穿、group、other權(quán)限)等認(rèn)證程序谒撼。如果都通過(guò)了食寡,NFS客戶端就可以取得使用NFS服務(wù)器端文件的權(quán)限。

注意:這個(gè)/etc/exports文件也是我們用來(lái)管理NFS共享目錄的使用權(quán)限與安全設(shè)置的地方廓潜,特別強(qiáng)調(diào)抵皱,NFS本身設(shè)置的是網(wǎng)絡(luò)共享權(quán)限,整個(gè)共享目錄的權(quán)限還和目錄自身的系統(tǒng)權(quán)限有關(guān)辩蛋。

rpc.lockd (非必要)

用來(lái)鎖定文件呻畸,用于多客戶端同時(shí)寫(xiě)入

rpc.statd (非必要)

檢查文件的一致性,與rpc.lockd有關(guān)悼院。c伤为、d兩個(gè)服務(wù)雲(yún)要客戶端,服務(wù)器端同時(shí)開(kāi)啟才可以据途;rpc.statd監(jiān)聽(tīng)來(lái)自其他主機(jī)重啟的通知绞愚,并且管理當(dāng)本地系統(tǒng)重啟時(shí)主機(jī)列表。

rpc.idmapd

表示用戶映射或用戶壓縮(重要)

3.2 /etc/exports配置文件說(shuō)明

3.2.1 /etc/exports文件說(shuō)明

□ NFS共享目錄:

為 NFS服務(wù)器端要共享的實(shí)際目錄颖医,要用絕對(duì)路徑位衩,如 (/data )。注意共享目錄的本地權(quán)限熔萧,如果需要讀寫(xiě)共享糖驴,一定要讓本地目錄可以被 NFS客戶端的用戶 (nfsnobody)讀寫(xiě)。

□ NFS客戶端地址:

為NFS服務(wù)器端授權(quán)的可訪問(wèn)共享目錄的NFS客戶端地址佛致,可以為單獨(dú)的IP地址或主機(jī)名贮缕、域名等,也可以為整個(gè)網(wǎng)段地址俺榆。還可以用來(lái)匹配所有客戶端服務(wù)器跷睦,這里所謂的客戶端一般來(lái)說(shuō)是前端的業(yè)務(wù)的業(yè)務(wù)服務(wù)器,例如:web服務(wù)肋演。

□權(quán)限參數(shù)集

對(duì)授權(quán)的NFS客戶端的訪問(wèn)權(quán)限設(shè)置。

nfs權(quán)限(共享目錄\借給你手機(jī))nfs配置的/ etc/exports /data 172.16.1.0/24(rw)

本地文件系統(tǒng)權(quán)限(\手機(jī)密碼不告訴你)掛載目錄的權(quán)限r(nóng)wxr- xr-x root root/data

3.2.2 指定 NFS客戶端地址的配置詳細(xì)說(shuō)明?

客戶端地址???????????

具體地址????????

說(shuō) 明

授權(quán)單一客戶端訪問(wèn)NFS

10.0.0.30

一般情況烂琴,生產(chǎn)環(huán)境中此配置不多

授權(quán)整個(gè)網(wǎng)段可訪問(wèn)NFS

10.0.0.0/24

其中的24等同于255.255.255.0 ,指定網(wǎng)段為生產(chǎn)環(huán)境中最常見(jiàn)的配置爹殊。配置簡(jiǎn)單,維護(hù)方便

授權(quán)整個(gè)網(wǎng)段可訪問(wèn)NFS

10.0.0.*

指定網(wǎng)段的另外寫(xiě)法(不推薦使用)

授權(quán)某個(gè)域名客戶端訪問(wèn)

nfs.oldboyedu.com

此方法生產(chǎn)環(huán)境中一般情況不常用

授權(quán)整個(gè)域名客戶端訪問(wèn)

*.oldboyedu.com

此方法生產(chǎn)環(huán)境中一般情況不常用

3.2.3 常見(jiàn)案例

常用格式說(shuō)明

要共享的目錄客戶端IP地址或IP段(參1,參2,)

配罝例一

/data10.0.0.0/24(ro,sync)

說(shuō)明:允許客戶端讀寫(xiě)奸绷,并且數(shù)據(jù)同步寫(xiě)入到服務(wù)器揣的磁盤(pán)里

注意:24和"("之間不能有空格

配置例二

/data10.0.0.0/24(rw,sync/all_squash,anonuid=2000,anongid=2000)

說(shuō)明:允許客戶揣讀寫(xiě)梗夸,并且數(shù)據(jù)同步寫(xiě)到服務(wù)器揣的磁盤(pán)里,并且指走客戶端

的用戶UID和GID号醉,早期生產(chǎn)環(huán)境的一種配罝反症,適合多客戶端共享一個(gè)NFS服務(wù)

單目錄辛块,如果所有服務(wù)器的nfsnobody賬戶UID都是65534,則本例沒(méi)什么必

要了.早期centos5.5的系統(tǒng)默認(rèn)情況下nfsnobody的UID不一定是65534,

此時(shí)如果這些服務(wù)器共享一個(gè)NFS目錄,就會(huì)出現(xiàn)訪問(wèn)權(quán)限問(wèn)題.

配置例三

/home/oldboy10.0.0.0/24(ro)

說(shuō)明:只讀共享

用途:例如在生產(chǎn)環(huán)境中铅碍,開(kāi)發(fā)人員有查看生產(chǎn)眼務(wù)器日志的需求润绵,但又不希罜

給開(kāi)發(fā)生產(chǎn)服務(wù)器的權(quán)限,那么就可以給開(kāi)發(fā)提供從某個(gè)測(cè)試服務(wù)器NFS客戶端

上查看某個(gè)生產(chǎn)服務(wù)器的日志目錄(NFS共享)的權(quán)限胞谈,當(dāng)然這不是唯一的方法尘盼,

例如可以把程序記錄的日志發(fā)送到測(cè)試服務(wù)器供開(kāi)發(fā)查看或者通過(guò)收集日志等其

它方式展現(xiàn)

3.2.4 nfs客戶端訪問(wèn)服務(wù)原理


3.2.5 nfs服務(wù)訪問(wèn)原理


客戶端(無(wú)論用什么用戶訪問(wèn))---門(mén)---服務(wù)端(nfsnobody) rpc.idmapd

3.3 NFS服務(wù)端設(shè)置rpcbind nfs服務(wù)開(kāi)機(jī)自啟動(dòng)

[root@nfs01 ~]#? chkconfig rpcbind on

[root@nfs01 ~]#? chkconfig nfs? on

[root@nfs01 ~]# ?chkconfig |egrep "rpcbinf|nfs"

nfs????? ?????? 0:off? 1:off? 2:on?? 3:on?? 4:on?? 5:on?? 6:off

nfslock ??????? 0:off? 1:off? 2:off? 3:on?? 4:on?? 5:on?? 6:off

3.4 NFS配置文件編寫(xiě)說(shuō)明

3.4.1 官方舉例配置

EXAMPLE

?????? # sample /etc/exports file

?????? /?????????????? master(rw) trusty(rw,no_root_squash)

?????? /projects?????? proj*.local.domain(rw)

?????? /usr??????????? *.local.domain(ro) @trusted(rw)

?????? /home/joe?????? pc001(rw,all_squash,anonuid=150,anongid=100)

?????? /pub??????????? *(ro,insecure,all_squash)

?????? /srv/www??????? -sync,rw server @trusted @external(ro)

?????? /foo??????????? 2001:db8:9:e54::/64(rw) 192.0.2.0/24(rw)

?????? /build????????? buildhost[0-9].local.domain(rw)

3.4.2 /etc/exports文件配置格式為:

??? NFS共享目錄 NFS客戶端地址1(參數(shù)1,參數(shù)2烦绳,...) 客戶端地址2(參數(shù)1卿捎,參數(shù)2,...)

??? 或

??? NFS共享目錄 NFS客戶端地址1(參數(shù)1径密,參數(shù)2午阵,...)

??? NFS共享目錄 NFS客戶端地址2(參數(shù)1,參數(shù)2享扔,...)

注意:nfs服務(wù)默認(rèn)沒(méi)有認(rèn)證機(jī)制底桂,安全性不如分布式文件系統(tǒng)

????? 只能通過(guò)控制配置文件中網(wǎng)絡(luò)地址信息,實(shí)現(xiàn)安全性

3.5 nfs配置參數(shù)說(shuō)明


參數(shù)

說(shuō)明

rw

可讀寫(xiě)的權(quán)限

ro?

只讀的權(quán)限

no_root_squash

登入NFS主機(jī)伪很,使用該共享目錄時(shí)相當(dāng)于該目錄的擁有者戚啥,如果是root的話,那么對(duì)于這個(gè)共享的目錄來(lái)說(shuō)锉试,他就具有root的權(quán)限猫十,這個(gè)參數(shù)『極不安全』,不建議使用

root_squash

登入NFS主機(jī)呆盖,使用該共享目錄時(shí)相當(dāng)于該目錄的擁有者拖云。但是如果是以root身份使用這個(gè)共享目錄的時(shí)候,那么這個(gè)使用者(root)的權(quán)限將被壓縮成為匿名使用者应又,即通常他的UID與GID都會(huì)變成nobody那個(gè)身份

all_squash

不論登入NFS的使用者身份為何宙项,他的身份都會(huì)被壓縮成為匿名使用者,通常也就是nobody

anonuid

可以自行設(shè)定這個(gè)UID的值株扛,這個(gè)UID必需要存在于你的/etc/passwd當(dāng)中

anongid

同anonuid尤筐,但是變成groupID就是了

sync

資料同步寫(xiě)入到內(nèi)存與硬盤(pán)當(dāng)中

async

資料會(huì)先暫存于內(nèi)存當(dāng)中,而非直接寫(xiě)入硬盤(pán)

insecure

允許從這臺(tái)機(jī)器過(guò)來(lái)的非授權(quán)訪問(wèn)

3.6 nfs配置參數(shù)實(shí)踐

3.6.1 all_squash 參數(shù)實(shí)踐

服務(wù)端修改配置

[root@nfs01 ~]# vim /etc/exports

#share 20171013 hzs

/data 172.16.1.0/24(rw,sync,all_squash)

[root@nfs01 ~]# /etc/init.d/nfs reload

??????? ?配置修改需要平滑重啟nfs 服務(wù)

??????? ?reload ?? 平滑重啟

??????? ?用戶的訪問(wèn)體驗(yàn)更好

nfs客戶端進(jìn)行測(cè)試

[root@backup mnt]# touch test.txt

[root@backup mnt]# ll

-rw-r--r-- 1 nfsnobody nfsnobody??? 8 Oct 13 11:28 test.txt

[root@backup ~]# su - oldboy

[oldboy@backup ~]$ cd /mnt/

[oldboy@backup mnt]$ touch oldboy1.txt

[oldboy@backup mnt]$ ll

-rw-rw-r-- 1 nfsnobody nfsnobody? ??0 Oct 13 12:34 oldboy1.txt

-rw-r--r-- 1 nfsnobody nfsnobody? ??8 Oct 13 11:28 test.txt

說(shuō)明:

不論登入NFS的使用者身份為何洞就,他的身份都會(huì)被壓縮成為匿名使用者盆繁,通常也就是nobody

3.6.2 no_all_squash,root_squash 參數(shù)實(shí)踐

服務(wù)端修改配置

[root@nfs01 ~]# vim /etc/exports

#share 20171013 hzs

/data 172.16.1.0/24(rw,sync,no_all_squash,root_squash)

[root@nfs01 ~]# /etc/init.d/nfs reload


客戶端卸載重新掛載(服務(wù)器配置修改后客戶端要重新掛載)

[root@backup ~]# umount /mnt/

[root@backup ~]# mount -t nfs 172.16.1.31:/data /mnt

nfs客戶端測(cè)試結(jié)果:

[root@backup mnt]# touch test1.txt

[root@backup mnt]# ll

-rw-r--r-- 1 nfsnobody nfsnobody??? 0 Oct 13 12:37 test1.txt

[root@backup mnt]# su - oldboy

[oldboy@backup ~]$ cd /mnt/

[oldboy@backup mnt]$ touch oldboy1.txt

touch: cannot touch `oldboy1.txt': Permission denied

[oldboy@backup mnt]$ touch oldboy2.txt

touch: cannot touch `oldboy2.txt': Permission denied

服務(wù)端驗(yàn)證:

[root@nfs01 ~]# ll /data/

-rw-rw-r-- 1 nfsnobody nfsnobody??? 0 Oct 13 12:34 oldboy1.txt

-rw-r--r-- 1 nfsnobody nfsnobody??? 0 Oct 13 12:37 test1.txt

-rw-r--r-- 1 nfsnobody nfsnobody??? 8 Oct 13 11:28 test.txt

說(shuō)明:

no_all_squash,是所有用戶都不進(jìn)行壓縮旬蟋,所以oldboy用戶對(duì)nfs的目錄沒(méi)有寫(xiě)入的權(quán)限(與nfs服務(wù)器的共享目錄權(quán)限有關(guān))油昂。root用戶進(jìn)行壓縮所以可以寫(xiě)入。

3.6.3 no_root_squash 參數(shù)實(shí)踐(root用戶不進(jìn)行壓縮映射)

服務(wù)端修改配置

[root@nfs01 ~]# vim /etc/exports

#share 20171013 hzs

/data 172.16.1.0/24(rw,sync,no_root_squash)

[root@nfs01 ~]# /etc/init.d/nfs reload

客戶端卸載重新掛載(服務(wù)器配置修改后客戶端要重新掛載)

[root@backup ~]# umount /mnt/

[root@backup ~]# mount -t nfs 172.16.1.31:/data /mnt

nfs客戶端測(cè)試結(jié)果:

[root@backup mnt]# touch root.txt

[root@backup mnt]# ll

total 16

-rw-rw-r-- 1 nfsnobody nfsnobody??? 0 Oct 13 12:34 oldboy1.txt

-rw-r--r-- 1 root????? root???????? 0 Oct 13 12:45 root.txt

-rw-r--r-- 1 nfsnobody nfsnobody??? 0 Oct 13 12:37 test1.txt

-rw-r--r-- 1 nfsnobody nfsnobody??? 8 Oct 13 11:28 test.txt

刪除測(cè)試

[root@backup mnt]# rm -rf ./*

[root@backup mnt]# ll

total 0

說(shuō)明:

由于對(duì)root用戶沒(méi)有進(jìn)行壓縮,所以到達(dá)nfs服務(wù)器后依舊是root身份冕碟,root用戶默認(rèn)對(duì)所有的文件都有權(quán)限拦惋,所以可以寫(xiě)入。(很危險(xiǎn))

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末安寺,一起剝皮案震驚了整個(gè)濱河市厕妖,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌我衬,老刑警劉巖叹放,帶你破解...
    沈念sama閱讀 218,525評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異挠羔,居然都是意外死亡井仰,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)破加,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)俱恶,“玉大人,你說(shuō)我怎么就攤上這事范舀『鲜牵” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,862評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵锭环,是天一觀的道長(zhǎng)聪全。 經(jīng)常有香客問(wèn)我,道長(zhǎng)辅辩,這世上最難降的妖魔是什么难礼? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,728評(píng)論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮玫锋,結(jié)果婚禮上蛾茉,老公的妹妹穿的比我還像新娘。我一直安慰自己撩鹿,他們只是感情好谦炬,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,743評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著节沦,像睡著了一般键思。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上甫贯,一...
    開(kāi)封第一講書(shū)人閱讀 51,590評(píng)論 1 305
  • 那天吼鳞,我揣著相機(jī)與錄音,去河邊找鬼获搏。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的常熙。 我是一名探鬼主播纬乍,決...
    沈念sama閱讀 40,330評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼裸卫!你這毒婦竟也來(lái)了仿贬?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,244評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤墓贿,失蹤者是張志新(化名)和其女友劉穎茧泪,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體聋袋,經(jīng)...
    沈念sama閱讀 45,693評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡队伟,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,885評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了幽勒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嗜侮。...
    茶點(diǎn)故事閱讀 40,001評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖啥容,靈堂內(nèi)的尸體忽然破棺而出锈颗,到底是詐尸還是另有隱情,我是刑警寧澤咪惠,帶...
    沈念sama閱讀 35,723評(píng)論 5 346
  • 正文 年R本政府宣布击吱,位于F島的核電站,受9級(jí)特大地震影響遥昧,放射性物質(zhì)發(fā)生泄漏覆醇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,343評(píng)論 3 330
  • 文/蒙蒙 一渠鸽、第九天 我趴在偏房一處隱蔽的房頂上張望叫乌。 院中可真熱鬧,春花似錦徽缚、人聲如沸憨奸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,919評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)排宰。三九已至,卻和暖如春那婉,著一層夾襖步出監(jiān)牢的瞬間板甘,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,042評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工详炬, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留盐类,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,191評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像在跳,于是被迫代替她去往敵國(guó)和親枪萄。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,955評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容