NFS配置步骤

一、NFS服务简介

        NFS Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。

        NFS 的基本原则是容许不同的客户端及服务端通过一组RPC分享相同的文件系统,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

        NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call)是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVERCLIENT才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPCNFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。

二、RPC简介

        NFS支持的功能相当多,每个功能都会启用一些端口来传数据,因此NFS的功能所对应的端口无法固定,而是随机的使用一些未被使用的端口传输数据,这样会造成nfs客户端与nfs服务端通讯障碍,因为nfs客户端必须要知道服务端的端口才能进行通信。

        解决上的问题,就要用RPC服务,NFSRPC服务最主要的功能就是记录每个NFS功能所对应的端口号,并在NFS客户端请求时将该端口和功能对应的信息传递给请求数据的NFS客户端,从而可以确保客户端可以连接到正确的NFS端口上去,达到数据交互的目的。

        RPC相当于NFS服务端和NFS客户端之间的一个中介

三、 配置NFS文件系统环境

服务器系统:CentOS 6.5 

防火墙:关闭

SELinux:关闭

部署NFS服务,需要安装下面2个软件包

nfs-utilsnfs主程序

portmapcentos5.XRPC的主程序(centos6.X下的名字为rpcbind

注意:启动nfs服务前必须先启动portmaprpcbind服务

四、服务端部署

1、安装软件包(2种方法)

yum install –y nfs-utils  rpcbind
yum groupinstall -y “NFS file server”

2、启动RPC服务

/etc/init.d/rpcbind  start    #启动服务
ps -ef|grep  rpc          #检查是否启动
/etc/init.d/rpcbind  status   #查看状态
rpcinfo -p localhost       #查看启动的端口(本地)

说明:
       RPC 默认使用111 端口

       若出现:rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused 报错的原因是RPC服务没开

3、启动NFS服务

/etc/init.d/nfs  start
rpcinfo -p localhost

4、设置开机自启动

chkconfig nfs  on
chkconfig rpcbind  on
chkconfig --list        #检查

5、创建共享目录

mkdir /data

6、 编辑/etc/exports文件

[root@storm ~]# vi /etc/exports
添加一行:
#share /data directory
/data 192.168.1.0/24(rw,sync)

       共享目录  IP(允许192.168.1.*IP访问)/子网掩码(权限,同步写入) 

7、重启NFS服务

/etc/init.d/nfs reload  #reload为平滑重启

8、检查共享 

showmount -e localhost

9、改变权限

chown -R nfsnobody:nfsnobody /data/

       服务端启动nfs服务后,客户端的访问默认是以nfsnobody来访问的,因此要给服务端共享的文件改变所属组和属主,需要手动指定uidgid,所有的客户端都要有相同的uidgid才能避免问题的发生

五、客户端部署

        客户端的配置同服务端的配置基本相同,同样需要安装nfs-utils  rpcbind)软件包以及启动rpc服务,不同的是客户端无需配置/etc/export文件,也不需要启动NFS服务,只需检查到远程共享目录后正常挂载即可,注意挂载前服务端需要关闭防火墙,否则会导致客户端无法挂载

1、检测远程NFS目录

showmount -e 192.168.1.189

若检查报错:

ping  查看网络是否通畅
telnet 端口 查看服务是否能链接
若出现telnet: connect to address 192.168.1.189: No route to host 报错,要关闭服务端的防火墙:/etc/init.d/iptables stop (服务端)

2、 挂载

mount -t nfs[可不加] 192.168.1.189:/data /mnt  #确保/mnt存在

此挂载方法重启后失效

开机挂载的方法有2种:

  • a. 编辑/etc/rc.local

[root@localhost data]# vi /etc/rc.local 
 /bin/mount -t nfs 192.168.1.189:/data /data

缺点:偶尔开机挂不上

  • b. 写入fstab(不可取)

网络文件系统不要放到fstab里,因为fstab优先于网络启动,此时连不上nfs服务器端;

即使是本地文件系统,雅瑶注意,fstab最后2列要设置0 0,否则无法启动



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值