博主简介CSDN博客专家云计算领域优质创作者华为云开发者社区专家博主阿里云开发者社区专家博主交流社区运维交流社区 欢迎大家的加入 希望大家多多支持我们一起进步如果文章对你有帮助的话欢迎 点赞 评论 收藏 ⭐️ 加关注文章目录一、NFS简介与RPC简介1. NFS服务简介2. RPC协议简介3. NFS工作流程二、准备工作2.1 服务器信息2.2 防火墙配置2.3 selinux沙盒三、部署并启动 NFS 和 RPC 服务四、服务端配置共享目录五、客户端挂载共享目录及配置永久挂载5.1 查看NFS服务共享信息5.2 创建目录并进行临时挂载测试5.3 永久挂载5.4 取消挂载5.4.1 临时取消挂载5.4.2 永久取消挂载一、NFS简介与RPC简介1. NFS服务简介NFS是一种网络协议NFS依赖RPC才能工作。RHEL5.0上是NFS V3而RHEL6.0上是NFS V4NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”它是独立于操作系统容许不同硬件及操作系统的系统共同进行文件的分享。NFS在文件传送或信息传送过程中依赖于RPC协议。RPC远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的但NFS却能让我们通过网络进行资料的分享这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以这么理解RPC和NFS的关系NFS是一个文件系统而RPC是负责信息的传输。2. RPC协议简介RPCRemote Procedure Call远程过程调用它是一种通过网络从远程计算机程序上请求服务而不需要了解底层网络技术的协议。其工作在TCP/UDP的111端口。建立在Socket之上的主要是简化编程的工作在底层提供网络之间的通信。RPC采用客户机/服务器模式。请求程序就是一个客户机而服务提供程序就是一个服务器。首先客户机调用进程发送一个有进程参数的调用信息到服务进程然后等待应答信息。在服务器端进程保持睡眠状态直到调用信息的到达为止。当一个调用信息到达服务器获得进程参数计算结果发送答复信息然后等待下一个调用信息最后客户端调用进程接收答复信息获得进程结果然后调用执行继续进行。RPC远程过程调度NFS 协议本身并没有网络传输功能而是基于远程过程调用协议实现的提供一个面向过程的远程服务的接口可以通过网络从远程主机程序上请求服务而不需要了解底层网络技术的协议工作在 OSI 模型的会话层它可以为遵从 RPC 协议应用层协议提供端口注册功能事实上有很多服务NFS 和 NIS 等都可以向 RPC 注册端口RPC 使用网络端口 111 来监听客户端的请求3. NFS工作流程1.首先服务器端启动RPC服务并开启111端口2.然后还需要服务器端启动NFS服务并向RPC注册端口信息3.客户端启动RPCportmap服务向服务端的RPC(portmap)服务请求服务端的NFS端口4.服务端的RPC(portmap)服务反馈NFS端口信息给客户端。5.客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。挂载原理当我们在NFS服务器设置好一个共享目录/opt 后其他人是有权访问/opt这个共享目录的NFS客户端就可以将这个目录挂载到自己文件系统的某个挂载点这个挂载点可以自己定义路径不同也可以如下图客户端A与客户端B挂载的目录就不相同。并且挂载好后我们在本地能够看到服务端/opt下的所有数据。二、准备工作2.1 服务器信息主机操作系统IP服务端口服务端centos172.16.11.201nfs、rpc2049、111客户端centos172.16.11.202nfs、rpc2049、1112.2 防火墙配置关闭防火墙服务# 关闭防火墙systemctl stop firewalld# 禁止防火墙开机自启systemctl disable firewalld如果是必须要开启防火墙可以使用两种方法开端口或服务# 开启nfs和rpc服务firewall-cmd--permanent--add-servicenfs firewall-cmd--permanent--add-servicerpc-bind# 重载防火墙规则firewall-cmd--reload# 放行端口# nfs端口为2049、rpc端口为111firewall-cmd--permanent--add-port2049/tcp firewall-cmd--permanent--add-port111/tcp firewall-cmd--permanent--add-port111/udp# 重载防火墙规则firewall-cmd--reload如果使用的是iptables防火墙可以使用以下命令iptables-AINPUT-ptcp--dport2049-jACCEPT iptables-AINPUT-ptcp--dport111-jACCEPT iptables-AINPUT-pudp--dport111-jACCEPT iptables-save/etc/sysconfig/iptables2.3 selinux沙盒# 临时关闭setenforce0# 永久关闭vim/etc/selinux/config# 将selinux修改为disabled修改配置文件永久生效要重启服务器三、部署并启动 NFS 和 RPC 服务两台都安装nfs-utils为 nfs 服务端、rpcbind为 nfs 客户端# yumyuminstall-ynfs-utils rpcbind# aptaptinstall-ynfs-kernel-server启动 nfs 服务并配置开机自启所有节点systemctlenable--nownfs查看服务状态systemctl status nfs systemctl status rpcbind四、服务端配置共享目录安装完成之后 nfs 会自动创建一个系统程序用户nfsnobody可使用命令cat /etc/passwd查看创建需要作为共享目录的目录并给nfs权限注意磁盘空间占用主节点创建即可# 创建一个需要共享的共享目录mkdir-p/data/nfs# 给此目录nfs用户权限chown-Rnfsnobody:nfsnobody /data/nfs配置共享目录/etc/exports定义哪些地址可以访问主节点配置NFS配置文件格式共享目录 [客户端1(参数)] [客户端2参数]共享目录NFS服务器需要共享的实际路径绝对路径客户端可以访问共享目录的服务器地址或网段。vim/etc/exports# 添加以下内容# 共享目录 允许访问的网段或IP(权限参数)# 示例允许 172.16.11.0/24 网段的所有机器以读写(rw)方式访问也可以采用ip方式/data/nfs172.16.11.0/24(rw,sync,no_subtree_check,no_root_squash)参数说明参数含义rw读写权限sync同步写入保证数据安全no_subtree_check禁用子树检查提升性能no_root_squash客户端 root 用户保持 root 权限重启服务端NFS和RPC服务systemctl restart nfs rpcbind客户端常用形式客户端说明172.16.11.202指定IP地址的主机172.16.11.0/24指定该网段所有主机172.16.10.*指定子网的所有主机www.xxx.com指定域名的主机*.xxx.com指定域中的所有主机*所有主机常用参数解析参数参数解析ro只读rw读写sync同时将数据写入到内存与硬盘中保证不丢失数据async优先将数据保存到内存然后再写入硬盘效率更高但可能会丢失数据root_squash当NFS客户端以root管理员访问时映射为NFS服务器的匿名用户no_root_squash当NFS客户端以root管理员访问时映射为NFS服务器的root管理员all_squash无论NFS客户端使用什么账户访问均映射为NFS服务器的匿名用户no_all_squash保留共享文件的UID和GID默认no_subtree_check禁用子树检查提升性能五、客户端挂载共享目录及配置永久挂载注意1、挂载目录服务端的数据会覆盖客户端的数据1、挂载目录服务端的数据会覆盖客户端的数据1、挂载目录服务端的数据会覆盖客户端的数据执行mount挂载的为客户端2、如果卸载挂载提示设备正忙umount.nfs4: /data/test: device is busy可以使用umount -l /data/test不过存在一定风险容易丢失数据5.1 查看NFS服务共享信息客户端、服务端都可以执行指定的是nfs服务器的IP地址命令showmount[选项](参数/服务端IP)-d仅显示已被NFS客户端加载的共享目录-e显示NFS服务器上所有的共享目录。查看# 这个命令需要安装nfs-utlisshowmount-e172.16.11.201[rootlocalhost ~]# showmount -e 172.16.11.201Export listfor172.16.11.201: /data/nfs1172.16.11.0/245.2 创建目录并进行临时挂载测试在客户端创建要挂载的目录比如也在/data/nfs其他位置也可以mkdir/data/nfs临时挂载在客户端执行挂载目录命令mount -t指定挂载的文件类型nfs服务端的IP:服务端要共享的路径目录要挂载到本机的路径目录mount-tnfs172.16.11.201:/data/nfs /data/nfs如果遇到以下报错有可能是目录权限问题、服务端配置文件ip范围写的有问题、防火墙、selinux问题mount.nfs: access denied by server while mounting 172.16.11.201:/data/nfs# 挂载完成df -Th进行检查df-Th# 进入挂载目录写入或删除数据进行测试连通性cd/data/nfstouch123# 在挂载目录或nfs主服务器目录进行查看5.3 永久挂载这样只是临时挂载重启服务器之后就会消失所以需要在客户端上配置永久挂载# 永久挂载需确认好ip和类型配置错误会导致服务器重启不了vim/etc/fstab# 追加以下内容确认好自己的服务端ip和挂载路径172.16.11.201:/data/nfs /data/nfs nfs defaults,nofail,x-systemd.automount,x-systemd.requiresnetwork-online.target,x-systemd.device-timeout3000保存退出之后重启服务器可以进行测试一旦写错重启服务器将造成启动不了服务器所以要谨慎保存退出之后重启服务器可以进行测试一旦写错重启服务器将造成启动不了服务器所以要谨慎保存退出之后重启服务器可以进行测试一旦写错重启服务器将造成启动不了服务器所以要谨慎挂载选项详解defaults这是标准的挂载默认值集合通常包含rw读写、suid、dev、exec、auto允许mount -a挂载和nouser等。对于 NFS它还会启用一些基础的 NFS 行为但具体的 NFS 协议参数如rsize、wsize通常会由系统自动协商。nofail这是防止服务器重启失败的关键。它告诉systemd这个挂载点不是启动的“必需”项。即使 NFS 服务器连不上或挂载失败系统也会继续完成启动过程而不会卡住或进入紧急模式。x-systemd.automount按需挂载。系统启动时不会立刻去挂载这个 NFS而是等到第一次有人访问/data/nfs目录时才触发挂载动作。这能进一步加快启动速度并避免在启动阶段因网络未就绪而挂载失败。x-systemd.requiresnetwork-online.target保证网络就绪。它强制要求systemd在尝试挂载之前先等待network-online.target这个目标达成即网络接口已配置并在线。这解决了“系统以为网络好了其实还没好就去挂载 NFS 导致失败”的常见时序问题。x-systemd.device-timeout30限制等待时间。它规定systemd最多等待设备这里是网络存储30 秒。如果 30 秒后 NFS 服务器还不可用就放弃等待并继续启动流程。结合nofail使用可以避免因 NFS 服务器故障导致启动过程被拖延过久默认等待时间可能长达 90 秒。关于“0 0”结尾这是fstab的标准字段第一个0dump备份标志对 NFS 无意义设为0。第二个0fsck检查顺序NFS 是网络文件系统不需要本地磁盘检查设为0。5.4 取消挂载5.4.1 临时取消挂载umount客户端挂载点umount服务端ip:服务端共享目录 举例umount/data/nfsumount172.16.11.201:/data/nfs如果遇到取消挂载报错或卡住可能是还在使用中这种一般不会让取消挂载需要确认还用不用如果真的不用可以强制取消挂载umount-lf172.16.11.201:/data/nfs-f强制卸载它的作用是“强制”执行卸载操作。对于 NFS 来说当服务器端不可达例如宕机或网络断开时普通的umount可能会一直等待或报错。加上-f后系统会直接执行卸载不再等待远程服务器的响应。-l惰性卸载它的作用是“惰性”卸载。系统会立刻把这个文件系统从目录树里“摘”下来让新的访问无法进入。但是如果此时还有进程正在使用这个挂载点里的文件比如有程序打开了里面的文件系统不会强行中断它们而是会等这些进程释放引用后在后台悄悄完成最终的清理。5.4.2 永久取消挂载如果是配置了有永久挂载才需要用到这里先临时取消挂载按照上面的方法进入/etc/fstab中把172.16.11.201:/data/nfs /data/nfs nfs defaults,nofail,x-systemd.automount,x-systemd.requiresnetwork-online.target,x-systemd.device-timeout30 0 0这一行删除就可以了。
企业数字化 ERP 产品动态
相关推荐
推荐项目:Gitchain - 分布式P2P Git网络 推荐项目:Gitchain - 分布式P2P Git网络
1、项目介绍
Gitchain是一个创新的开源项目,它将比特币、Namecoin和分布式哈希表(DHT)的理念应用到Git托管中。简单来说,Gitchain构建了一个去中心化的P2P Git网络,… · 2026/11/15 23:02:30
STC单片机远程升级(1)单机版 STC_OTA云端升级 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 23:02:28
【STM32 + CubeMX】 新建一个工程(STM32F103) /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 4:11:58
ic电工证真伪怎么查?多少钱?别再被假证坑了! ic电工证真伪怎么查?多少钱?别再被假证坑了! 怕考不过白交培训费,这事儿真不是危言耸听。最近有个朋友,花了三千多块钱报了个电工证培训班,结果到手的证查了查,发现是假的,不仅不能上岗,连企业都不认。你是不是也担心自己辛辛苦苦花钱培训,最后换… · 2026/11/15 23:01:56
低压电工证必会知识点:证书过期了不知道怎么复审延期?官方报名入口全知道 低压电工证必会知识点:证书过期了不知道怎么复审延期?官方报名入口全知道 证书过期了不知道怎么复审延期?你不是一个人。现在全国范围内,特种作业证的监管越来越严格,低压电工证作为最常见的一种,也成了很多电工师傅的“生命线”。但很多持证人一到复审… · 2026/11/15 23:01:56
贵阳索工特种工艺官方回应实操考试考什么?报名避坑全知道 贵阳索工特种工艺官方回应实操考试考什么?报名避坑全知道 你是不是也像我一样, 不知道去哪报名怕被中介坑 ?最近我身边不少信阳浉河区的建筑工人,都在问贵阳索工特种工艺相关的问题,特别是关于实操考试和报名流程。今天我就从一线工人的角度出发,把贵… · 2026/11/15 23:01:56
邹平电工证在哪里学真实经历告诉你怎么避开中介坑 邹平电工证在哪里学真实经历告诉你怎么避开中介坑 你是不是也在找【邹平电工证在哪里学】?身边有人推荐、网上搜到一堆机构,但又怕被中介坑?我自己也走过弯路,后来才知道,真正的电工证办理其实没那么复杂,关键是要找对门路,避免踩坑。今天就来跟你聊聊… · 2026/11/15 23:01:56
安微特种作业操作证怎么考?郑州报考避坑指南教你避开这些坑 安微特种作业操作证怎么考?郑州报考避坑指南教你避开这些坑 工地太忙根本没时间复习考试,这几乎是每个特种作业人员都遇到过的现实问题,尤其是像你这样在三门峡水利工程一线打拼的兄弟,整天在工地上跑来跑去,哪还有时间坐下来系统学习?今天我就从一个干… · 2026/11/15 23:01:56
全国电工证历年试题在哪考?学历不高也能拿证的干货来了 全国电工证历年试题在哪考?学历不高也能拿证的干货来了 你是不是也担心自己学历不高, 全国电工证历年试题 怎么考都考不过?别急,今天我就从一个干了十年的老实人角度,给你说说怎么 在哪考 ,怎么避坑,怎么把证拿到手。… · 2026/11/15 23:00:55
长春初级电工证怎么考?通过率揭秘全在这里 长春初级电工证怎么考?通过率揭秘全在这里 之前考的证在外省能不能转过来?这几乎是每个想从事电工工作的人都会问的问题。特别是那些在外地打拼多年、手里握着一张“外地电工证”的人,到了长春想继续干这一行,第一反应就是“我的证能用吗?”。今天我们就… · 2026/11/15 0:00:50
国内电工证报考条件与考试时间 低压电工证怎么考?学历不高也能报名,官方报名入口全在这 你是不是经常听说“电工证是入行门槛”,但又担心自己学历不够、经验不足,根本报不了名?别急,今天就带你从零了解【国内电工证】的报考流程、考试内容,还有怎么在 官方报名入口… · 2026/11/15 0:00:50
电工作业时如何断电?电子证书到底能不能全国通用? 电工作业时如何断电?电子证书到底能不能全国通用? 实操考试心里没底怕挂科,特别是电工作业时如何断电这一操作,不仅关系到你能不能拿到证书,更关系到以后能不能顺利上岗。很多人觉得这不过就是“断个电”,但其实这里面的门道可不少,稍有不慎就可能出错… · 2026/11/15 0:00:50
长春初级电工证怎么考?通过率揭秘全在这里 长春初级电工证怎么考?通过率揭秘全在这里 之前考的证在外省能不能转过来?这几乎是每个想从事电工工作的人都会问的问题。特别是那些在外地打拼多年、手里握着一张“外地电工证”的人,到了长春想继续干这一行,第一反应就是“我的证能用吗?”。今天我们就… · 2026/11/15 0:00:50
国内电工证报考条件与考试时间 低压电工证怎么考?学历不高也能报名,官方报名入口全在这 你是不是经常听说“电工证是入行门槛”,但又担心自己学历不够、经验不足,根本报不了名?别急,今天就带你从零了解【国内电工证】的报考流程、考试内容,还有怎么在 官方报名入口… · 2026/11/15 0:00:50
电工作业时如何断电?电子证书到底能不能全国通用? 电工作业时如何断电?电子证书到底能不能全国通用? 实操考试心里没底怕挂科,特别是电工作业时如何断电这一操作,不仅关系到你能不能拿到证书,更关系到以后能不能顺利上岗。很多人觉得这不过就是“断个电”,但其实这里面的门道可不少,稍有不慎就可能出错… · 2026/11/15 0:00:50
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 1:51:20
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 4:02:19
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 3:02:05