這篇文章主要講解了“Linux下怎么搭建NFS”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Linux下怎么搭建NFS”吧!
這篇文章主要講解了“Linux下怎么搭建NFS”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Linux下怎么搭建NFS”吧!
創(chuàng)新互聯(lián)是專業(yè)的東港網(wǎng)站建設(shè)公司,東港接單;提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行東港網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
一、NFS簡介
NFS是Network File System的縮寫,即網(wǎng)絡(luò)文件系統(tǒng)。一種使用于分散式文件協(xié)定,有SUN公司開發(fā)。功能是通過網(wǎng)絡(luò)讓不同的機(jī)器、不同的操作系統(tǒng)能夠分享個人數(shù)據(jù),讓應(yīng)用程序通過網(wǎng)絡(luò)可以訪問位于磁盤中的數(shù)據(jù)。
NFS在文件傳送或信息傳送的過過程中,依賴于RPC協(xié)議。RPC,遠(yuǎn)程過程調(diào)用(Remote Procedure Call),是使客戶端能夠執(zhí)行其他系統(tǒng)中程序的一種機(jī)制。NFS本身是沒有提供信息傳輸?shù)膮f(xié)議和功能的,但NFS卻能讓我們通過網(wǎng)絡(luò)進(jìn)行資料的分享,就是因?yàn)镹FS使用了RPC提供的傳輸協(xié)議,可以說NFS就是使用PRC的一個程序。
環(huán)境說明:
系統(tǒng) :CentOS release 6.7 (Final)
NFS IP :10.219.24.22
web IP :10.219.24.25
iptables:未運(yùn)行防火墻
操作流程:
1、軟件安裝,NFS只需要安裝兩個軟件,在通常情況下是作為系統(tǒng)默認(rèn)軟件安裝的
[root@01 ~]# rpm -qa|grep rpcbind*
rpcbind-0.2.0-11.el6.x86_64
[root@mysql01 ~]# rpm -qa|grep nfs-utils
nfs-utils-1.2.3-64.el6.x86_64
nfs-utils-lib-1.1.5-11.el6.x86_64
說明:
[root@mysql01 ~]# yum install rpcbind nfs-utils (如果沒有安裝就yum安裝)
rpcbind包 :centos 下面RPC主程序
nfs-utils包 :NFS服務(wù)主程序,包括NFS的基本命令和監(jiān)控程序
2、開啟RCP服務(wù)
[root@mysql01 ~]# /etc/init.d/rpcbind start
查看rpcbind服務(wù)端口
[root@mysql01 ~]# netstat -antlp|grep rpcbind
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1462/rpcbind
tcp 0 0 :::111 :::* LISTEN 1462/rpcbind
[root@mysql01 ~]# 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 41757 status
100024 1 tcp 42661 status
3、開啟NFS服務(wù)
[root@mysql01 ~]# /etc/init.d/nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Starting RPC idmapd: [ OK ]
[root@mysql01 ~]# rpcinfo -p localhost
program vers proto port service
......
100005 3 tcp 59454 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 4 tcp 42905 nlockmgr
說明: rpc上應(yīng)該能看到好多新被注冊的nfs端口
兩個服務(wù)開機(jī)自啟動
[root@mysql01 ~]# chkconfig rpcbind on
[root@mysql01 ~]# chkconfig nfs on
4、服務(wù)端配置共享目錄(/oradata)
4.1 配置前確認(rèn)rpcbind、nfs服務(wù)進(jìn)程正常
[root@nfs01 ~]# /etc/init.d/nfs status
[root@nfs01 ~]# /etc/init.d/rpcbind status
[root@nfs01 ~]# ps -ef|egrep "rpc|nfs"
4.2 創(chuàng)建共享目錄并授權(quán)("nfsnobody")
#nfsnobody 用戶是開啟rpc、nfs進(jìn)程后系統(tǒng)自動創(chuàng)建的
[root@mysql01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 35G 8.9G 25G 27% /
tmpfs 491M 76K 491M 1% /dev/shm
/dev/sda1 2.9G 4.5M 2.7G 1% /tmp
/dev/sr0 3.7G 3.7G 0 100% /media/CentOS_6.7_Final
[root@mysql01 ~]# mkdir /oradata
[root@mysql01 ~]# chown -R nfsnobody.nfsnobody /oradata
[root@mysql01 ~]# chmod 777 /oradata
4.3 修改服務(wù)端配置文件(/etc/exports)
[root@mysql01 ~]# cat /etc/exports
#share /data by andy for XXXX at 20170812
/oradata 10.219.24.0/8(rw,sync)
[root@mysql01 ~]#
4.3 查看系統(tǒng)加載的配置
[root@mysql01 ~]# cat /var/lib/nfs/etab
/oradata 10.219.24.0/8(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,root_squash,no_all_squash)
4.4 重新平滑加載服務(wù)
[root@mysql01 ~]# showmount -e localhost
5、客戶端配置
[root@mysql02 ~]# /etc/init.d/rpcbind status
rpcbind (pid 1469) is running...
[root@mysql02 ~]# /etc/init.d/rpcbind start
掛載nfs共享目錄
[root@mysql02 ~]# mount -t nfs 10.219.24.22:/oradata /mnt
[root@mysql02 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 35G 8.7G 25G 26% /
tmpfs 491M 76K 491M 1% /dev/shm
/dev/sda1 2.9G 4.5M 2.7G 1% /tmp
/dev/sr0 3.7G 3.7G 0 100% /media/CentOS_6.7_Final
10.219.24.22:/oradata
35G 8.9G 25G 27% /mnt
6、開機(jī)自動掛載
方法一:
[root@mysql02 ~]# echo "mount -t nfs 10.219.24.22:/oradata /mnt">>/etc/rc.local
方法二:
開啟netfs服務(wù)
[root@mysql02 ~]# chkconfig netfs on
[root@mysql02 ~]# vi /etc/fstab
[root@mysql02 ~]# cat /etc/fstab
10.219.24.22:/oradata /mnt nfs defaults 0 0
7、檢驗(yàn)
-- nfs server
[root@mysql01 ~]# touch /oradata/aa
-- client
[root@mysql02 ~]# cd /mnt
[root@mysql02 mnt]# ll
total 0
-rw-r--r--. 1 root root 0 Aug 13 04:31 aa