NFS文件共享存储服务

  • 一、概述
  • 二、特点
  • 三、工作原理
  • 四、配置NFS
  • 1、实验环境
  • 2、实验准备
  • 3、实验步骤


一、概述

NFS(Network File System)是一种基于TCP/IP传输的网络文件系统协议,是由SUN公司研制的UNIX表示层协议(presentation layer protocol),其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。

二、特点

(1)提供透明文件访问以及文件传输;
(2)容易扩充新的资源或软件,不需要改变现有的工作环境;
(3) 高性能,可灵活配置。

三、工作原理

NFS的工作原理是使用客户端/服务器架构,由一个客户端程序和服务器程序组成。NFS传输协议用于服务器和客户机之间文件访问和共享的通信,从而使客户机远程地访问保存在存储设备上的数据,通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件,使得每个计算机的节点能够像使用本地资源一样方便地使用网上资源。换言之,NFS可用于不同类型计算机、操作系统、网络架构和传输协议运行环境中的网络文件远程访问和共享。

四、配置NFS

1、实验环境

  • NFS服务器端系统:CentOS 8,ip:192.168.245.141
  • NFS客户端系统:CentOS 7.6,ip:192.168.245.150

2、实验准备

  • 服务器端虚拟机添加一块硬盘用来提供共享目录

3、实验步骤

1、给服务器的新加硬盘分区

centos识别ntfs硬盘 centos 8 ntfs_nfs

centos识别ntfs硬盘 centos 8 ntfs_nfs配置_02


centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_03


2、格式化新分区

centos识别ntfs硬盘 centos 8 ntfs_nfs服务器_04


3、挂载新分区

centos识别ntfs硬盘 centos 8 ntfs_nfs配置_05


centos识别ntfs硬盘 centos 8 ntfs_centos 8_06


centos识别ntfs硬盘 centos 8 ntfs_nfs配置_07


4、服务器端安装nfs-server和rpcbind软件

yum install -y nfs-utils.x86_64 rpcbind.x86_64

centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_08


NFS的实现依赖于RPC(远程过程调用)机制,RPC充当NFS服务器和客户端的中介,以完成从远程到本地的映射过程,提供RPC支持的服务为rpcbind,提供nfs共享的服务为nfs-server,CentOS 8中需要安装nfs-util和rpcbind软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。

5、把nfs-server和rpcbind服务设置为开机自启,以便每次开机后自动启用

centos识别ntfs硬盘 centos 8 ntfs_nfs配置_09


centos识别ntfs硬盘 centos 8 ntfs_nfs服务器_10


6、编辑nfs配置文件,指定挂载的目录,挂载的网段和配置信息

vim /etc/exports

#nfs的主要配置文件

centos识别ntfs硬盘 centos 8 ntfs_nfs_11


7、启动nfs-server和rpcbind服务,先启动rpcbind再启动nfs-server

centos识别ntfs硬盘 centos 8 ntfs_centos 8_12


centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_13

systemctl stop firewalld.service

setenforce 0

centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_14


8、查看共享了的目录

showmount -e

centos识别ntfs硬盘 centos 8 ntfs_nfs_15

centos识别ntfs硬盘 centos 8 ntfs_nfs配置_16


9、客户端安装apache,为验证是否可以读取共享文件

centos识别ntfs硬盘 centos 8 ntfs_centos 8_17


centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_18


10、把共享目录挂载到客户端的/var/www/html/下面

mount 192.168.245.141:/mnt /var/www/html/

centos识别ntfs硬盘 centos 8 ntfs_centos 8_19

192.168.245.141:/mnt /var/www/html nfs defaults,_netdev 0 0
#编辑/etc/fstab文件永久挂载共享目录

centos识别ntfs硬盘 centos 8 ntfs_nfs_20

centos识别ntfs硬盘 centos 8 ntfs_nfs配置_21


11、编辑一个web页面用于测试

centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_22


12、开启apache服务

centos识别ntfs硬盘 centos 8 ntfs_centos 8_23


13、验证可以访问客户端的网页了

centos识别ntfs硬盘 centos 8 ntfs_nfs服务器_24


14、因为设置了同步,所以服务器端也跟着生成了index网页文件

centos识别ntfs硬盘 centos 8 ntfs_nfs配置_25


15、模拟服务器nfs服务器故障

centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_26


16:客户端无法进行操作

centos识别ntfs硬盘 centos 8 ntfs_nfs_27


17、新打开一个终端登陆到客户端,强制卸载共享目录

umount -lf /var/www/html

-l:解除正在繁忙的文件系统

-f:强制

centos识别ntfs硬盘 centos 8 ntfs_centos识别ntfs硬盘_28