在Linux上导出NFS共享---网络文件系统

目录

一、NFS介绍

二、NFS 所需要的服务

三、搭建NFS服务器共享文件到客户端

在虚拟机129上配置:

在虚拟机135上配置

 测试

 四、autofs自动挂载

1、安装软件启动

2、编写 /etc/auto.master,在里面添加内容如下

3、编写 /etc/auto.nfs,其内容如下

4、重启测试查看


一、NFS介绍

NFS是允许远程主机通过网络挂载文件系统,并像它们挂载在本地那样与这些⽂件系统进⾏交互。

NFS服务器参考/etc/exports配置文件

二、NFS 所需要的服务

nfsd
为共享 NFS ⽂件系统请求的 NFS 服务器内核模块。
rpcbind
接受本地 RPC 服务的端⼝保留。这些端⼝随后可⽤(或公布出去),这样相应的远程 RPC 服务可以访问它们。 rpcbind 服务响应对 RPC 服务的请求,并建⽴到请求的 RPC 服务的连接。这不能与 NFSv4 ⼀起使⽤。
rpc.mountd
NFS 服务器使⽤这个进程来处理来⾃ NFSv3 客⼾端的 MOUNT 请求。它检查所请求的 NFS 共享是否⽬前由 NFS 服务器导出,并且允许客⼾端访问它。如果允许挂载请求, nfs- mountd 服务会回复 Success 状态,并将此 NFS 共享的⽂件句柄返回给 NFS
客⼾端。
rpc.nfsd
这个过程启⽤了要定义的服务器公告的显式 NFS 版本和协议。它与 Linux 内核⼀起使 ⽤,来满⾜ NFS 客⼾端的动态需求,例如,在每次连接 NFS 客⼾端时提供服务器线 程。这个进程对应于 nfs- server 服务。
lockd
这是⼀个在客⼾端和服务器中运⾏的内核线程。它实现⽹络锁管理器(NLM)协议,它允 许 NFSv3 客⼾端锁住服务器上的⽂件。每当运⾏ NFS 服务器以及挂载 NFS ⽂件系统时,它会⾃动启动。
rpc.statd
这个进程实现⽹络状态监控器(NSM)RPC 协议,该协议可在NFS 服务器没有正常关机⽽ 重启时通知 NFS 客⼾端。 rpc-statd 服务由 nfs- server 服务⾃动启动,不需要⽤⼾配置。这不能与 NFSv4 ⼀起使⽤。
rpc.rquotad
这个过程为远程⽤⼾提供⽤⼾配额信息。启动 nfs- server 时,⽤⼾也必须启动 quota- rpc 软件包提供的 rpc- rquotad 服务。
rpc.idmapd
此进程为 NFSv4 客⼾端和服务器提供上⾏调⽤,这些调⽤在线上 NFSv4 名称 ( *user* @* domain* 形式的字符串)和本地UID 和 GID 之间进⾏映射。要使 idmapd 与 NFSv4 正常⼯作,必须配置 /etc/idmapd.conf ⽂件。⾄少应指 定 Domain 参数,该参数定义 NFSv4 映射域。如果 NFSv4 映射域与 DNS 域名相 同,可以跳过这个参数。客⼾端和服务器必须同意 NFSv4 映射域才能使 ID 映射正常⼯ 作。只有 NFSv4 服务器使⽤ pc.idmapd ,它由 nfs- idmapd 服务启动。 NFSv4 客⼾端使⽤基于密钥环的 nfsidmap ⼯具,内核按需调⽤它来执⾏ ID 映射。 如果 nfsidmap 有问题,客⼾端将退回使⽤ rpc.idmapd

NFSv4的RPC服务:

挂载和锁定协议已合并到 NFSv4 协议中。该服务器还会监听已知的 TCP 端⼝ 2049。因此,
NFSv4 不需要与 rpcbind 、 lockd 和 rpc- statd 服务进⾏交互。NFS 服务器上
仍然需要 nfs- mountd 服务来设置导出,但不涉及任何线上操作。

三、搭建NFS服务器共享文件到客户端

开启两个虚拟机129,135,一个作为NFS服务器来共享文件,另一个通过挂载来接受其共享的文件

在虚拟机129上配置:

1、安装nfs,并启动服务
2
dnf install nfs-utils
systemctl start nfs-server

2、在本地服务器写共享文件

mkdir /nfs
vim /etc/exports #写共享的对象
cat /etc/exports
/nfs    192.168.5.135(rw)
exportfs -r #通过此命令来共享

可以使用showmount -e 192.168.5.135查看挂载共享的内容。

3、放行防火墙

firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=mounted
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --reload

在虚拟机135上配置

1、安装nfs,并启动服务

dnf install nfs-utils
systemctl start nfs-server

2、写相互之间共享的文件目录,并放行防火墙

mkdir /haha
mount 192.168.5.129:/nfs /haha #将129的/nfs文件挂载共享到/haha
df -h /haha/ #通过该命令来查看其挂载点 

 测试

在虚拟机129创建文件

在虚拟机135上创建文件,也可以看到虚拟机129创建的文件:

 

(在nfs服务器虚拟机129上查看客户机创建的文件:相互之间可以创建文件共享)

 四、autofs自动挂载

在⼀般NFS⽂件系统的使⽤过程中,如果客⼾端要使⽤服务端所提供的⽂件系统,可以在
/etc/rc.d/rc.local 中设置开机时⾃动挂载( /etc/rc.d/rc.local ⽂件中写⼊的命令,在每次启
动系统⽤⼾登录之前都会执⾏⼀次);也可以在登录系统后⼿动利⽤mount来挂载。 由于⽹络的问题,NFS服务器与客⼾端的连接不会⼀直存在,当我们挂载了NFS服务器之后, 任何⼀⽅脱机都可能造成另外⼀⽅等待超时。为了解决这样的问题,就出现了下⾯的想法:
当客⼾端在有使⽤NFS⽂件系统的需求时才让系统⾃动挂载。
当NFS⽂件系统使⽤完毕后,让NFS⾃动卸载。
于是就产⽣了autofs这个服务。

其只需要在客户机上配置即(虚拟机135)

1、安装软件启动

yum install autofs -y
systemctl start autofs

2、编写 /etc/auto.master,在里面添加内容如下

 

3、编写 /etc/auto.nfs,其内容如下

nfs  192.168.5.129:/nfs

4、重启测试查看

在/haha目录下出现/nfs,就成功了

 

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

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

相关文章

Cisco 命令速查表(非常详细)零基础入门到精通,收藏这一篇就够了

Cisco IOS(Internetwork Operating System)是 Cisco 系统公司开发的专有操作系统,用于其路由器和交换机。它提供了一个稳健的、可扩展的、以命令行接口(CLI)为基础的网络操作环境。通过掌握 Cisco IOS 命令&#xff0c…

Go语言---select

select的作用 Go 里面提供了一个关键字 select,通过 select 可以监听 channel上的数据流动。 select 的用法与switch 语言非常类似,由 select 开始一个新的选择块,每个选择条件由 case语句来描述。 与 switch 语句可以选择任何可使用相等比较…

Spark底层原理:案例解析(第34天)

系列文章目录 一、Spark架构设计概述 二、Spark核心组件 三、Spark架构设计举例分析 四、Job调度流程详解 五、Spark交互流程详解 文章目录 系列文章目录前言一、Spark架构设计概述1. 集群资源管理器(Cluster Manager)2. 工作节点(Worker No…

从汇编层看64位程序运行——栈帧(Stack Frame)边界

大纲 RBP,RSP栈帧边界总结参考资料 在《从汇编层看64位程序运行——栈帧(Stack Frame)入门》中,我们简单介绍了栈帧的概念,以及它和函数调用之间的关系。如文中所述,栈帧是一种虚拟的概念,它表达了一个执行中的函数的栈…

如何找回误删的文件?4个常用文件恢复方法!

对于许多用户来说,误删文件是一种常见而令人懊恼的情况。恢复误删文件的重要性在于,它可以帮助用户找回宝贵的数据,避免因数据丢失带来的各种不便和损失。 如何找回不小心删除的文件? 误删数据不知道怎么恢复,会给我…

美团一面,你碰到过CPU 100%的情况吗?你是怎么处理的?

本文主要分为三部分 分析一下CPU 100%的常见原因 CPU 100%如何排查 回答这个问题的一个参考答案 CPU被打满的常见原因 1. 死循环 在实际工作中,可能每个开发都写过死循环的代码。 死循环有两种: 在 while、for、forEach 循环中的死循环。 无限递…

centos安装minio文件系统服务器(踩坑版)

centos安装minio文件系统服务器(踩坑版) 引安装1. 下载2. 启动3. 创建access keys4. 创建buckets 坑 引 本来安装挺简单的,网上的教程一大堆,有些写的也挺详细的。不过自己还是踩到坑了,耽误了个把小时,特…

【分库】分库的核心原则

目录 分库的核心原则 前言 分区透明性与一致性保证 弹性伸缩性与容错性设计 数据安全与访问控制机制 分库的核心原则 前言 在设计和实施分库策略时,遵循一系列核心原则是至关重要的,以确保系统不仅能够在当前规模下高效运行,还能够随着…

单目测距 单目相机测距 图片像素坐标转实际坐标的一种转换方案

需要相机位置固定 原图 红色的点是我们标注的像素点,这些红色的点我们知道它的像素坐标,以及以右下角相机位置为原点的x y 实际坐标数值 通过转换,可以得到整个图片内部其余像素点的实际坐标, 这些红色的点是通过转换关系生成的&…

Python | Leetcode Python题解之第231题2的幂

题目: 题解: class Solution:BIG 2**30def isPowerOfTwo(self, n: int) -> bool:return n > 0 and Solution.BIG % n 0

el-table 动态添加删除 -- 鼠标移入移出显隐删除图标

<el-table class"list-box" :data"replaceDataList" border><el-table-column label"原始值" prop"original" align"center" ><template slot-scope"scope"><div mouseenter"showClick…

JavaWeb(四:Ajax与Json)

一、Ajax 1.定义 Ajax&#xff08;Asynchronous JavaScript And XML&#xff09;&#xff1a;异步的 JavaScript 和 XML AJAX 不是新的编程语言&#xff0c;指的是⼀种交互方式&#xff1a;异步加载。 客户端和服务器的数据交互更新在局部页面的技术&#xff0c;不需要刷新…

Openerstry + lua + redis根据请求参数实现动态路由转发

文章目录 一、需求分析二、准备1、软件安装2、redis-lua封装优化 三、实现1、nginx.conf2、dynamic.lua注意 3、准备两个应用4、访问nginx 一、需求分析 根据用户访问url的参数&#xff0c;将请求转发到对应指定IP的服务器上。 二、准备 1、软件安装 安装openrestyredis&am…

Database数据库 vs Data Warehouse数据仓库 vs Data Mart数据集市 vs Data Lake数据湖

1.DATABASE 数据库 数据库是一个结构化的数据集合&#xff0c;用于存储、管理和检索数据。数据库设计用于支持事务处理&#xff08;OLTP&#xff0c;Online Transaction Processing&#xff09;和日常操作。 数据库通常由数据库管理系统&#xff08;DBMS&#xff09;控制&…

golang json反序列化科学计数法的坑

问题背景 func CheckSign(c *gin.Context, signKey string, singExpire int) (string, error) {r : c.Requestvar formParams map[string]interface{}if c.Request.Body ! nil {bodyBytes, _ : io.ReadAll(c.Request.Body)defer c.Request.Body.Close()if len(bodyBytes) >…

PostgreSQL(二十二)缓冲区管理器

目录 一、缓冲区概述 1、缓冲区结构 2、buffer_tag结构 3、Backend进程读取操作 4、写脏块 二、缓冲区管理器结构 1、第一层&#xff1a;Buffer Table layer&#xff08;缓冲区表层&#xff09; 2、第二层&#xff1a;Buffer Descriptor Layer&#xff08;缓冲区描述层…

秋招Java后端开发冲刺——Mybatis使用总结

一、基本知识 1. 介绍 MyBatis 是 Apache 的一个开源项目&#xff0c;它封装了 JDBC&#xff0c;使开发者只需要关注 SQL 语句本身&#xff0c;而不需要再进行繁琐的 JDBC 编码。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java POJO&#xff08;Plain …

Bertopic环境安装与文本主题聚类

文章目录 1.环境配置(一)安装:anaconda1. 理解:为什么需要anaconda2. 下载anaconda3. 启动anaconda(二)安装:python环境(三)安装:依赖包hdbscan的安装问题解决方案1. 安装build-tools-for-visual-studio2. 安装hdbscan(四)安装transformers、BERTopic等重要依赖包2…

零信任的架构结合模块化沙箱,实现一机两用的解决方案

零信任沙箱是深信达提出的一种数据安全解决方案&#xff0c;它将零信任原则与SDC沙箱技术的优势相结合。零信任原则是一种安全概念&#xff0c;核心思想是“永不信任&#xff0c;总是验证”。它要求对每一个访问请求都进行严格的身份验证和授权&#xff0c;无论请求来源于内部还…

从RL的专业角度解惑 instruct GPT的目标函数

作为早期chatGPT背后的核心技术&#xff0c;instruct GPT一直被业界奉为里程碑式的著作。但是这篇论文关于RL的部分确写的非常模糊&#xff0c;几乎一笔带过。当我们去仔细审查它的目标函数的时候&#xff0c;心中不免有诸多困惑。特别是作者提到用PPO来做强化学习&#xff0c;…