news 2026/2/23 3:23:56

03. NFS服务器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
03. NFS服务器

NFS 服务介绍

在计算机网络存储领域,NFS(Network File System,网络文件系统)是一种实现不同计算机之 间文件共享的经典技术。它允许网络中的客户端计算机像访问本地文件一样,透明地访问远程服 务器上的文件资源,极大地简化了跨设备的数据共享与管理流程。

NFS 的核心架构

NFS 采用客户端 - 服务器(Client-Server)架构,主要由两部分组成:

  • NFS 服务器:负责存储文件资源,并通过 NFS 协议将这些资源共享给授权的客户端。服务 器上运行着 NFS 守护进程,用于监听客户端的请求、处理文件访问操作以及维护共享目录的 权限控制。
  • NFS 客户端:通过 NFS 协议访问服务器上的共享文件。客户端需要挂载(Mount)服务器 的共享目录到本地文件系统,之后就可以像操作本地文件一样对远程文件进行读写、创建、 删除等操作。

NFS 服务最佳实践

1. 部署服务

NFS服务由nfs-utils软件包提供。

# 安装软件包[root@server ~]# yum install -y nfs-utils# 准备用户[root@server ~]# useradd -u 1000 laoma[root@server ~]# echo redhat | passwd --stdin laoma# 准备共享目录[root@server ~]# mkdir -p /shares/webapp[root@server ~]# chown 48 /shares/webapp# apache 账户ID是48# 启用并启动服务[root@server ~]# systemctl enable nfs-server --now# 配置防火墙[root@server ~]# firewall-cmd --permanent --add-service=nfs --addservice=rpc-bind --add-service=mountd[root@server ~]# firewall-cmd --reload
命令片段作用说明
firewall-cmdfirewalld 的核心管理命令(区别于iptables
--permanent永久生效(不加此参数仅临时生效,重启 firewalld / 服务器后失效)
--add-service=nfs开放 NFS 服务(对应 firewalld 预定义的 nfs 服务规则,默认端口 2049)
--addservice=rpc-bind【笔误修正】正确写法是--add-service=rpc-bind(你少写了-),开放 rpc-bind 服务(RPC 绑定,默认端口 111)
--add-service=mountd开放 mountd 服务(NFS 挂载守护进程,端口动态分配,firewalld 预定义规则已适配)
--reload重新加载 firewalld 规则(使永久配置生效,无需重启服务)

2. 配置 NFS 导出

我们使用以下记录:

[root@server ~]# vim /etc/exports/shares/webapp10.1.8.0/24(rw)

每当您在/etc/exports或/etc/exports.d/*.exports中更改导出点时,请对NFS服务运行exportfs -r 命令确保更改生效,或者运行 systemctl reload nfs-server 。

[root@server ~]# exportfs -r# 或者[root@server ~]# systemctl reload nfs-server# 或者[root@server ~]# exportfs -av

3. 监视 NFS 导出

使用exportfs命令列出NFS服务器当前导出的目录。

[root@server ~]# exportfs/shares/webapp10.1.8.0/24

默认情况下,该命令不显示导出选项。 使用-v选项列出这些选项,包括缺省选项。

[root@server ~]# exportfs -v/shares/webapp10.1.8.0/24(sync,...,rw,secure,no_root_squash,...)

4. 客户端挂载

# 安装软件包[root@client ~]# yum install -y nfs-utils httpd[root@client ~]# id apacheuid=48(apache)gid=48(apache)=48(apache)[root@client ~]# systemctl enable httpd --now# 查看服务端提供的共享[root@client ~]# showmount -e 10.1.8.10Export listforserver: /shares/webapp10.1.8.0/24# 挂载[root@client ~]# mkdir -p /var/www/html[root@client ~]# mount -t nfs server:/shares/webapp /var/www/html# root用户不能创建[root@client ~]# touch /var/www/html/root-f1touch: cannottouch‘/var/www/html/root-f1’: Permission denied# apache 用户能创建[root@client ~]# su -l -s /bin/bash apache-bash-4.2$echoapache website>/var/www/html/web1.html

访问测试

[root@server ~]# curl http://10.1.8.11/Welcome to laoma website.[root@server ~]# curl http://10.1.8.11/web1.htmlapache website

5. 持久化挂载

修改 /etc/fstab,最后添加如下记录:

server:/shares/webapp /var/www/html nfs defaults00
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/21 5:31:09

网络信息安全工程师 应该怎样入门?需要有什么知识基础?零基础入门到精通,收藏这一篇就够了

网络安全工程师是一个很广泛的职业概称,只要是网络安全相关的从业者,都算是网络安全工程师。网络安全相关岗位很多,有信息安全工程师、渗透测试工程师、应急响应安全工程师、逆向安全工程师、溯源取证安全工程师、安全架构师、恶意软件安全分…

作者头像 李华
网站建设 2026/2/20 0:37:18

Python+Vue的毛茸茸宠物领养医疗购物综合系统 django Pycharm flask

这里写目录标题项目介绍项目展示详细视频演示感兴趣的可以先收藏起来,还有大家在毕设选题(免费咨询指导选题),项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人技术栈文章下方名片联系我即可~解决的思路…

作者头像 李华
网站建设 2026/2/22 16:18:27

Python+Vue的基于hive的网络电视剧推荐系统django Pycharm flask

这里写目录标题项目介绍项目展示详细视频演示感兴趣的可以先收藏起来,还有大家在毕设选题(免费咨询指导选题),项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人技术栈文章下方名片联系我即可~解决的思路…

作者头像 李华
网站建设 2026/2/21 9:18:44

Python+Vue的超市进销存管理系统 django Pycharm flask

收藏关注不迷路!!需要的小伙伴可以发链接或者截图给我 项目介绍 超市进销存管理系统是针对超市运营而设计的一套综合管理系统。超市进销存管理系统旨在提高超市的运营效率和管理水平,传统的超市商品管理都是人工手动的方式在进行管理&#xf…

作者头像 李华
网站建设 2026/2/19 16:13:14

从SolidWorks中导出机器人URDF模型

要把通过SolidWorks创建的机器人模型导出为URDF集成到ROS中,需要通过一个插件实现。 SolidWorks URDF导出插件的基础使用方法参考这篇文章 这里补充一些实用的操作。 通过添加草图实现基准轴和基准坐标系的定位 这需要你对SolidWorks的操作有一定的了解。 有时候…

作者头像 李华
网站建设 2026/2/19 6:12:18

开题报告零返工!虎贲等考 AI:一键搭建导师认可的学术骨架

开题报告改到崩溃?选题太泛被批 “无研究价值”、文献综述写成 “流水账”、技术路线图杂乱无章…… 这些堪称学术萌新的 “开题魔咒”,每年都让无数毕业生陷入 “写了改、改了毙” 的死循环。其实,一份能让导师眼前一亮的开题报告&#xff0…

作者头像 李华