Linux服务-NFS服务部署

NFS网络文件服务部署(rhel7)

  • 说明
    • 使用rhel7作为服务端,ubuntu作为客户端。
  • 简介
    • Network File System 网络文件系统
    • 用于unix/类unix系统之间进行文件共享
    • 开发者
      • sun
    • 版本
      • NFSv2
      • NFSv3
      • NFSv4
    • NFS端口
      • tcp 2049
  • 工作原理
    • C/S
    • RPC 远程过程调用
      • 为远程通信双方提供一些基本信息
      • 这就形成RPC管理连接,NFS专注文件服务
      • 在rhel7中由rpcbind提供RPC协议支持
      • v4版本不需要rpcbind提供服务,但依赖rpc.mountd
    • 通讯过程
      • 服务端启动RPC服务,开启111端口
      • 启动nfs服务,并向RPC注册端口信息
      • 客户端启动RPC(portmap),向服务器rpc请求NFS服务端口
      • 服务端反馈NFS端口信息给客户端
      • 客户端通过NFS端口信息访问NFS文件共享
  • 服务部署
    • 安装
      • 系统默认提供v4版本
      • 依赖软件包
        • nfs-utils
        • rpcbind
      • 软件安装
        • rpm -qa | grep nfs
        • yum install nfs-utils rpcbind -y
    • 配置
      • 服务开启(服务端)
        • systemctl restart rpcbind.service
        • systemctl restart nfs
        • systemctl restart nfs-server
        • systemctl enable nfs-server
        • firewall-cmd --permanent --add-service=nfs
        • firewall-cmd --permanent --add-service=mountd
        • firewall-cmd --permanent --add-service=rpc-bind
        • firewall-cmd --reload
      • 修改配置文件(服务端)
        • vim /etc/exports
        • 输入配置
        • 重启服务
          • systemctl restart rpcbind.service
          • systemctl restart nfs-server.service
      • 配置文件
        • /etc/exports
        • 内容为空
        • 格式
          • <共享目录> [客户端1 选项] [客户端2 选项]
          • 客户端指定方式
            • 所有主机 *
            • 指定ip地址主机 192.168.0.1
            • 指定网段 192.168.0.0/24 192.168.0.0/255.255.255.0
            • 指定域名主机 www.xxx.com
            • 指定域名中所有主机 *.xxx.com
          • 常用选项
            • ro 只读
            • rw 读写
            • all_squash 访问用户映射为匿名用户 NFS nobody
            • no_all_squash 上一个选项取反
            • root_squash 屏蔽远程root权限
            • no_root_squash 不屏蔽
            • anonuid 将访问用户映射为匿名用户,并制定为本地用户
            • anungid 将访问用户映射为匿名用户,并制定为组
            • sync 同步写入,效率低,但是保证数据一致性
            • async 将数据写入内存中即可,等待刷盘
      • 客户端访问(确保ping通)
        • 确保安装了nfs
          • sudo apt install nfs-kernel-server
          • 扫描共享文件
            • showmount
              • -a 列出nfs服务共享的完整目录信息
              • -d 仅列出客户端远程安装目录
              • - e 显示导出目录的列表
        • 查看共享目录
          • showmount -e 192.168.56.103
        • 挂载共享文件夹到本地
          • mkdir /mnt/share
          • mount -t nfs 192.168.56.103:/home/zhouchen/Desktop/share /mnt/share
            • 错误mount.nfs: access denied by server while mounting 192.168.56.103:/home/zhouchen/Desktop/share/
              • 这是由于v4版本造成的,编辑服务端/etc/sysconfig/nfs文件,修改为RPCNFSDARGS="-N 4"(有的注释,有的为空,改成这个格式即可),重启nfs-server.service服务
              • 可能由于端口大于1024,可以在服务端/etc/exports文件选项加入insecure
        • 操作共享内容
          • 挂载之后本地可见
          • 基础查看及创建
            • 创建文件访问被拒绝,服务端配置文件/etc/exports加入no_root_squash选项即可。
            • 客户端创建文件后,同步查看服务端目录,发现同步成功且已有文件也可同步修改,服务搭建成功。

猜你喜欢

转载自blog.csdn.net/zhouchen1998/article/details/86565195