zoukankan      html  css  js  c++  java
  • CentOs7.5安装配置NFS文件挂载

      NFS即网络文件系统,它允许网络中的计算机之间通过TCP/IP协议来共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。可以理解为把远端服务器上的文件挂载到本地客户端上,所以文件权限需要在远端服务器上进行配置。

      现在有2台服务器,server1(主):192.168.0.58, server2(从):192.168.0.119。

      一、服务端IP:192.168.0.58 ,共享文件路径:/usr/local/certs

      1,查看Linux系统信息:

    cat /etc/redhat-release
    

      2,查看是否安装了nfs 和 rpcbind。提示:之所以截图会有显示,是因为系统已经安装了nfs 和 rpcbind。

    rpm -aq | grep nfs  
    

    rpm -aq | grep rpcbind
    

      rpcbind是一个RPC服务,主要是在nfs共享时负责通知客户端,服务器的nfs端口号

       3,如果没有安装则需要安装这 nfs 和 rpcbind 两个服务

    yum install nfs-utils rpcbind
    

      4,增加nfs 配置

    vi /etc/exports
    

      4.1 加入共享信息:/usr/local/certs 192.168.0.119(rw,sync,no_root_squash)

       4.2 重新加载 NFS 服务配置文件 :exportfs -rv 

      参数说明:

      /usr/local/certs:共享文件夹

      192.168.0.119:挂载服务端目录的客户端ip

    共享参数说明:
    # ro				目录可读
    # rw				目录可读可写
    # sync				将数据同步写入内存缓冲区与磁盘中
    # async				将数据先写入内存缓冲区,有必要时才写入磁盘
    # all_squash		将远程访问用户及组全映射成默认用户或用户组nfsnobody(或nobody)
    # no_all_squash		与all_squash配置相反
    # root_squash		将root用户及所属组映射成默认用户或用户组
    # no_root_squash	与root_squash配置相反
    # anonuid			将远程访问用户映射成指定用户及ID的用户
    # anongid			将远程访问用户组映射成指定用户组ID的用户组

      5,启动 nfs 和 rpcbind 服务

      必须先启动rpcbind,再启动nfs,才能让NFS在rpcbind上注册成功

    service rpcbind start
    service nfs start  

      查看启动状态:

    service rpcbind status  
    

    service nfs status

       6,查看共享的服务:

    showmount -e
    

      

       7,查看rpc 服务注册状态:

    rpcinfo -p 192.168.0.58
    

      NFS服务使用的111和2049端口是固定的,mountd端口是动态的,需要固定,然后在防火墙放行,也可以暴力的直接关闭防火墙。

      、客户端IP:192.168.0.119 ,挂载文件路径:/usr/local/certs

      1,客户端也需要安装 nfs 和 rpcbind 服务,先查看系统信息是否和服务端系统同属于CentOs7,如果系统版本一致,参考服务端安装、启动、查看启动状态。

    yum install nfs-utils rpcbind
    service rpcbind start
    service nfs start  
    service rpcbind status  
    service nfs status 
    

      2,显示NFS 服务端共享文件列表:

    showmount -e 192.168.0.58
    

         3,创建挂载目录:mkdir /usr/local/certs

      4,挂载服务端的共享目录: mount -t nfs4 nfs服务器IP:/data  /data

    mount -t nfs -o nfs4 192.168.0.58:/usr/local/certs  /usr/local/certs
    

      查看挂载状态:

    df -h
    

      至此,NFS 文件共享服务端 和客户端配置成功。

       三、设置客户端开机自动挂载

    vi  /etc/fstab
    # 加上
    192.168.0.58:/usr/local/certs /usr/local/certs nfs defaults 0 0

      3.1 客户端挂载后,写文件时可能会报一个权限问题:Permission denied。

      解决这个问题可以修改nfs主服务器/etc/exports文件。

      方法一:较安全

      1),先查看uid:

    id root
    

      2),修改/etc/exports文件:

    /usr/local/certs  192.168.0.58(rw, sync ,fsid=0,anonuid=65534,anongid=65534)
    

      注:root用户的权限在尝试修改文件服务器上的文件时,文件系统将其识别为65534,匿名用户,限制了其写文件的权限。

        3),重新加载 NFS 服务配置文件 :exportfs  -rv , 可使用 exportfs  -v 查看配置。

      方法二:简单粗暴

       加了no_root_squash,也可以解决问题 , no_root_squash: 有root的权限,不建议使用

       直接修改/etc/exports为:

    /usr/local/certs 192.168.0.119(rw,sync,no_root_squash)
    

      

      参考:https://blog.csdn.net/Duke147/article/details/87810417

           https://blog.csdn.net/weiguang1017/article/details/53541219?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242

          https://www.bilibili.com/read/cv10536078/

          https://blog.csdn.net/weixin_42256397/article/details/97283989

          https://blog.csdn.net/d0_0b/article/details/8731957

     

  • 相关阅读:
    Saltstack_使用指南09_远程执行-编写执行模块
    Saltstack_使用指南08_远程执行-返回程序
    Saltstack_使用指南07_远程执行-执行模块
    Saltstack_使用指南06_远程执行-指定目标
    CentOS7 Docker私有仓库搭建及删除镜像 【转】
    Python Docker 查看私有仓库镜像【转】
    Saltstack_使用指南05_数据系统-Pillar
    Saltstack_使用指南04_数据系统-Grains
    Saltstack_使用指南03_配置管理
    Saltstack_使用指南02_远程执行-验证
  • 原文地址:https://www.cnblogs.com/tooker/p/15017281.html
Copyright © 2011-2022 走看看