NFS
一子眶、NFS簡(jiǎn)介和架構(gòu)圖
- NFS是Network File System的縮寫吓懈,即網(wǎng)絡(luò)文件系統(tǒng)蝙眶。一種使用于分散式文件協(xié)定搔体,功能是通過(guò)網(wǎng)絡(luò)讓不同的機(jī)器恨樟、不同的操作系統(tǒng)能夠分享個(gè)人數(shù)據(jù),讓應(yīng)用程序通過(guò)網(wǎng)絡(luò)可以訪問(wèn)位于服務(wù)器磁盤中的數(shù)據(jù)疚俱。
- NFS在文件傳送或信息傳送的過(guò)過(guò)程中劝术,依賴于RPC協(xié)議。RPC呆奕,遠(yuǎn)程過(guò)程調(diào)用(Remote Procedure Call),是使客戶端能夠執(zhí)行其他系統(tǒng)中程序的一種機(jī)制养晋。NFS本身是沒(méi)有提供信息傳輸?shù)膮f(xié)議和功能的,但NFS卻能讓我們通過(guò)網(wǎng)絡(luò)進(jìn)行資料的分享梁钾,就是因?yàn)镹FS使用了RPC提供的傳輸協(xié)議匙握,可以說(shuō)NFS就是使用PRC的一個(gè)程序。
- NFS存儲(chǔ)服務(wù)器主要用于用戶上傳的數(shù)據(jù)陈轿,圖片音頻、等信息
二秦忿、NFS適用場(chǎng)景
- 2.1 NFS 最好是部署在局域網(wǎng) 麦射,不要在公網(wǎng)上 ;
- 2.2 NFS 只能在 linux 上使用 (如果想讓 windows 和 Linux 之間實(shí)現(xiàn)數(shù)據(jù)共享建議使用 FTP 或者 samba)灯谣;
- 2.3 NFS 適合在中小型企業(yè)使用
三潜秋、服務(wù)端配置(IP:192.168.0.215)
- 檢查系統(tǒng)中是否安裝 NFS 和 RPC ,并進(jìn)行安裝NFS 和RPC
[root@NFS ~]# rpm -qa nfs-utils rpcbind
[root@NFS ~]# yum -y install nfs-utils rpcbind #使用 yum 安裝nfs 和 rpc
- 在服務(wù)端創(chuàng)建共享目錄/data/nfs/
[root@NFS ~]# mkdir -p /data/nfs/
[root@NFS ~]# chmod 777 /data/nfs/
[root@NFS ~]# ll /data/
- 編輯配置NFS配置文件
[root@NFS ~]# cat >>/etc/exports<<EOF
> /data/nfs 172.16.1.0/24(rw,sync)
> EOF
[root@NFS ~]# cat /etc/exports
/data/nfs 192.168.0.138/24(rw,sync)
[root@NFS ~]#
其中:/data/nfs 是服務(wù)器端共享的目錄
192.168.0.138/24共享目錄的客戶端ip地址(rw,sync)胎许,其中rw代表?yè)碛凶x寫的權(quán)限峻呛,sync代表數(shù)據(jù)同步寫入NFS服務(wù)器端的硬盤中。也可以用async辜窑,async是大數(shù)據(jù)時(shí)使用钩述,是先寫到緩存區(qū),再寫到磁盤里穆碎。
[root@NFS ~]# exportfs -r #讓配置文件生效
- 啟動(dòng)RPC和NFS服務(wù)
service rpcbind start #啟動(dòng)rpc
service nfs start #啟動(dòng)nfs
service rpcbind status #查看rpc運(yùn)行狀態(tài)
service nfs status #查看nfs運(yùn)行狀態(tài)
- 查看NFS服務(wù)是否向rpc注冊(cè)端口信息牙勘,主端口號(hào)是:111
[root@NFS ~]# rpcinfo -p localhost
選項(xiàng)與參數(shù):
-p :針對(duì)某 IP (未寫則預(yù)設(shè)為本機(jī)) 顯示出所有的 port 與 porgram 的信息;
-t :針對(duì)某主機(jī)的某支程序檢查其 TCP 封包所在的軟件版本;
-u :針對(duì)某主機(jī)的某支程序檢查其 UDP 封包所在的軟件版本方面;
- 在NFS設(shè)定妥當(dāng)之后放钦,可以先在服務(wù)端自我測(cè)試一下是否可以聯(lián)機(jī)!利用 showmount 這個(gè)指令來(lái)查看恭金!
[root@NFS ~]# showmount -e localhost
Export list for localhost:
/data/nfs 192.168.0.138/24
[root@NFS ~]#
選項(xiàng)與參數(shù):
-a :顯示目前主機(jī)與客戶端的 NFS 聯(lián)機(jī)分享的狀態(tài)操禀;
-e :顯示某部主機(jī)的 /etc/exports 所分享的目錄數(shù)據(jù)。
參數(shù)說(shuō)明:
#rpcinfo -p 檢查nfs服務(wù)是否有注冊(cè)端口信息
#showmount -e 檢查共享目錄信息
四横腿、客戶端配置(IP:192.168.0.138)
- 查看系統(tǒng)中是否有nfs和rpc
[root@rsync ~]# rpm -qa nfs-utils rpcbind
- 進(jìn)行安裝服務(wù)颓屑,并啟動(dòng)服務(wù)
[root@rsync ~]# yum -y install nfs-utils rpcbind
[root@rsync ~]# service rpcbind start #啟動(dòng)rpc
[root@rsync ~]# service nfs start #啟動(dòng)nfs
- 創(chuàng)建掛載目錄
[root@rsync]# mkdir -p /data/nfs
- 查看客戶端是否可以收到服務(wù)端的共享信息
[root@rsync nfs]# showmount -e 192.168.0.215
Export list for 192.168.0.215:
/data/nfs 192.168.0.138/24
[root@rsync nfs]#
- 進(jìn)行nfs 共享目錄的掛載
mount -t nfs 192.168.0.215:/data/nfs /data/nfs
[root@localhost nfs]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 50G 23G 28G 45% /
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 3.8G 8.9M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/centos-home 407G 6.0G 401G 2% /home
/dev/sda1 1014M 147M 868M 15% /boot
tmpfs 770M 0 770M 0% /run/user/0
192.168.0.215:/data/nfs 50G 21G 30G 42% /data/nfs
服務(wù)端:
[root@NFS nfs]# echo "nfs" > test.txt
客戶端:
[root@rsync data]# cat /data/nfs/test.txt
nfs