当前位置:网站首页 > 微服务架构 > 正文

nfs 文件(nfs文件服务器)



NFS(Network File System,网络文件系统)是一种分布式文件系统协议,最初由Sun Microsystems开发,用于在计算机网络上共享文件。NFS 允许用户在不同的机器之间挂载远程文件系统,使得远程文件像本地文件一样访问操作

NFS 主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录。 NFS 也是 NAS 存储 设备必然支持的一种协议

NFS 服务器:负责共享其本地文件系统,使其在网络上可访问

NFS 客户端:通过网络挂载来自 NFS 服务器的文件系统,并将其集成到本地文件系统中

  1. 文件共享:在多个用户和设备之间共享文件,简化协作和数据访问。
  2. 备份与恢复:集中存储备份数据,方便快速恢复。
  3. 虚拟化与云计算:为虚拟机或容器提供共享存储,支持动态资源分配。
  4. 大数据处理:在集群计算环境中共享数据,提高数据处理效率。

NFS 服务的实现依赖于 RPC Remote Process Call ,远端过程调用)机制,以完成远程到本地的映射过程,在 CentOS 7 系统中,需要安装 nfs-utils rpcbind 软件包来提供 NFS 共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持手动加载 NFS 共享服务时,应该先启动 rpcbind ,再启动 nfs
NFS端口号2049 ;RPC端口号111

1 、假如访问的是 NFS 客户端,先调用不同的函数(例如 Read() 函数,读功能、 Write() 函数,写功能、 Create()函数,创建功能、 Remove() 函数、删除功能、 Rename() 函数,重命名功能)对数据进行处理
2 、调用完函数后,首先 NFS 客户端会建立 TCP 连接,通过 TCP/IP 的方式传递给 NFS 服务端,连上远端的服务器。
3 、接着 NFS 服务端接收到请求后, NFS 服务器会做 3 步系列操作(环环相扣,先映射端口,然后验证是 否能登录服务器,最后验证文件使用权限),如下: 首先,调用portmap 进程进行端口映射。
接着,调用 Rpc.nfsd 进程来验证 NFS 客户端是否拥有对应的权限连接 NFS 服务端。
最后,调用 Rpc.mount 进程来验证客户端是否拥有对应的文件使用权限;
4 Portmap 进程实现用户映射和压缩
5 、最后 NFS服务端会将对应请求的函数转换为本地能识别的命令,传递至内核,由内核驱动硬件

部署思路:
1 、安装 nfs rpcbind 软件
2 、修改配置文件设置共享
3 、创建共享目录 
4 、开启服务
5 、客户端验证共享目录可访问

部署步骤:

1.服务端配置

先检测一下服务有没有安装

vim   /etc/exports           #NFS 的配置文件为/etc/exports,文件内容默认为空

rw    表示可以读写;sync  表示同步;

no_root_squash 表示当客户机以 root 身份访问时赋予本地 root权限(默认是root_squash)

按顺序开启 rpcbind ;nfs 服务:

showmount -e localhost 可以查看共享是否成功:

2.客户端配置
首先先验证一下服务有没有安装
客户端验证共享

下载httpd服务

将服务端的/opt/web 挂载到/var/www/html

我们在客户端生成的目录和内容在服务端同步:

开启web服务之后可以成功访问网页内容:

挂载

客户端通过 mount命令挂载远程 NFS 文件系统

客户端向 NFS 服务器发送挂载请求,服务器验证并返回确认信息

文件操作

一旦挂载成功,客户端可以执行各种文件操作(如读、写、打开等)

每个文件操作通过 RPC 请求发送到 NFS 服务器

数据传输

NFS 服务器处理请求并返回操作结果或数据。客户端将这些数据集成到本地文件系统,用户无感知地进行操作。

到此这篇nfs 文件(nfs文件服务器)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 乔拓云网微信小程序制作怎么收费(乔拓云网微信小程序制作收费吗?)2025-02-06 07:36:07
  • win10 samba共享服务(samba文件共享服务器搭建)2025-02-06 07:36:07
  • 电力104协议讲解(电力104规约tcp服务器)2025-02-06 07:36:07
  • 微信hook机器人登陆掉线(微信机器人老是掉线)2025-02-06 07:36:07
  • pass提供的服务(哪个服务属于pass)2025-02-06 07:36:07
  • 微信hook发送消息(微信 hook 消息)2025-02-06 07:36:07
  • 腾讯会员怎么给别人用二维码登录微信(腾讯会员怎么给别人登陆微信)2025-02-06 07:36:07
  • 架设git服务器(git 服务器配置)2025-02-06 07:36:07
  • 个人服务器需要备案吗(服务器需要备案么)2025-02-06 07:36:07
  • 个人搭建服务器备案(私人服务器备案)2025-02-06 07:36:07
  • 全屏图片