nfs-networkfilesystem网络文件系统的实现原理(代码片段)

小小工匠 小小工匠     2023-03-13     728

关键词:

文章目录


Pre

NFS - MIPS架构下构建NFS共享目录服务


NFS简介

NFS的全称是Network FileSystem,即网络文件系统

NFS最初是由 Sun Microsytem 公司开发出来的,主要实现的功能是让网络上的不同操作系统之间共享数据。

  • NFS首先在远程服务器端(共享数据的操作系统)共享出文件或者目录

  • N然后远端共享出来的文件或者目录就可以通过挂载(mount)的方式挂接到本地的不同操作系统上

  • N最后,本地系统就可以很方便地使用远端提供的文件服务,操作起来像在本地操作一样,从而实现了数据的共享。


NFS共享数据结构图

NFS由两个部分组成,NFS服务器和NFS客户端。

  • NFS服务器端主要负责共享数据和相关的权限设定,
  • 而多个NFS客户端可以同时挂载共享出来的数据到自己指定的一个目录。

例如,NFS客户端A将NFS服务器共享的目录挂载到了自己指定的/home/share目录下,而NFS客户端B将共享的目录挂载到了/data目录。接着进入挂载点目录,就能看到从服务器端共享出来的文件了。

如果有足够的权限,还可以对这些共享资源进行复制、移动、修改、删除等操作。


NFS服务器的实现原理

NFS服务器启动后,都会开启对客户端连接对应的端口号,端口号的范围是1~1024,但每次启动NFS服务器,相应服务器端口号都各不相同。

为了确保客户端每次都能正确连接到NFS 服务器端,NFS通过一个远程过程调用(Remote Procedure Call,RPC)的协议来协助NFS服务器完成连接。

程序可以通过使用这种协议向网络中另一台计算机上的程序请求服务,在NFS中,RPC 最主要的功能就是指定并监控NFS守护进程对应的端口号,并将端口信息通知给客户端,让客户端可以连接到正确的端口上来,因此也可以说,NFS是一个RPC服务器。

需要注意的是,远程挂载NFS服务器的本地主机也需要同步启用RPC协议。

要使用NFS服务器,需要在NFS服务器端至少启用两个系统守护进程(daemons),分别是rpc.nfsd和rpc.mountd。

  • rpc.nfsd:用于分析和管理客户端PC是否有权限登录NFS服务器端主机,可以通过登入者的IP地址、用户ID等来判别。

  • rpc.mountd:用于管理NFS,在客户端PC通过rpc.nfsd的认证登录系统后,还必须要取得文件的使用权才能成功挂载进而使用文件。

要启动NFS服务器同样需要有两个系统服务才行,它们分别是portmap和nfs-utils。

  • portmap:RPC的 portmap管理器,它管理基于RPC服务的连接。
  • nfs-utils:提供rpc.nfsd及rpc.mountd这两个NFS守护进程的系统服务。

是否安装nfs

几乎所有的Linux发行版在安装系统时,都默认安装了NFS服务器。

这里以CentOS 7.1系统为例,介绍NFS的使用方法。首先通过下面的命令查看NFS服务器对应的rpm包是否安装。

[root@NFS Server ~]# rpm -qa|grep rpcbind
rpcbind-0.2.0-26.el7.x86_64 
[root@NFS Server ~]# rpm -qa|grep nfs  
nfs-utils-1.3.0-0.8.el7.x86_64
libnfsidmap-0.25-11.el7.x86_64

如果有类似上面的输出,表示NFS软件包已经安装。如果没有输出,就需要寻找NFS对应的rpm包,然后进行安装即可。


安装配置NFS

NFS - MIPS架构下构建NFS共享目录服务

linux❀rhce自研教学笔记-redhat8.2nfs服务教研笔记(代码片段)

...;客户端配置autofs自动挂载(4)配置autofs自动离线NFS-NetworkFileSystem网络文件系统:允许远程客户端以与本地文件系统类似的方式,来通过 查看详情

访问网络文件共享服务

第七单元访问网络文件共享服务  一挂载网络文件系统网络文件系统是由网络附加存储服务器通过网络向多个主机提供的一种文件系统,而不是由块设备(例如硬盘驱动器)提供的。客户端通过特殊的文件系统协议和格式访问... 查看详情

2-7.访问网络文件共享服务

##访问网络文件共享服务####学习目标挂载网络共享自动挂载网络共享1.1##挂载网络文件系统网络文件系统是由网络附加存储服务器通过网络向多个主机提供的一种文件系统,而不是由块设备(例如硬盘驱动器)提供的。客户端通过特... 查看详情

nfs网络文件系统的搭建

 NFS网络文件系统的搭建什么是NFS网络文件系统?NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读... 查看详情

网络配置文件

  在网络配置工具中所有看到的配置信息,都是存放在Linux系统的网络配置文件中。所有用户可以通过直接更改配置文件的方法来对网络信息进行配置。2.1、网络设备配置文件  网络配置工具的设备列表框中的每一... 查看详情

nfs(网络文件系统)

NFS(网络文件系统)https://www.cnblogs.com/wahaha02/p/9559345.htmlLinux网络文件系统的实现与调试NFS协议NFS(网络文件系统)不是传统意义上的文件系统,而是访问远程文件系统的网络协议。整个NFS服务的TCP/IP协议栈如下图所示,NFS是应... 查看详情

无法播放网络音频文件

】无法播放网络音频文件【英文标题】:Cannotplaynetworkaudiofile【发布时间】:2012-10-0314:38:29【问题描述】:在iOS5中,以下代码适用于本地声音文件;但是,当我尝试网络上的相同文件(并且实际存在)时,它不会播放声音。它说... 查看详情

网络下载文件

/***从网络Url中下载文件*@paramurlStr*@paramfileName*@paramsavePath*@throwsIOException*/publicstaticvoiddownLoadFromUrl(StringurlStr,StringfileName,StringsavePath)throwsIOExceptionURLurl=newURL(urlStr);HttpUR 查看详情

ii第七单元访问网络共享文件系统

挂载网络文件系统网络文件系统是由网络附加存储服务器通过网络向多个主机提供的一种文件系统,而不是由块设备(例如硬盘驱动器)提供的。客户端通过特殊的文件系统协议和格式访问远程存储Linux中有两种主要协议可用访问网... 查看详情

nfs网络文件系统配置

NFS网络文件系统配置 NFS简介NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器... 查看详情

访问网络文件系统

############################访问网络文件系统################################cifs网络文件系统访问####yuminstallsamba-client-y  ##安装共享访问客户端smbclient-L//172.25.254.250##识别共享服务器共享目录**在输入时没有密码,直接回车。1.命令访... 查看详情

学习linux网络设置

目录查看网络接口信息ifconfig查看主机名称hostname查看路由表条目route查看网络连接情况netstat获取socket统计信息ss测试网络连接ping域名解析nslookup设置网络参数的方式设置网络接口参数ifconfig设置路由记录route网络接口配置文件启... 查看详情

通过网络共享在文件上写入文件

】通过网络共享在文件上写入文件【英文标题】:WriteFileonafileoveranetworkshare【发布时间】:2011-07-2218:30:36【问题描述】:我有一个读写大数据的程序。当写入本地驱动器上的文件时,读取和写入效果很好。当目标是网络共享时,... 查看详情

访问网络文件系统

############################访问网络文件系统############################ ####cifs网络文件系统访问####    CIFS是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS使用客户/服务... 查看详情

nfs网络文件系统

1.NFS概念  网络文件系统(NFS)是Unix系统和网络附加存储文件管理器常用的网络文件系统,允许多个客户端通过网络共享文件访问。它可用于提供对共享二进制目录的访问,也可用于允许用户在同一工作组中从不同客户端访问... 查看详情

nfs(网络文件系统)

系统版本:CentOS7.X概念NFS(NetworkFileSystem)名为网络文件系统,是一种用于网络中主机与主机之间共享文件的一种服务。它把主机上要共享的目录通过文件系统的方式挂载到网络中的主机上,让网络中的主机访问共享目录就如同... 查看详情

详细讲解nfs网络文件存储系统配置

详细讲解NFS网络文件存储系统配置-----------------------------------------------NFS优点--------------------------------NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。... 查看详情

网络配置文件

...由相关的配置文件:/etc/sysconfig/network-scripts/route-网卡名网络相关说明参考/usr/share/doc/initscripts-version/sysconfig.txt  #这个文件介绍的还是蛮细的 网卡的配置配置文件/etc 查看详情