你的就是我的,我的还是我的。NFS教你怎么共享文件

NFS共享

  • 一、概述
    • 1.1 原理图
  • 二、在服务器使用NFS发布共享资源
    • 2.1 安装软件
    • 2.2 设置共享目录
    • 2.2 编辑共享文件
      • 名词解释
    • 2.3 启动NFS程序
    • 2.4 查看本机发布的NFS共享目录
  • 三、在客户端访问NFS共享资源
    • 3.1 安装软件包
    • 3.2 开启软件
    • 3.3 查看
    • 3.4 挂载
    • 3.5 共享完成
  • 四、设置一个网页共享
    • 4.1 服务器设置
      • 准备工作
      • 编辑网页内容
      • 设置共享文件
      • 挂载
    • 4.2 客户端设置
    • 4.3 测试

一、概述

NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源

  • NFS的服务实现依赖于RPC机制,以完成远程到本地的映射过程
    • RPC(远端过程调用)
  • 安装包需要 nfs-utils 和 rpcbind
    • nfs-utils 用于NFS共享发布和访问
    • rpcbind 用于RPC支持
  • NFS的配置文件为 /etc/exports
    • 格式: 共享的目录位置 客户机地址(权限选项)

1.1 原理图

你的就是我的,我的还是我的。NFS教你怎么共享文件_第1张图片

二、在服务器使用NFS发布共享资源

2.1 安装软件

yum -y install nfs-utils rpcbind
在这里插入图片描述

2.2 设置共享目录

  • mkdir -p /opt/wwwcc22
    • 创建一个共享的目录
  • chmod 777 /opt/wwwcc22
    • 给这个目录最高权限
      你的就是我的,我的还是我的。NFS教你怎么共享文件_第2张图片

2.2 编辑共享文件

  • vim /etc/exports
    • 进入文件编辑
/opt/wwwcc22 192.168.253.0/24(rw,sync,no_root_squash)				# 共享目录给这个网段
/share *(rw,sync)													# 共享给所有主机

在这里插入图片描述

名词解释

名词 解释
rw 允许读写
ro 只读
sync 同步写入到内存与硬盘中
no_root_squash 当客户机以root身份访问时赋予本地root权限(默认是root_squash)
root_squash 客户机用root用户访问该共享目录时,将root用户映射成匿名用户
allsquash 所有访问用户都映射为匿名用户或用户组
async 将数据先保存在内存缓冲区中,必要时才写入磁盘
subtree_check(默认) 若输出目录是一个子目录,则nfs服务器将检查其父目录的权限
no_subtree_check 即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限
anonuid=xxx 指定NFS服务器 /etc/passwd 文件中匿名用户的UID
anongid=xxx 指定NFS服务器 /etc/passwd 文件中匿名用户的GID

2.3 启动NFS程序

首先要关闭防火墙和安全功能

  • systemctl stop firewalld.service
  • setenforce 0

手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs

  • systemctl start rpcbind
    • 开启服务
  • systemctl start nfs
    • 开启服务
  • systemctl enable rpcbind
    • 加入自启动
  • systemctl enable nfs
    • 加入自启动

netstat -anpt | grep rpcbind
查看rpcbind端口是否开启,rpcbind默认使用tcp端口111

2.4 查看本机发布的NFS共享目录

  • exportfs -rv
    • 发布共享
      你的就是我的,我的还是我的。NFS教你怎么共享文件_第3张图片

三、在客户端访问NFS共享资源

3.1 安装软件包

  • yum -y install nfs-utils rpcbind

3.2 开启软件

关闭防火墙和安全

  • systemctl stop firewalld.service
  • setenforce 0

开启服务

  • systemctl start rpcbind
    • 开启服务
  • systemctl enable rpcbind
    • 设置自启动

3.3 查看

  • showmount -e 192.168.253.33
    • 查看NFS服务器端共享了哪些目录
      你的就是我的,我的还是我的。NFS教你怎么共享文件_第4张图片

3.4 挂载

  • mkdir /cc33
    • 创建一个目录
  • mount 192.168.253.22:/opt/wwwcc22 /cc33
    • 挂载服务器的目录过来
      你的就是我的,我的还是我的。NFS教你怎么共享文件_第5张图片

自动挂载

  • vim /etc/ fstab
192.168.80.22:/opt/wwwcc22 /cc33 nfs defaults, netdev 0 0

netdev:表示挂载设备需要网络

3.5 共享完成

当服务器上传文件结束后,客户端可直接读取到
在这里插入图片描述

四、设置一个网页共享

4.1 服务器设置

准备工作

软件安装
需要安装nfs-utils、 rpcbind、httpd软件

开启服务

  • systemctl stop firewalld.service
    • 关闭防火墙
  • setenforce 0
    • 安全机制关闭
  • systemctl start rpcbind
  • systemctl start nfs
  • systemctl enable rpcbind
  • systemctl enable nfs
  • systemctl start httpd

编辑网页内容

安装完httpd后,在var目录下会自动生成一个目录

  • cd /var/www/html
    • 进入该目录
  • vim index.html
    • 编辑网页内容

设置共享文件

  • vim /etc/exports
  • /var/www/html 192.168.253.0/24(ro)
    • 共享给80网段的设备

挂载

你的就是我的,我的还是我的。NFS教你怎么共享文件_第6张图片

4.2 客户端设置

软件开启

[root@cc22 ~]# systemctl stop firewalld.service 
[root@cc22 ~]# setenforce 0
[root@cc22 ~]# systemctl start rpcbind
[root@cc22 ~]# systemctl enable rpcbind
[root@cc22 ~]# systemctl start httpd

挂载
你的就是我的,我的还是我的。NFS教你怎么共享文件_第7张图片

4.3 测试

访问自己网页没问题
你的就是我的,我的还是我的。NFS教你怎么共享文件_第8张图片

客户端访问也没问题
你的就是我的,我的还是我的。NFS教你怎么共享文件_第9张图片

你可能感兴趣的:(Linux,运维,服务器,nfs,bind,centos)