Linux NFS服務器的安裝與配置詳解

1、NFS服務簡介python

NFS是Network File System(網絡文件系統)。主要功能是經過網絡讓不一樣的服務器之間能夠共享文件或者目錄。NFS客戶端通常是應用服務器(好比web,負載均衡等),能夠經過掛載的方式將NFS服務器端共享的目錄掛載到NFS客戶端本地的目錄下。NFS在文傳送過程當中依賴與RPC(遠程過程調用)協議。NFS自己是沒有提供信息傳送的協議和功能的,可是可以用過網絡進行圖片,視頻,附件等分享功能。只要用到NFS的地方都須要啓動RPC服務,不管是NFS的服務端仍是客戶端。NFS和RPC的關係:能夠理解爲NFS是一個網絡文件系統(比喻爲租房的房主),而RPC是負責信息的傳輸(中介),客戶端(至關於租房的租客)linux

 

2、系統環境
[root@linuxidc ~]# cat /etc/RedHat-release  ##查看系統版本信息
CentOS release 6.7 (Final)
[root@linuxidc ~]# uname -r                  ##查看內核信息
2.6.32-573.el6.x86_64
[root@linuxidc ~]# uname -m                  ##查看系統是32位仍是64位的
x86_64web

 

3、服務端配置緩存

在啓動NFS服務以前,首先要啓動RPC服務(CentOS5是portmap服務,CentOS6.6之後的版本是rpcbind服務),不然NFS服務器沒法向RPC服務註冊。另外,RPC服務若是重啓,原來以及有的NFS端口就會丟失,所以,只要RPC服務重啓,NFS服務就要重啓向RPC從新註冊新的隨機端口號。通常修改NFS配置文件後,不須要重啓服務,直接平滑重啓便可,命令:/etc/init.d/nfs reload或者exportfs -rv就能夠修改/etc/exports生效。/etc/init.d/nfs reload的做用是:讓已經到達服務器的請求給他處理完畢,可是沒有到達服務器的請求,就把它斷掉。就至關於咱們去車站坐車,車子即將出發時,已經上車的就能夠正常出發,沒有遇上車的就沒有辦法跟車出發。bash

 

要部署NFS服務,須要安裝下面的軟件包:
1)nfs-utils:NFS服務的主程序
2)rpcbing:NFS能夠視爲一個RPC的主程序,在啓動任何一個RPC程序以前,須要作好端口和功能的對應映射工做服務器

 

1)查看NFS的軟件包
 [root@linuxidc ~]# rpm -qa nfs-utils rpcbind網絡

nfs和rpc默認是沒有安裝的,須要yum安裝app

2)CentOS6.7默認沒有安裝軟件包,可使用yum  install  nfs-utils rpcbind -y命令來安裝NFS軟件
[root@linuxidc ~]# yum install nfs-utils rpcbind  -y
[root@linuxidc ~]# rpm -qa nfs-utils rpcbind
nfs-utils-1.2.3-70.el6_8.2.x86_64
rpcbind-0.2.0-12.el6.x86_64負載均衡

3)啓動NFS服務
第一步:先啓動rpc服務
[root@linuxidc ~]# /etc/init.d/rpcbind start  #啓動rpc服務
[root@linuxidc ~]# /etc/init.d/rpcbind status  #查看rpc服務狀態
rpcbind (pid  4269) 正在運行...運維

第二步:啓動NFS服務
[root@linuxidc ~]# /etc/init.d/nfs start    #啓動nfs服務
[root@linuxidc ~]# /etc/init.d/nfs status    #查看nfs服務狀態
rpc.svcgssd 已停
rpc.mountd (pid 3282) 正在運行...
nfsd (pid 3298 3297 3296 3295 3294 3293 3292 3291) 正在運行...
rpc.rquotad (pid 3277) 正在運行...

必需要先啓動rpc服務,而後再啓動NFS服務,若是先啓動NFS服務,啓動服務時會失敗,提示以下

[root@linuxidc ~]# /etc/init.d/nfs start
啓動 NFS 服務:                                            [肯定]
關掉 NFS 配額:沒法註冊服務: RPC:沒法接收; errno = 拒絕鏈接
rpc.rquotad: unable to register (RQUOTAPROG, RQUOTAVERS, udp).
                                                          [失敗]
啓動 NFS mountd:                                          [失敗]
啓動 NFS 守護進程:

 

[root@linuxidc ~]# rpcinfo -p 192.168.8.7   #查看NFS服務向rpc註冊的端口信息,主端口號是:111
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
100011    1  udp    875  rquotad
100011    2  udp    875  rquotad
100011    1  tcp     875  rquotad
100011    2  tcp     875  rquotad

 

第三步:檢查開機是否自啓動

[root@linuxidc ~]# chkconfig nfs on
[root@linuxidc ~]# chkconfig rpcbind on
[root@linuxidc ~]# chkconfig --list nfs
nfs            0:關閉  1:關閉  2:啓用  3:啓用  4:啓用  5:啓用  6:關閉
[root@linuxidc ~]# chkconfig --list rpcbind
rpcbind        0:關閉  1:關閉  2:啓用  3:啓用  4:啓用  5:啓用  6:關閉


[root@linuxidc ~]# tail -2 /etc/rc.local 
/etc/init.d/rpcbind start
/etc/init.d/nfs  start

在工做中,大都是統一按照運維規範將服務的啓動命令放到/etc/rc.local裏面,而不是用chkconfig來管理的,全部的服務一旦開機自啓動就必須放到/etc/rc.local中。這樣的好處是,一旦管理此服務器的人員離職忙活着業務遷移均可以經過/etc/rc.local很容易的查看到服務器對應的相關服務,能夠方便的運維管理。

 

 4)NFS服務端配置文件的配置
NFS默認配置文件路徑是:/etc/exports,文件默認是空的。 /etc/exports配置文件的格式是:
NFS共享的目錄    NFS客戶端地址(參數1,參數2)
[root@LF-tms-client 桌面]# cat /etc/exports
#/media/u1 *(rw,no root squash)
/media/u1  192.168.8.7/23(rw,sync)  ##一條配置搞定NFS配置文件

其中:/media/u1是服務器端共享的目錄
     192.168.8.7/23共享目錄的客戶端ip地址
     (rw,sync) ,其中rw表明擁有讀寫的權限,sync表明數據同步寫入NFS服務器端的硬盤中。也能夠用async,async是大數據時使用,是先寫到緩存區,再寫到磁盤裏。 
NFS共享的目錄:爲NFS服務器端要共享的實際目錄,要用決定路徑,如(/media/u1)。注意共享目錄的本地權限,須要讀寫權限,必定要讓本地目錄能夠被NFS客戶端的用戶讀寫
NFS客戶端地址:爲NFS服務器端受權的可訪問的共享目錄的NFS客戶端地址,能夠爲單獨的ip地址或者主機名,域名等,也能夠是整個網段的地址。
建立/media/u1目錄,而且屬主和屬組都爲:nfsnobody,其中nfsnobody是安裝nfs服務時默認的用戶

 [root@linuxidc ~]# mkdir /media/u1  -p
[root@linuxidc ~]# chown -R nfsnobody:nfsnobody /media
[root@linuxidc ~]# ls -ld /media
drwxr-xr-x 6 nfsnobody nfsnobody 4096 12月  8 20:17 /media
[root@linuxidc ~]# /etc/init.d/nfs reload
 [root@linuxidc ~]# showmount -e 192.168.8.7   ##本地測試,說明服務端測試成功
Export list for 192.168.8.7:
/media/u1 192.168.8.7/23

 

4、客戶端配置

1.客戶端和服務端同樣,也要安裝nfs和rpm的安裝包。(配置見服務器端)

2.客戶端須要啓動rpc服務,加入開機自啓動,不須要啓動nfs服務。(配置見服務器端)

3.測試

第一步:ping,能不能ping通服務器端ip地址

 [root@LF-tms-client 桌面]# ping 192.168.8.7
PING 192.168.8.7 (192.168.8.7) 56(84) bytes of data.
64 bytes from 192.168.8.7: icmp_seq=1 ttl=64 time=0.010 ms
64 bytes from 192.168.8.7: icmp_seq=2 ttl=64 time=0.010 ms
64 bytes from 192.168.8.7: icmp_seq=3 ttl=64 time=0.010 ms
64 bytes from 192.168.8.7: icmp_seq=4 ttl=64 time=0.011 ms
^C
--- 192.168.8.7 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3213ms
rtt min/avg/max/mdev = 0.010/0.010/0.011/0.002 ms

 

第二步:telnet服務端的111端口

 [root@LFG1-307-KSTMSV ~]#  telnet 192.168.8.7  111
Trying 192.168.8.7...
Connected to 192.168.8.7.
Escape character is '^]'.

第三步:showmount服務端

[root@LFG1-307-KSTMSV /]# showmount -e 192.168.8.7
Export list for 192.168.8.7:
/media/u1 192.168.8.7/23

第四步:掛載,文件共享
[root@linuxidc ~]# mount -t  nfs 192.168.8.7:/media/u1 /media/tmsusb/

第五步:查看是否掛載成功了

[root@LFG1-307-KSTMSV /]# df -h
Filesystem                            Size  Used Avail Use% Mounted on
/dev/mapper/vg_lfg1307kstmsv-lv_root   55G   11G   42G  21% /
tmpfs                                 3.9G  176K  3.9G   1% /dev/shm
/dev/sda1                             485M   40M  421M   9% /boot
/dev/sdb                              8.9T  6.2T  2.3T  74% /lms-data
192.168.8.7:/media/u1                 917G  559G  312G  65% /media/tmsusb
說明客戶端測試成功,配置完成。

 

服務端桌面一鍵掛載:

#!/bin/bash 
ssh LFG1-307-KSTMSV 'umount -f /media/tmsusb'
ssh LFG1-307-KSTMSV 'umount /media/tmsusb'
ssh LFG1-307-KSTMSV ' mount -t  nfs 192.168.8.7:/media/u1 /media/tmsusb/'
ssh LFG1-307-KSTMSV 'ls -R -l /media/tmsusb'

服務端桌面一鍵卸載:

#!/bin/bash
ssh LFG1-307-KSTMSV 'umount -f /media/tmsusb'
ssh LFG1-307-KSTMSV 'umount /media/tmsusb'
umount -f /media/u1
umount /media/u1

 

 

NFS文件系統詳解  http://www.linuxidc.com/Linux/2016-06/131940.htm

Ubuntu 12.04安裝NFS server http://www.linuxidc.com/Linux/2012-09/70728.htm

基於LAMP平臺利用NFS遠程共享資源實現站點構建  http://www.linuxidc.com/Linux/2016-07/133510.htm

文件服務器NFS配置詳解 http://www.linuxidc.com/Linux/2013-06/86542.htm

Ubuntu下搭建NFS網絡文件系統服務器 http://www.linuxidc.com/Linux/2013-07/87367.htm

CentOS 7.2中NFS1.3 安裝 http://www.linuxidc.com/Linux/2016-10/135970.htm

Ubuntu 14.04安裝配置NFS服務器 http://www.linuxidc.com/Linux/2016-04/129848.htm

相關文章
相關標籤/搜索