NFS,是Network File System的简写,即网络文件系统。网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。

  • 查看是否已安装:

  • CentOS7:

  • rpm -qa | grep nfs-*
  • 如果没有安装,则执行
  • yum install -y nfs-utils rpcbind
  • NFS 服务器配置文件常用参数

    • 配置文件介绍(记得先备份): 

    • vim /etc/exports
    • 默认配置文件里面是没啥内容的,我们需要自己加上配置内容,一行表示共享一个目录。为了方便使用,共享的目录最好将权限设置为 777(chmod 777 目录名)。

    • 假设在配置文件里面加上:/opt/mytest 192.168.0.0/55(rw,sync,all_squash,anonuid=501,anongid=501,no_subtree_check)

    • 该配置解释:

      • /opt/mytest 表示我们要共享的目录
      • 192.168.0.0/55 表示内网中这个网段区间的IP是可以进行访问的,如果要任意网段都可以访问,可以用 * 号表示
      • (rw,sync,all_squash,anonuid=501,anongid=501,no_subtree_check) 表示权限
        • rw:是可读写(ro是只读)
        • sync:同步模式,表示内存中的数据时时刻刻写入磁盘(async:非同步模式,内存中数据定期存入磁盘)
        • all_squash:表示不管使用NFS的用户是谁,其身份都会被限定为一个指定的普通用户身份。(no_root_squash:其他客户端主机的root用户对该目录有至高权限控制。root_squash:表示其他客户端主机的root用户对该目录有普通用户权限控制)
        • anonuid/anongid:要和root_squash或all_squash选项一同使用,表示指定使用NFS的用户被限定后的uid和gid,前提是本图片服务器的/etc/passwd中存在这一的uid和gid
        • no_subtree_check:不检查父目录的权限
    • 修改完后重新加载exports配置
    • exportfs -r  #重载exports配置
      -a 全部挂载或卸载 /etc/exports中的内容
      -r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
      -u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
      -v 输出详细的共享参数  
    • 二、配置端口

      nfs除了主程序端口2049和rpcbind的端口111是固定以外,还会使用一些随机端口,以下配置将定义这些端口,以便配置防火墙

    • # vim /etc/sysconfig/nfs
      #追加端口配置
      MOUNTD_PORT=4001  
      STATD_PORT=4002
      LOCKD_TCPPORT=4003
      LOCKD_UDPPORT=4003
      RQUOTAD_PORT=4004

    防火墙放开端口

    
    # iptables -I INPUT 5 -p tcp -m tcp --dport 111 -j ACCEPT
    # iptables -I INPUT 5 -p udp -m udp --dport 111 -j ACCEPT
    # iptables -I INPUT 5 -p tcp -m tcp --dport 2049 -j ACCEPT
    # iptables -I INPUT 5 -p udp -m udp --dport 2049 -j ACCEPT
    # iptables -I INPUT 5 -p tcp -m tcp --dport 4001:4004 -j ACCEPT
    # iptables -I INPUT 5 -p udp -m udp --dport 4001:4004 -j ACCEPT
    # iptables-save >/etc/sysconfig/iptables

    重新启动服务

    # systemctl start rpcbind.service
    # systemctl enable rpcbind.service
    # systemctl start nfs.service
    # systemctl enable nfs.service

    启动顺序一定是rpcbind->nfs,否则有可能出现错误

    客户端挂载

    1、直接挂

    # mount -t nfs nfs.st.local:/var/nfs /mnt

    也可将挂载配置写入fstab文件中,与普通磁盘挂载一样,挂载时同样可以指定权限,只是类型为nfs。

  • 2、autofs挂载

    # yum -y install autofs
    # vi /etc/auto.master
    #添加一行
    /- /etc/auto.mount
    # vi /etc/auto.mount
    #添加一行
    /mnt -fstype=nfs,rw nfs.st.local:/var/nfs

    #启动服务
    # systemctl start autofs
    # systemctl enable autofs

    故障解决:

    1、nfs只能挂载为nobody

    同时修改服务端、客户端/etc/idmapd.conf中的Domain为一样的值,随后重启rpcidmapd服务,或重启所有服务

    2、客户端无法卸载nfs目录

    umount.nfs4: /var/nfs: device is busy

    执行fuser -km /var/nfs/,然后再执行umount

CentOS7配置NFS网络文件系统的更多相关文章

  1. 二十五 存储技术与应用 iSCSI技术应用 、 udev配置 NFS网络文件系统 、 Multipath多路径 、 NFS网络文件系统 、 udev配置

    1.配置iSCSI服务 服务器上要额外配置一块硬盘 服务端(proxy)安装target,并将新加的硬盘配置为iSCSI 的共享磁盘 在客户端(client)上安装initiator,挂载服务器iSC ...

  2. NFS网络文件系统的配置

    NFS网络文件系统的配置 NFS网络文件系统 NFS(network file system)网络文件系统.一种使用于分散式文件协定,有SUN公司开发.功能是通过网络让不同的机器.不同的操作系统能够分 ...

  3. Linux基础学习-NFS网络文件系统实时文件共享

    NFS网络文件系统 如果大家觉得Samba服务程序的配置太麻烦了,那么你共享文件的主机都是Linux系统,那么推荐大家在客户端部署nfs服务来共享文件.nfs(网络文件系统)服务可以将远程Linux系 ...

  4. Linux系统NFS网络文件系统

    Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...

  5. [学习嵌入式开发板]iTOP-4412实现NFS网络文件系统

    本文转自迅为:http://www.topeetboard.com 学习平台:iTOP-4412开发板 本文讲解如何在 iTOP-4412 开发板上实现 NFS 网络文件系统. 我们使用的软硬件环境是 ...

  6. NFS(网络文件系统的搭建)

    关于NFS的原理,我在这就不概诉了,其实非常简答的理解就是一个网络磁盘,你需要把它挂载到你的磁盘上使用而已.那接下来谈谈如和搭建NFS网络文件系统. 需要使用2台机器作此实验,我分别配置IP为192. ...

  7. ubuntu 10.10配置NFS网络共享步骤

    安装好交叉编译环境arm-linux-gcc之后,就开始配置NFS网络共享,用于不同的linux主机与目标机之间文件的共享.如果是windows和linux的共享则需用samba服务. NFS(Net ...

  8. 三者互ping,PC,虚拟机,uboot,nfs网络文件系统搭建

    要想实现三者互ping,韦老师虽然专门出了视频说明,但是在自己配置过程还是出现了问题,这里记录一下解决办法,虽然我也不知道原因,但是解决了出现的问题也实现了三者互ping. 首先,我的硬件设备是PC通 ...

  9. Linux系统——NFS网络文件系统

    在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享视频,图片,附件等静态资源文件,通常网站用户上传的文件都会放到NFS共享里,然后前端所有的节点访问这些静态资源时都会读取NFS存储上的资 ...

随机推荐

  1. DevExpress WPF v19.1新版亮点:Ribbon等控件新功能

    行业领先的.NET界面控件DevExpress 日前正式发布v19.1版本,本站将以连载的形式介绍各版本新增内容.在本系列文章中将为大家介绍DevExpress WPF v19.1中新增的一些控件及部 ...

  2. ZROI 19.07.31 AB班ACM

    写在前面:非常感谢cjc和djh两位神仙带我,非常感谢他们给了我一次躺赢的机会. 虽然我被硬点成了代码手,但我写的基本每次都有一堆罚时.然而djh爷全部1A,tql. 题目按照一血时间升序,大致符合难 ...

  3. 在postman中请求的接口有csrf怎么办

    今天在写项目的时候,写了一个post接口,为了防止crsf攻击,config.defalut.js文件中加了如下代码: exports.security = { csrf: { ignoreJSON: ...

  4. MySQL的启动关闭及登录退出

    1启动和关闭: (1)此电脑->管理->搜索服务->查看本地服务->找到MySQL57然后选择启动 (2)同样步骤进行关闭 作为程序员,打开和关闭的方式当然要更多一点,打开cm ...

  5. csc.exeCPU100%

    可以通过nuget把Microsoft.CodeDom.Providers.DotNetCompilerPlatform和Microsoft.Net.Compilers这两个包卸载

  6. python学习之路(23)

    类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各 ...

  7. spring cloud:gateway-eureka-filter

    Spring Cloud Gateway 的 Filter 的生命周期不像 Zuul 的那么丰富,它只有两个:“pre” 和 “post”. PRE: 这种过滤器在请求被路由之前调用.我们可利用这种过 ...

  8. jieba(结巴)常用方法

    python jieba库的基本使用   第一步:先安装jieba库 输入命令:pip install jieba jieba库常用函数: jieba库分词的三种模式: 1.精准模式:把文本精准地分开 ...

  9. 对AC自动机+DP题的一些汇总与一丝总结 (2)

    POJ 2778 DNA Sequence (1)题意 : 给出m个病毒串,问你由ATGC构成的长度为 n 且不包含这些病毒串的个数有多少个 关键字眼:不包含,个数,长度 DP[i][j] : 表示长 ...

  10. Array Stack Implement using C