NFS是Network File System的缩写,即网络文件系统。客户端通过挂载的方式将NFS服务器端共享的数据目录挂载到本地目录下。

一、nfs为什么需要RPC?

因为NFS支持的功能很多,不同功能会使用不同程序来启动,因此,NFS对应的功能所对应的端口无法固定。

端口不固定造成客户端与服务端之间的通信障碍,所以需要RPC来从中帮忙。

NFS启动时会随机取用若干端口,然后主动向RPC服务注册取用相关端口和功能信息,RPC使用固定端口111来监听来自NFS客户端的请求,

并将正确的NFS服务端口信息返回给客户端,这样客户端与服务端就可以进行数据传输了。

二、NFS的工作流程

1、由程序在NFS客户端发起存取文件的请求,客户端本地的RPC(rpcbind)服务会通过网络向NFS服务端的RPC的111端口发出文件存取功能的请求。

2、NFS服务端的RPC找到对应已注册的NFS端口,通知客户端RPC服务。

3、客户端获取正确的端口,并与NFS daemon联机存取数据。

4、存取数据成功后,返回前端访问程序,完成一次存取操作。

所以无论客户端,服务端,需要使用NFS,必须安装RPC服务。

NFS的RPC服务,在Centos5下名为portmap,Centos6下名称为rpcbind。

三、安装配置

1、首先关闭centos7上的firewalld防火墙和iptables防火墙,让其开机不能自启,等安装完毕后可以打开相应的防火墙。

2、安装。

1
yum install -y  nfs-utils rpcbind

3、安装完成后后首先启动,首先启动,首先启动rpcbind服务。

1
systemctl restart rpcbind.service

4、配置nfs配置文件(默认是空的)

首先我们应该建立一个数据文件夹,例如data文件夹也可以是单独的一个块硬盘风趣,都可以。

#mkdir data

#vim /etc/exports

1
/data   192.168.1.0/24(rw,no_root_squash,sync,fsid=0)

  

注:添加no_root_squash参数,表明此时客户端root用户的身份等同于NFS server上面的root用户,否则客户端只能同步到服务器的数据,无建立文件或文件夹等权限。

启动nfs

1
systemctl start nfs.service

  

客户端操作:

同样为了搭建顺利,可先关闭iptables和selinux、firewall。客户端只需要安装rpcbind服务即可,无需安装nfs或开启nfs服务。

#yum install -y rpcbind

#systemctl start rpcbind.service

在客户端建立文件夹,准备挂在nfs。

#cd /root

#mkdir nfstest

挂载

#mount -t nfs 192.168.1.238:/data nfstest

如果需要卸载的话,mount变成umount就行。

如下正常操作没有问题。

如上所示,这样的话在服务器或者在客户端写入对方都会发生变化。

注意:

服务器端:

1、先启动rpcbind,再启动nfs服务

2、如果配置文件发生变化可以使用exportfs -rv重新加载配置无需重启服务。

3、查看rpc服务器是否启动成功rpcinfo -p、netstat -anpt|grep rpc

4、查看共享目录是否存在showmount -e 192.168.1.238

5、如果开iptables防火墙的话可以使用rpcinfo -p命令查看都需要允许哪些端口。

客户端:

错误1,:Stale NFS file handle的解决方法

1、首先用umount卸载当前目录,如果卸载不了使用umount -f /root/nfstest强制卸载,然后再重新挂载即可。

错误2:touch: cannot touch ‘test2’: Permission denied nfs

1、这个是提醒你客户端挂载的nfs服务器的目录没有权限,你在nfs客户端给权限没用,要不就给nfs服务器目录777权限,这样显得啥,要不就配置文件里面如上加上no_root_squash参数。

注:当开启防火墙时,需要把rpcinfo -p查看到的端口都添加到防火墙规则中,否则会出现报错。

转载:https://www.cnblogs.com/lei0213/p/8570785.html

centos7中nfs共享的配置方法的更多相关文章

  1. XAMPP中proftpd的简明配置方法

    XAMPP中proftpd的简明配置方法   用LAMPP的安装方法可以开一个默认的nobody用户,用lampp security就可以初始设置相应的默认用户密码.如果要有多用户,又怎样管理.目录怎 ...

  2. OpenStack中的rabbitmq的配置方法

    OpenStack中的rabbitmq的配置方法 author:headsen chen   2017-10-11  17:24:58 个人原创,允许转载,转载请注明作者,出处,否则依法追究法律责任 ...

  3. Centos7 中 Node.js安装简单方法

    最近,我一直对学习Node.js比较感兴趣.下面是小编给大家带来的Centos7 中 Node.js安装简单方法,在此记录一下,方便自己也方便大家,一起看看吧! 安装node.js 登陆Centos ...

  4. Laravel5.4框架中视图共享数据的方法详解

    本文实例讲述了Laravel5.4框架中视图共享数据的方法.分享给大家供大家参考,具体如下: 每个人都会遇到这种情况:某些数据还在每个页面进行使用,比如用户信息,或者菜单数据,最基本的做法是在每个视图 ...

  5. Msftables之Linux NFS共享目录配置漏洞

    实验目的 1.了解Metasploitables靶机系统漏洞: 2.学习使用Metasploit. 实验原理 msftables之利用Linux NFS共享目录配置漏洞渗透. 实验内容 msftabl ...

  6. Ubuntu中nfs服务器安装与配置

    一.执行命令 sudo apt-get install nfs-kernel-server 二.为创建nfs文件夹 sudo mkdir /usr/nfs 更改目录权限:sudo chmod 777 ...

  7. centos7下NFS使用与配置

    NFS是Network File System的缩写,即网络文件系统.客户端通过挂载的方式将NFS服务器端共享的数据目录挂载到本地目录下. nfs为什么需要RPC?因为NFS支持的功能很多,不同功能会 ...

  8. Centos7防火墙快速开放端口配置方法

    ▲这篇文章主要为大家详细介绍了Centos7防火墙开放端口的快速方法,感兴趣的小伙伴们可以参考一下! Firewalld服务是红帽RHEL7系统中默认的防火墙管理工具,特点是拥有运行时配置与永久配置选 ...

  9. FCKeditor 2.6.6在ASP中的安装及配置方法分享--ZZ转载自网络

    FCKeditor目前的最新版本是2.6.6,在网上搜索此版本的配置方法,发现很少有asp的配置方法,以下就把自己的一些配置经验分享给有需要的你.   首先从FCKEditor官方下载最新的版本脚本之 ...

随机推荐

  1. Mybatis入门篇之基础CRUD

    前言 作为一个资深后端码农天天都要和数据库打交道,最早使用的是 Hiberate,一个封装性极强的持久性框架.自从接触到 Mybatis 就被它的灵活性所折服了,可以自己写 SQL,虽然轻量级,但是麻 ...

  2. 关于List的remove()方法

    最近遇到一个小问题,我将其简化为下列代码,List的remove()方法在下列颜色注重的代码执行的源码也是不同的~ List<Integer> list=new ArrayList< ...

  3. 深入了解Netty【一】BIO、NIO、AIO简单介绍

    引言 在Java中提供了三种IO模型:BIO.NIO.AIO,模型的选择决定了程序通信的性能. 1.1.使用场景 BIO BIO适用于连接数比较小的应用,这种IO模型对服务器资源要求比较高. NIO ...

  4. 文本三剑客之sed的用法

    第1章            Sed命令 1.1  sed 命令执行过程 1.2  sed介绍 sed是一种流编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(p ...

  5. Oracle12C安装配置文档

    Oracle12C安装配置文档   Oracle12C安装配置文档 准备软件: 开始安装: 打开从官网下载下来的两个压缩包,进行解压 打开解压好的后缀为2of2的文件夹找到路径为database下的“ ...

  6. 20190916-01linux文件与目录结构 000 001

    1./bin 是Binary的缩写,这个目录存放着最经常使用的命令 2./sbin s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序 3./home 存放普通用户的主目录,在 ...

  7. 干Java这一行,应该怎样提升自己?

    前段时间,字节跳动在阿里巴巴的大本营杭州悄悄的建立一个研发中心,最近在疯狂招人. 相信最近一段时间,杭州的很多的互联网公司的开发人员都接到过猎头的电话.据了解,字节跳动杭州研发中心主要负责字节跳动新增 ...

  8. CentOS 7 安装部署 cassandra作为kairosdb的数据存储

    环境 Centos 7.4 java 1.8.0 安装步骤 java yum -y install java-1.8.0-openjdk* cassandra wget https://mirrors ...

  9. Ubuntu18.04

    起因 晚上过来加班···· 问题 物理机安装ubuntu时候遇到报错信息 boot failed: please change disks and press a key to continue ht ...

  10. 【极致丝滑】彻底摆脱编辑器插件,利用postcss灵活可控地转换px至vw

    背景 旧的rem适配方案(无论是直接使用rem,还是配合flexiblejs等lib库进行视口缩放)已经疲态尽显,且随着安卓高清屏的不断出现,同时data-dpr仍有进一步增加的可能性,rem显得并不 ...