Linux: NFS 服务部署与autofs自动挂载的配置

在这里插入图片描述

NFS(Network File System,网络文件系统)是一种基于 TCP/IP 协议的网络文件共享协议,允许不同主机在网络中共享文件资源,实现跨主机的文件访问与管理,广泛应用于 Linux/Unix 环境下的服务器集群、存储共享等场景。

通过 NFS,服务端可以将本地目录共享给指定的客户端,客户端无需物理存储该目录,即可像访问本地文件一样操作远程共享资源,极大简化了多主机间的文件同步与协作。以下是 NFS 服务的详细部署与配置步骤,包括服务端搭建、客户端挂载及自动挂载(autofs)的实现。

一、服务端部署步骤

1. 安装必要软件

yum -y install nfs-utils rpcbind
  • nfs-utils:提供 NFS 核心功能
  • rpcbind:负责 RPC 协议映射,NFS 依赖其运行

2. 准备共享目录

# 创建共享目录并添加测试文件
mkdir /common
touch /common/share# 配置目录权限(需与共享权限匹配)
chmod o=rwx /common  # 允许其他用户读写执行

3. 配置共享规则

编辑 /etc/exports 文件,定义共享目录及访问权限:

vim /etc/exports
# 添加如下内容:
/common  172.16.30.0/24(rw)
# 说明:允许172.16.30.0/24网段以读写(rw)权限访问/common目录

4. 启动服务并设置自启

# 重启服务(先启动rpcbind,再启动nfs-server)
systemctl restart rpcbind
systemctl restart nfs-server# 设置开机自启
systemctl enable nfs-server
systemctl enable rpcbind

5. 配置防火墙

开放 NFS 相关服务端口:

firewall-cmd --add-service=nfs --permanent
firewall-cmd --add-service=rpc-bind --permanent
firewall-cmd --add-service=mountd --permanent
firewall-cmd --reload  # 重载生效

二、客户端配置步骤

1. 配置 NFS 版本(推荐使用 v4)

# 禁用UDP和低版本(v2、v3),启用TCP和v4及以上版本
nfsconf --set nfsd udp no
nfsconf --set nfsd vers2 no
nfsconf --set nfsd vers3 no
nfsconf --set nfsd tcp yes
nfsconf --set nfsd vers4 yes
nfsconf --set nfsd vers4.0 yes
nfsconf --set nfsd vers4.1 yes
nfsconf --set nfsd vers4.2 yes

2. 手动挂载 NFS 共享

# 创建挂载点
mkdir /cy# 挂载NFS共享(服务端IP:172.16.30.10)
mount -t nfs 172.16.30.10:/common /cy/

3. 设置永久挂载(写入 /etc/fstab)

vim /etc/fstab
# 添加如下内容:
172.16.30.10:/common  /cy  nfs  defaults  0 0# 验证挂载配置
mount -a  # 无报错则配置正确

三、autofs 自动挂载配置(客户端)

自动挂载可实现 “访问时挂载,闲置时卸载”,节省资源。

1. 安装 autofs

yum -y install autofs

2. 启动服务并设置自启

systemctl restart autofs
systemctl enable autofs

3. 配置自动挂载规则

(1)编辑主配置文件 /etc/auto.master
vim /etc/auto.master
# 添加如下内容(定义主目录和子配置文件):
/cy/abc  /etc/auto.nfs
# 说明:/cy/abc为挂载主目录,/etc/auto.nfs为子配置文件
(2)创建子配置文件 /etc/auto.nfs
# 复制模板文件
cp /etc/auto.misc /etc/auto.nfs# 编辑子配置文件
vim /etc/auto.nfs
# 注释原有内容,添加:
chenyu  -fstype=nfs,vers=4,rw  172.16.30.10:/common
# 说明:访问/cy/abc/chenyu时,自动挂载172.16.30.10:/common(v4版本,读写权限)
(3)重启 autofs 生效
systemctl restart autofs

4. 验证自动挂载

# 访问挂载点时自动挂载
cd /cy/abc/chenyu
ls  # 可看到服务端共享的文件# 闲置一段时间后会自动卸载(默认5分钟)

总结

NFS 服务通过简单配置即可实现网络文件共享,客户端可通过手动挂载或 autofs 自动挂载访问。关键注意事项:

  • 服务端需正确配置/etc/exports和目录权限
  • 客户端推荐使用 NFSv4 版本,提升兼容性和安全性
  • 自动挂载适合非频繁访问的场景,减少资源占用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/92284.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/92284.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/92284.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习②】| DNN篇

0 序言 本文将系统介绍基于PyTorch的深度神经网络(DNN)相关知识,包括张量的基础操作、DNN的工作原理、实现流程,以及批量梯度下降、小批量梯度下降方法和手写数字识别案例。通过学习,你将掌握DNN的核心概念、PyTorch实…

Xcode 26 如何在创建的 App 包中添加特定的目录

功能需求 在某些情况下,我们需要将特定文件放在 Xcode 编译链接后 App 包里的指定目录中,比如将 AI 大模型相关文件放在它们对应名称的目录中: 正常情况下,Xcode 会将项目目录中的所有文件都平铺放到 App 包的根目录里。那么,要如何形成上面这种文件目录层级呢? 在本篇…

linux-系统性能监控

linux-系统性能监控一、cpu1.1 查看cpu的信息1.2 cpu性能指标1.3 编写监控cpu使用率的脚本1.4 查找出使用cpu最高的10个进程二、内存2.1 查看内存信息2.2 交换(swap)分区2.2.1 查看交换分区的积极程度2.2.2 查看交换分区的大小2.2.3 管理交换分区2.3 编写…

AgxOrin平台JetPack5.x版本fix multi-cam race condition 补丁

本文包含三个针对NVIDIA Linux驱动程序的补丁修复: 多摄像头竞争条件修复 在capture-ivc驱动中新增信号量机制,解决多摄像头同时操作时的竞争条件问题(Bug 4425972)。主要修改包括在通道上下文结构中添加信号量,并在通道ID通知和取消注册时进行信号量操作。 内存泄漏修复…

【Go】P3 Go语言程序结构

Go语言程序结构Go语言程序结构命名规则与编程惯例核心规则四种声明语句详解var声明:变量声明const声明:常量声明type声明:类型定义func声明:函数声明简短变量声明(:)使用规则和限制指针:安全的内存地址操作基本概念和操…

【机器学习深度学习】知识蒸馏实战:让小模型拥有大模型的智慧

目录 引言:模型压缩的迫切需求 一、知识蒸馏的核心原理 1.1 教师-学生模式 1.2 软目标:知识传递的关键 1.3 蒸馏损失函数 二、实战:Qwen模型蒸馏实现 2.1 环境配置与模型加载 2.2 蒸馏损失函数实现 2.3 蒸馏训练流程 2.4 训练优化技…

基于MCP提示构建工作流程自动化的实践指南

引言 在现代工作和生活中,我们经常被各种重复性任务所困扰——从每周的膳食计划到代码审查反馈,从文档更新到报告生成。这些任务虽然不复杂,却消耗了大量宝贵时间。MCP(Model Context Protocol)提示技术为解决这一问题…

apache-tomcat-11.0.9安装及环境变量配置

一、安装从官网上下载apache-tomcat-11.0.9,可以下载exe可执行文件版本,也可以下载zip版本,本文中下载的是zip版本。将下载的文件解压到指定目录;打开tomcat安装目录下“\conf\tomcat-users.xml”文件;输入以下代码,pa…

Java 大视界 -- Java 大数据机器学习模型在电商用户生命周期价值评估与客户关系精细化管理中的应用(383)

Java 大视界 -- Java 大数据机器学习模型在电商用户生命周期价值评估与客户关系精细化管理中的应用(383)引言:正文:一、电商用户运营的 “糊涂账”:不是所有客户都该被讨好1.1 运营者的 “三大错觉”1.1.1 错把 “过客…

豆包新模型与PromptPilot工具深度测评:AI应用开发的全流程突破

目录引言一、豆包新模型技术解析1.1 豆包新模型介绍1.2 核心能力突破1.2.1 情感交互能力1.2.2 推理与编码能力二、PromptPilot工具深度测评2.1 PromptPilot介绍2.2 工具架构与核心功能2.3 一个案例讲通:市场调研报告2.3.1 生成Prompt2.3.2 批量集生成2.3.3 模拟数据…

【代码随想录day 12】 力扣 144.145.94.前序遍历中序遍历后序遍历

视频讲解:https://www.bilibili.com/video/BV1Wh411S7xt/?vd_sourcea935eaede74a204ec74fd041b917810c 文档讲解:https://programmercarl.com/%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A%84%E9%80%92%E5%BD%92%E9%81%8D%E5%8E%86.html#%E5%85%B6%E4%BB%96%E8%A…

【Unity】 HTFramework框架(六十七)UDateTime可序列化日期时间(附日期拾取器)

更新日期:2025年8月6日。 Github 仓库:https://github.com/SaiTingHu/HTFramework Gitee 仓库:https://gitee.com/SaiTingHu/HTFramework 索引一、UDateTime可序列化日期时间1.定义UDateTime字段2.日期拾取器(编辑器)3…

Docker的安装,服务器与客户端之间的通信

目录 1、Docker安装 1.1主机配置 1.2apt源的修改 1.3apt安装 2、客户端与服务端通信 2.1服务端配置 2.1.1创建镜像存放目录 2.1.2修改配置文件 2.2端口通信 2.3SSH连接 2.3.1生成密钥 2.3.2传输密钥 2.3.3测试连接 1、Docker安装 1.1主机配置 我使用的两台主机是…

【算法专题训练】09、累加子数组之和

1、题目:LCR 010. 和为 K 的子数组 https://leetcode.cn/problems/QTMn0o/description/ 给定一个整数数组和一个整数 k ,请找到该数组中和为 k 的连续子数组的个数。示例 1: 输入:nums [1,1,1], k 2 输出: 2 解释: 此题 [1,1] 与 [1,1] 为两…

WinXP配置一键还原的方法

使用系统自带的系统还原功能:启用系统还原:右键点击 “我的电脑”,选择 “属性”,切换到 “系统还原” 选项卡,确保 “在所有驱动器上关闭系统还原” 未被勾选,并为系统驱动器(C:)设…

基于模式识别的订单簿大单自动化处理系统

一、系统概述 在金融交易领域,订单簿承载着海量的交易信息,其中大单的处理对于市场流动性和价格稳定性有着关键影响。基于模式识别的订单簿大单自动化处理系统旨在通过智能算法,精准识别订单簿中的大单特征,并实现自动化的高效处理…

table行内--图片预览--image

需求:点击预览,进行预览。支持多张图切换思路:使用插槽;src : 展示第一张图;添加preview-src-list ,用于点击预览。使用插槽(UI组件--> avue)column: 测试数据

560. 和为 K 的子数组 - 前缀和思想

560. 和为 K 的子数组 - 前缀和思想 在算法题中,前缀和是一种能快速计算 “数组中某段连续元素之和” 的预处理方法,核心思路是 “提前计算并存储中间结果,避免重复计算” 前缀和的定义: 对于一个数组 nums,我们可以创…

Python金融分析:从基础到量化交易的完整指南

Python金融分析:从基础到量化交易的完整指南 引言:Python在金融领域的核心地位 在量化投资规模突破5万亿美元的2025年,Python已成为金融分析的核心工具: 数据处理效率:Pandas处理百万行金融数据仅需2.3秒 策略回测速度:Backtrader框架使策略验证效率提升17倍 风险评估精…

MySQL 从入门到实战:全方位指南(附 Java 操作示例)

MySQL 入门全方位指南(附Java操作示例) MySQL 作为最流行的关系型数据库之一,广泛应用于各类应用开发中。本文将从安装开始,逐步讲解 MySQL 的核心知识点与操作技巧,并通过 Java 示例展示客户端交互,帮助你…