淘客做網(wǎng)站怎么備案百度一下百度官網(wǎng)
目錄
介紹
應(yīng)用
NFS的工作原理
NFS的使用
步驟
1、兩臺機子
2、安裝
3、配置文件
4、實驗
服務(wù)端
準備
啟動服務(wù):
客戶端
準備
步驟
介紹
NFS(Network File System,網(wǎng)絡(luò)文件系統(tǒng))是一種古老的用于在UNIX/Linux主機之間進行文件共享的協(xié)議(電腦間的共享)。它古老到你必須穿著白大褂才能接近一臺計算機的年代。在那個年代,所有的聯(lián)網(wǎng)計算機都被認為是可信的,而不像現(xiàn)今這樣,任何人都有多種多樣方法能連接到你的計算機。因此,NFS在開發(fā)的時候?qū)W⒂诳焖偌耙子玫奈募蚕?#xff0c;而忽視了其安全性設(shè)計
NFS 是FreeBSD支持的文件系統(tǒng)中的一種,它允許網(wǎng)絡(luò)中的計算機(不同的計算機、不同的操作系統(tǒng))之間通過TCP/IP網(wǎng)絡(luò)共享資源,主要在unix系列操作系統(tǒng)上使用。
NFS服務(wù)器可以讓PC將網(wǎng)絡(luò)中的NFS服務(wù)器共享的目錄掛載到本地端的文件系統(tǒng)中,而在本地端的系統(tǒng)中看來,那個遠程主機的目錄就好像是自己的一個磁盤分區(qū)一樣
由于NFS支持的功能比較多,而不同的功能都會使用不同的程序來啟動,每啟動一個功能就會啟用一些端口來傳輸數(shù)據(jù),因此NFS的功能所對應(yīng)的端口并不固定,而是隨機取用一些未被使用的小于1024的端口用于傳輸。但如此一來就會產(chǎn)生客戶端連接服務(wù)器的問題,因為客戶端需要知道服務(wù)器端的相關(guān)端口才能夠連接。此時就需要RPC
RPC(Remote Procedure Call,遠程過程調(diào)用):由于服務(wù)器在啟動NFS時會隨機選取數(shù)個端口號,并主動向RPC注冊,所以RPC知道每個NFS功能所對應(yīng)的端口號,RPC將端口號通知給客戶端,讓客戶端可以連接到正確的端口上去。RPC采用固定端口號port 111來監(jiān)聽客戶端的需求并向客戶端響應(yīng)正確的端口號(一般用于NFS的相關(guān)信息,方便客服端查到)
應(yīng)用
一般用于前端web服務(wù)的共享存儲,一般包括用戶的頭像,附件,圖片等等(微信頭像、圖片、附件)網(wǎng)站的源代碼不跟NFS放在一起,以防服務(wù)器崩了全壞,因此NFS是互聯(lián)網(wǎng)中數(shù)據(jù)存儲最常用的服務(wù)之一,中小型網(wǎng)站用得最多
NFS的工作原理
切記:!!!!先啟動RPC服務(wù)
NFS的使用
步驟
1、兩臺機子
一臺為服務(wù)器,一臺為主機,我做實驗時用的就是將一臺機子進行了克隆,克隆為node(用戶端),而原先的server(服務(wù))則不變
克隆的位置在管理快照里面,找到最下面有一個“新建鏈接克隆”
克隆完后進入機子,將其的名字改為node
hostnamectl set-hosetname node
設(shè)更改機子名字
reboot
更改后要進行重啟
(以上虛擬機的部署為Mac Os的用戶,Windows用戶不用這個,Windows可以直接在VM虛擬機里直接克隆,比Mac Os方便)
搞定后,兩臺機子同時啟動,在用鏈接軟件同時進行連接
這樣方便后面的操作
2、安裝
首先先用yum list | grep nfs在服務(wù)端進行查看,看看是否安裝NFS
搜索出來后,查看這幾行,其中第一行
就是NFS的主要文件,如果沒有,可以進行安裝,輸入
yum install nfs-utils -y
即可進行安裝
同理可用yum list | grep rpc來查看是否有rpc,若沒有則需要安裝一個rpc
yum install rpcbind -y
注意:rpcbind為rpc的全名,安裝時必須將其打全
3、配置文件
配置etc下的exports文件,可能不存在,可以直接用cat /etc/exports進行查看文件是否存在,若不存在,cat后就會創(chuàng)建一個
(主配置文件exports為空)
格式:共享目錄的路徑 ? ? ? ?允許訪問的客服端名單(共享的權(quán)限參數(shù))
??????????????????????????????????????????????????????????????名單寫被允許的用戶的域名ip,且后面的權(quán)限參數(shù)跟名單之間沒有空格
所寫的白名單里可以寫完整的ip地址或者是ip網(wǎng)段:
1、10.211.55.10/24
2、10.211.55.10/255.255.255.0(與第一種一樣,只是把后面的子網(wǎng)掩碼沒有簡化)
3、10.211.55.0/24(直接允許某個網(wǎng)段)
4、*(允許所有的主機都可以訪問)
共享的權(quán)限參數(shù):共有三段(___,____,____)
示例:/home/public *(rw,sync,all_squash)——服務(wù)器共享路徑為/home/public里的數(shù)據(jù),所有人都可以訪問,可讀可寫,同步傳輸,賬戶映射為nobody
4、實驗
服務(wù)端
準備
服務(wù)端先檢查 selinux和防火墻是否開放:
getenforcesystemctl status firewall
然后服務(wù)端安裝rpcbind,nfs-utils,
然后服務(wù)端在根下面建立一個同名的文件:mkdir /nfsfile
然后進行查看nfsfile的權(quán)限:ls -ld /nfsfile
得到此時文件夾只能讀,不能寫,然后先往文件里寫入數(shù)據(jù):
echo "welcome to www.myworld.com" > /nfsfile/readme
便于后期查看是否能夠訪問成功,是否能夠進行網(wǎng)絡(luò)共享
修改服務(wù)端的主配置文件:vim /etc/exports
進來后按照前面的格式進行修改:路徑 ? ? ? ?白名單(權(quán)限)
檢查無誤后即可保存退出
啟動服務(wù):
切記!!!先啟動rpc,再啟動nfs
systemctl start rpcbind rpc優(yōu)先
systemctl start nfs-servernfs隨后
沒有報錯就是勝利!??
若rpc啟動報錯(啟動報錯就不要碰nfs,否則實驗失敗)!!!可用以下代碼解決
systemctl stop rpcbind先暫停
systemctl start rpcbind 再啟動
再為rpc和nfs增加開機啟動(無順序):systemctl enable rpcbind ? ? ? ?systemctl enable nfs-server
客戶端
準備
安裝nfs,因為要用到相關(guān)的工具:yum install nfs-utils -y
使用showmount命令,可以查看服務(wù)端的rpc服務(wù)器,進而查詢到對應(yīng)的nfs服務(wù)器,知道對方共享了那些信息可以進行訪問
客服端訪問是通過訪問的方式進行訪問的,通過遠程掛載實現(xiàn)的,客戶端是通過建立一個目錄后,將對面的目錄掛載到本地,然后就當(dāng)作本地目錄一樣訪問
步驟
建立一個目錄mkdir /nfs1,然后用遠程掛載命令將對方的共享目錄與我的目錄做關(guān)聯(lián),然后就可以通過本地目錄(nfs1)進入服務(wù)端所共享的目錄,用代碼
mount -t nfs 10.211.55.10:/nfsfile /nfs1-t 指所用的協(xié)議
10.211.55.10:/nfsfile 前面ip為指明的路徑與目標(biāo)目錄用:隔開后輸入目錄名字
/nfs1 指所掛載的本地目錄
如何去訪問呢?直接通過
cd /nfs1cd到本地目錄
ls查看本地目錄的內(nèi)容
cat readme查看共享目錄里的內(nèi)容
即可訪問
如果能看到就表明訪問成功
但此時的掛載還只是臨時掛載,不是永久掛載,若要做到永久掛載需要進行先回到root界面,直接cd,修改在客戶端輸入vim /etc/fstab ? ? ? ?切記!!!!!!后面的修改必須全部正確!!!!!
先添加成這樣方便后面的添加,以防出錯
首先知道的是掛載設(shè)備名即為本地所需要掛載的遠程目錄:10.211.55.10:/nfsfile掛載點目錄,即為本地的目錄:/nfs1
再三檢查后保存退出,然后輸入mount -a執(zhí)行掛載,mount -a的意思是:將未執(zhí)行掛載的進行掛載,若有問題,則會在輸入后報錯,立馬改正,就不會使電腦啟動失敗
可以用mount | grep nfs進行查看掛載
df -h進行查看文件的掛載(若重啟成功后,查看時發(fā)現(xiàn)還在則成功)
查看完后重啟查看成果
然后此時就是成功永久掛載
最后查看也是成功即可
?