当前位置: 首页 > news >正文

Linux 配置NFS与autofs自动挂载

目录

配置NFS服务器

安装nfs软件包

配置共享目录

防火墙放行相关服务

配置NFS客户端

autofs自动挂载

配置autofs


配置NFS服务器

nfs主配置文件参数(/etc/exports)

共享目录  允许地址1访问(选项1,选项2)  循序地址2访问(选项1,选项2)……

允许地址的格式

子网、主机地址、指定域名、*(表示所有主机)

选项

ro                        共享目录只可读

rw                        共享目录可读可写

all_squash            将远程访问的用户以及所属用户组都映射为匿名用户和匿名用户组

no_all_squash       与all_quash相反

anonuid=xxx       将远程访问的用户都映射为匿名用户,并指定该匿名用户为本地用户

sync                     将数据同步写入到内存缓冲区与磁盘中(保证数据的一致性)

asyn                     先将数据保存在内存缓冲区,需要时再写入硬盘

secure                  限制客户端只可以从小于1024的TCP/IP端口连接FNS服务器(默认)

insecure               允许从大于1024的端口连接NFS服务器

安装nfs软件包

NFS服务所需的进程

rpc.nfsd         nfs的主要进程,负责管理客户端的登录,判别登入者ID

rpc.mountd   负责管理NFS的文件系统,通过读取NFS主要配置文件/etc/exports对客户端进行权限锁定

rpc.lockd        非必要进程,主要解决多个客户端同时写入的问题(必须在客户端和服务端都开启才有用,长与statd同时使用)

rpc.statd        非必要进程,用于检查文件的一致性,检查文件是否被摧毁(必须在客户端和服务端都开启才有效)

为了支持NFS,需要启用多个服务进程,每个进程都会占用一个端口来传输数据;其中除了nfsd使用固定的2049端口,其余的都随机使用小于1024的端口,用户如何知道这些端口,

此时就需要使用rpcbind服务进程来实现

rpcbind         管理ROC服务进程和端口之间的映射关系(NFS服务进程启用时,选取端口,向rpcbind注册映射消息;客户端请求NFS相关进程时,先请求rpcbind得到相应的端口,然后再通过端口与对应进程建立通信)

启动NFS服务

安装软件包

安装nfs-utils包:包含nfsd、mountd、lockd、statd等服务端的守护进程和客户端相关工具

安装rpcbind包:包含rpcbind进程

yum -y install nfs-utils

yum -y install rpcbind

注意:安装完nfs-utils后,rpcbind默认启动

启用相关服务

systemctl start nfs服务

systemctl start rpcbind

查看服务状态

systemctl status nfs服务

systemctl status rpcbind

设置开机自启动服务

systemctl enable nfs服务

systemctl enable rpcbind

配置共享目录

创建目录

mkdir -p /nfs1/share1

更改权限

chmod 777 /nfs1/share1

配置共享目录到nfs的主配置文件/etc/exports下

vim /etc/exports

/nfs1/share1 172.25.250.*(rw,sync,all_squash)

重新挂载(exportfs 管理NFS服务器共享的文件系统)

export -ar 重新加载NFS配置文件(或者重启nfs服务也可以)

       -a                        全部

       -r                        重新挂载某个目录

       -u 客户端:目录    卸载某个目录(并没有删除配置文件的内容)

       -v                        显示NFS服务器上的所有共享目录(显示详细信息)

检查共享目录是否设置正确(shownmount)

showmount -e     显示NFS服务器上所有的共享目录-显示简要信息

           -d    仅显示已经被NFS客户端加载的目录

防火墙放行相关服务

可以在文件/etc/sysconfig/nfs为每个服务进程设置固定端口,然后防火墙放行

也可以直接防火墙放行所有nfs服务

firewall-cmd --add-service=nfs  防火墙放行NFS服务


配置NFS客户端

安装nfs软件包

yum -y install nfs-utils

启用相关服务

systemctl start nfs服务

systemctl start rpcbind

查看服务状态

systemctl status nfs服务

systemctl status rpcbind

设置开机自启动服务

systemctl enable nfs服务

systemctl enable rpcbind

检查共享目录是否设置正确

showmount -e nfs服务器地址

挂载到NFS服务器的文件到本地

mkdir -p /media/nfs1        创建挂载点

临时挂载

mount -t nfs 服务器地址: /nfs1/share1 /media/nfs1   将服务器上的/nfs1/shar1挂载到本地/media/nfs1目录

永久挂载

服务器地址:/nfs1/share1  /media/nfs1 nfs rw,sync 0 0

sync 缓冲和磁盘一起写入,防止数据丢失


autofs自动挂载

在NFS客户端配置,取代vim /etc/fstab挂载

为什么需要autofs

由于网络的问题,NFS客户端与服务器的连接不会一直存在,当我们挂载了NFS服务器之后,任何一方脱机都可能造成另一方等待超时,以此通过autofs来解决此问题

autofs自动挂载原理

持续监听某个目录,然后当我们使用某个目录下的子目录时,会根据规则文件自动挂载

对于NFS来说:当客户端在使用NFS文件系统时,才让系统自动挂载;当NFS文件系统使用完毕后,让NFS自动卸载

配置autofs

将nfs服务器的/nfs1/share1挂载到/media/nfsclient

相对路径挂载方法

1、安装软件包

yum install -y autofs

2、启动相关服务

systemctl start autofs.service

systemctl enable autofs.service

3、配置autofs的主映射文件(/etc/auto.master)

/etc/auto.master  进行自动挂载时参考的主映射文件(根据此文件来设置自动挂载时的挂载点)

可以通过在/etc/default/autofs中设置MASTER_MAP_NAME变量来更改默认的主映射文件

文件格式

挂载点的主目录(/media)   挂载点对应的子配置文件(可以任意创建/etc/rule.auto)

4、配置挂载点主目录的子配置文件(/etc/rule.auto)

挂载点的子目录(/nfsclient) 挂载选项(-nfs,rw,sync)   要挂载设备(nfs服务器:/nfs1/share1)

注意使用autofs自动挂载,就不需要主动去创建挂载目录

5、重启autofs服务

systemctl restart autofs

绝对路径挂载方法

1、2、5步同相对路径方法

3、配置主映射文件

/-  /etc/rule.auto  /-表示使用绝对路径

4、配置子配置文件格式(vim /etc/rule.auto)

/media/nfsclient (-nfs,rw,syns) nfs服务器:/nfs1/share1

相关文章:

Linux 配置NFS与autofs自动挂载

目录 配置NFS服务器 安装nfs软件包 配置共享目录 防火墙放行相关服务 配置NFS客户端 autofs自动挂载 配置autofs 配置NFS服务器 nfs主配置文件参数(/etc/exports) 共享目录 允许地址1访问(选项1,选项2) 循序地…...

【编程入门】应用市场(Python版)

背景 前面已输出多个系列: 《十余种编程语言做个计算器》 《十余种编程语言写2048小游戏》 《17种编程语言10种排序算法》 《十余种编程语言写博客系统》 《十余种编程语言写云笔记》 《N种编程语言做个记事本》 目标 为编程初学者打造入门学习项目,使…...

异常信息记录入库

方案介绍 将异常信息放在日志里面,如果磁盘定期清理,会导致很久之前的日志丢失,因此考虑将日志中的异常信息存在表里,方便后期查看定位问题。 由于项目是基于SpringBoot构架的,所以采用AdviceControllerExceptionHand…...

Spring Batch 高级篇-分区步骤

目录 引言 概念 分区器 分区处理器 案例 转视频版 引言 接着上篇:Spring Batch 高级篇-并行步骤了解Spring Batch并行步骤后,接下来一起学习一下Spring Batch 高级功能-分区步骤 概念 分区:有划分,区分意思,在…...

ES数据迁移_snapshot(不需要安装其他软件)

参考文章: 三种常用的 Elasticsearch 数据迁移方案ES基于Snapshot(快照)的数据备份和还原CDH修改ElasticSearch配置文件不生效问题 目录1、更改老ES和新ES的config/elasticsearch.yml2、重启老ES,在老ES执行Postman中创建备份目录…...

【Vue3 第二十章】异步组件 代码分包 Suspense内置组件 顶层 await

异步组件 & 代码分包 & Suspense内置组件 & 顶层 await 一、概述 在大型项目中,我们可能需要拆分应用为更小的块,以减少主包的体积,并仅在需要时再从服务器加载相关组件。这时候就可以使用异步组件。 Vue 提供了 defineAsyncC…...

「媒体邀约」四川有哪些媒体,成都活动媒体邀约

传媒如春雨,润物细无声,四川省位于中国西南地区,是中国的一个省份。成都市是四川省的省会,成都市是中国西部地区的政治、经济、文化和交通中心,也是著名的旅游胜地。每年的文化交流活动很多,也有许多的大企…...

@Autowired和@Resource的区别

文章目录1. Autowired和Resource的区别2. 一个接口多个实现类的处理2.1 注入时候报错情况2.2 使用Primary注解处理2.3 使用Qualifer注解处理2.4 根据业务情况动态的决定注入哪个serviceImpl1. Autowired和Resource的区别 Aurowired是根据type来匹配;Resource可以根…...

Linux系列:glibc程序设计规范与内存管理思想

文章目录前言命名规范说明版式风格内存管理与智能指针关于UML前言 这是一个基于lightdm、glibc、gobject、gtk、qt、glibc、x11、wayland等多个高质量开源项目总结而来的规范。 glibc处于内核态与用户态的边界,承上启下,对用户的体验影响非常大。其在系…...

Redis 集群

文章目录一、集群简介二、Redis集群结构设计🍉2.1 数据存储设计🍉2.2 内部通信设计三、cluster 集群结构搭建🍓3-1 cluster配置 .conf🍓3-2 cluster 节点操作命令🍓3-3 redis-trib 命令🍓3-4 搭建 3主3从结…...

EF 框架的简介、发展历史;ORM框架概念

一、EF 框架简介EF 全称是 EntityFramework 。Entity Framework是ADO.NET 中的一套支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架。ORM框架(Object Relational Mapping) 翻译过来就是对象关系映射。如果不用ORM框架,我们一般这样…...

注解原理剖析与实战

一、注解及其原理 1.注解的基本概念 注解,可以看作是对 一个类/方法的一个扩展的模版,每个类/方法按照注解类中的规则,来为类/方法注解不同的参数,在用到的地方可以得到不同的类/方法中注解的各种参数与值。 从JDK5开始&#xff…...

《STL源码剖析》理解之将类成员函数和for_each等算法结合

类成员函数可以通过函数适配器(function adapters)包装成一个仿函数(重载了operator()的类)&#xff0c;将其搭配于STL算法一起使用。#include <algorithm> #include <functional> #include <vector> #include <iostream>using namespace std;class In…...

如何构建应用标准化体系

标准化的过程实际上就是对运维对象的识别和建模过程。形成统一的对象模型后&#xff0c;各方在统一的认识下展开有效协作&#xff0c;然后针对不同的运维对象&#xff0c;再抽取出它们所对应的运维场景&#xff0c;接下来才是运维场景的自动化实现。 在标准化的过程中&#xf…...

【RabbitMQ笔记03】消息队列RabbitMQ七种模式之WorkQueues工作队列模式

这篇文章&#xff0c;主要介绍消息队列RabbitMQ七种模式之WorkQueues工作队列模式。 目录 一、工作队列模式 1.1、什么是Work Queues模式 1.2、工作队列模式的使用 &#xff08;1&#xff09;引入依赖 &#xff08;2&#xff09;编写生产者 &#xff08;3&#xff09;编写…...

认识html

1.html的特点先看一段简单的html代码<html><head></head><body>hello world</body> </html>如果将这段带有这段代码的.html文件拉进浏览器中,就会出现一个页面,内容就是hello world,如下图:由上面的代码,我们可以了解到一些html代码的特点…...

在外包公司熬了 3 年终于进了字节,竭尽全力....

其实两年前校招的时候就往字节投了一次简历&#xff0c;结果很明显凉了&#xff0c;随后这个理想就被暂时放下了&#xff0c;但是这个种子一直埋在心里这两年除了工作以外&#xff0c;也会坚持写博客&#xff0c;也因此结识了很多优秀的小伙伴&#xff0c;从他们身上学到了特别…...

绝对让你明明白白,脚把脚带你盯着 I2C 时序图将 I2C 程序给扣出来(基于STM32的模拟I2C)

目录前言一、关于STM32 I/O端口位的基本结构讲解二、模拟I2C编写前的需知道的知识1、I2C简介2、根据时序编写模拟I2C程序重要的两点Ⅰ、主机发送数据给从机时的时序控制Ⅱ、主机接收来自从机的数据时的时序控制Ⅲ、完整的I2C时序图&#xff08;按写程序的思想分割时序&#xff…...

2023年全国最新工会考试精选真题及答案5

百分百题库提供工会考试试题、工会考试预测题、工会考试真题、工会证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 一、单选题 1.企业工会委员会实行&#xff08;&#xff09;&#xff0c;重要问题须经&#xff08;&#x…...

一文2000字手把手教你自动化测试Selenium+pytest+数据驱动

主流自动化框架 selenium &#xff1a;web端自动化框架 &#xff0c;&#xff08;行业里面最核心的框架&#xff09; appium &#xff1a;手机app端框架 requests &#xff1a;接口测试 selenium 工具类封装 selenium提供了很多方法供我们去完成网页元素的操作&#xff0c; …...

React19源码系列之 事件插件系统

事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​&#xff1a; 下载安装DevEco Studio 4.0&#xff08;支持HarmonyOS 5&#xff09;配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​&#xff1a; ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

Angular微前端架构:Module Federation + ngx-build-plus (Webpack)

以下是一个完整的 Angular 微前端示例&#xff0c;其中使用的是 Module Federation 和 npx-build-plus 实现了主应用&#xff08;Shell&#xff09;与子应用&#xff08;Remote&#xff09;的集成。 &#x1f6e0;️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践

作者&#xff1a;吴岐诗&#xff0c;杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言&#xff1a;融合数据湖与数仓的创新之路 在数字金融时代&#xff0c;数据已成为金融机构的核心竞争力。杭银消费金…...

STM32---外部32.768K晶振(LSE)无法起振问题

晶振是否起振主要就检查两个1、晶振与MCU是否兼容&#xff1b;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容&#xff08;CL&#xff09;与匹配电容&#xff08;CL1、CL2&#xff09;的关系 2. 如何选择 CL1 和 CL…...

算法打卡第18天

从中序与后序遍历序列构造二叉树 (力扣106题) 给定两个整数数组 inorder 和 postorder &#xff0c;其中 inorder 是二叉树的中序遍历&#xff0c; postorder 是同一棵树的后序遍历&#xff0c;请你构造并返回这颗 二叉树 。 示例 1: 输入&#xff1a;inorder [9,3,15,20,7…...

ThreadLocal 源码

ThreadLocal 源码 此类提供线程局部变量。这些变量不同于它们的普通对应物&#xff0c;因为每个访问一个线程局部变量的线程&#xff08;通过其 get 或 set 方法&#xff09;都有自己独立初始化的变量副本。ThreadLocal 实例通常是类中的私有静态字段&#xff0c;这些类希望将…...

结构化文件管理实战:实现目录自动创建与归类

手动操作容易因疲劳或疏忽导致命名错误、路径混乱等问题&#xff0c;进而引发后续程序异常。使用工具进行标准化操作&#xff0c;能有效降低出错概率。 需要快速整理大量文件的技术用户而言&#xff0c;这款工具提供了一种轻便高效的解决方案。程序体积仅有 156KB&#xff0c;…...

CppCon 2015 学习:REFLECTION TECHNIQUES IN C++

关于 Reflection&#xff08;反射&#xff09; 这个概念&#xff0c;总结一下&#xff1a; Reflection&#xff08;反射&#xff09;是什么&#xff1f; 反射是对类型的自我检查能力&#xff08;Introspection&#xff09; 可以查看类的成员变量、成员函数等信息。反射允许枚…...