Linux之autofs自动挂载服务

目录

Linux之autofs自动挂载服务

产生原因

安装

配置文件分析

文件路径

作用

etc/auto.master文件内容格式

挂载参数

案例

案例1 --- 服务器创建共享目录,客户端实现自动挂载

案例2 --- 自动挂载光盘


Linux之autofs自动挂载服务

产生原因

        在一般NFS文件系统的使用过程中,如果客户端要使用服务端所提供的文件系统,可以在 /etc/fstab中设置开机时自动挂载,也可以在登录系统后手动利用mount来挂载

        由于网络的问题,NFS服务器与客户端的连接不会一直存在,当我们挂载了NFS服务器之后,任何一方脱机都可能造成另外一方等待超时,如果在资源挂载后长期不使用,也会造成服务器硬件资源的浪费

        为了解决这样的问题,就出现了下面的想法:

                当客户端在有使用NFS文件系统的需求时才让系统自动挂载

                当NFS文件系统使用完毕后(autofs默认自动卸载时间为300s即5分钟),让NFS自动卸载

        autofs 自动挂载服务可以帮我们解决这一问题,该服务是运行在客户端的一种 Linux 系统守护进程,在用户需要使用该文件系统时才去动态挂载,从而节约了网络资源和服务器的硬件资源

安装

[root@localhost ~]# yum install autofs -y 

 

配置文件分析

文件路径

        /etc/auto.master

作用

        处于生产环境中的 Linux 服务器,一般会同时管理许多设备的挂载操作。如果把这些设备挂载信息都写入到 autofs 服务的主配置文件中,无疑会让主配置文件臃肿不堪,不利于服务执行效率,也不利于日后修改里面的配置内容,则需要将挂载的设备独立配置形成子文件主配置文件只存储配置挂载设置的文件名

etc/auto.master文件内容格式

        挂载目录 子配置文件

        挂载目录 --- 不需要事先存在,因为autofs会主动建立该目录

        子配置文件 --- 文件名可自定义       

        例子 --- /nfs    /etc/auto.nfs

子配置文件由自己创建,内容格式:

        本地挂载目录 [-挂载参数] 服务器地址:目录

        例子 --- testmnt    192.168.48.130:/data

挂载参数

参数功能
fg/bg当执行挂载时,该挂载行为会在前台(fg)还是后台(bg)执行,若在前台执行,则mount会持续尝试挂载,直到成功或time out为止;若为后台执行,则mount会在后台持续多次进行mount,而不会影响到前台的程序运行。
soft/hardhard表示当两者之间的任何一台主机脱机,则RPC会持续地呼叫,直到对方恢复连接为止。如果是soft的话,那RPC会在time out后重复呼叫,而非持续呼叫
intr当使用上面提到的hard方式挂载时,若加上intr这个参数,则当RPC持续呼叫时,该次的呼叫是可以被中断的
rsize/wsize读出(rsize)与写入(wsize)的区块大小。这个设置值可以影响客户端与服务器

案例

案例1 --- 服务器创建共享目录,客户端实现自动挂载

第一步:服务端server主机新建共享目录并编辑nfs配置文件

[root@localhost ~]# mkdir /data
[root@localhost ~]# chmod -Rf 777 /data/
[root@localhost ~]# ls /data/
[root@localhost ~]# echo "this is test " > /data/file.txt
[root@localhost ~]# ls /data/
file.txt
[root@localhost ~]# vim /etc/exports
#编写以下内容
/data           *(rw,sync,all_squash)

第二步: 服务端server主机启动服务,注意:先启动rpcbind服务

[root@localhost ~]# systemctl  start   rpcbind
[root@localhost ~]# systemctl  start   nfs-server
[root@localhost ~]# systemctl  enable  rpcbind
[root@localhost ~]# systemctl  enable  nfs-server

 第三步:客户端node1操作,编辑自动挂载的主配置文件

        计划本地挂载目录:/nfs/testmnt

[root@localhost ~]# vim /etc/auto.master
# 编辑第7行,修改为如下
/nfs    /etc/auto.nfs# /nfs为最终挂载目录的第一级
# /etc/auto.nfs为自动挂载的自配置文件,文件名任意命名

[root@localhost ~]# showmount -e 192.168.149.128

[root@localhost nfs1]# vim /etc/auto.nfs    # 编辑自动挂载的子配置文件
#编辑以下内容
testmnt   192.168.149.128:/data

第四步:客户端node1主机重启服务

[root@localhost ~]# systemctl start autofs
[root@localhost ~]# systemctl enable autofs

第五步:客户端node1主机测试

[root@localhost nfs]# df -h   # 查看系统挂载信息

[root@localhost nfs]# cd /nfs #自动创建该目录
[root@localhost nfs]# ls
[root@localhost nfs]# cd testmnt
[root@localhost testmnt]# ls
file.txt

案例2 --- 自动挂载光盘

第一步:修改autofs的主配置文件及子配置文件

# 计划本地光盘挂载目录:/media/cdrom
[root@localhost ~]# vim /etc/auto.master
/media  /etc/iso.aa
# /media为计划挂载目录的第一级别  
# /etc/iso.aa为子配置文件

第二步:编辑子配置文件

[root@localhost ~]# vim /etc/iso.aa
cdrom   -fstype=iso9660,ro,nosuid,nodev  :/dev/sr0    # 冒号前有空格

 第三步:启动服务

[root@localhost ~]# systemctl restart autofs
[root@localhost ~]# systemctl enable autofs

第四步:测试,注意 --- 若光盘已经挂载需要先卸载

[root@localhost ~]# df  -h   # 查看光盘是否已经挂载
文件系统               容量  已用  可用 已用% 挂载点
devtmpfs               4.0M     0  4.0M    0% /dev
tmpfs                  968M     0  968M    0% /dev/shm
tmpfs                  388M  9.5M  378M    3% /run
/dev/mapper/rhel-root   16G  4.2G   12G   27% /
/dev/nvme0n1p1         395M  235M  160M   60% /boot
tmpfs                  194M  104K  194M    1% /run/user/0
/dev/sr0               8.5G  8.5G     0  100% /run/media/root/RHEL-9-1-0-BaseOS-x86_64  # 显示已挂载
[root@localhost ~]# umount  /dev/sr0  # 先卸载光盘设备
[root@localhost ~]# df  -h  # 再次查看[root@localhost ~]# cd  /media/
[r[root@localhost media]# cd  cdrom   # 触发自动挂载
[r[root@localhost cdrom]# df  -h
文件系统               容量  已用  可用 已用% 挂载点
devtmpfs               4.0M     0  4.0M    0% /dev
tmpfs                  968M     0  968M    0% /dev/shm
tmpfs                  388M  9.5M  378M    3% /run
/dev/mapper/rhel-root   16G  4.2G   12G   27% /
/dev/nvme0n1p1         395M  235M  160M   60% /boot
tmpfs                  194M  104K  194M    1% /run/user/0
/dev/sr0               8.5G  8.5G     0  100% /media/cdrom  # 已经自动挂载

 

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

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

相关文章

$attrs,$listeners

vue实现组件通信的方式有: 父子通信 父组件向子组件传递通过props定义各个属性来传递,子组件向父组件传递通过$emit触发事件 ref也可以访问组件实例跨级通信 vuex bus provide / inject $attrs / $listeners解释 $attrs / $listeners $attrs 将父组件中…

服务端请求伪造(SSRF)及漏洞复现

文章目录 渗透测试漏洞原理服务端请求伪造1. SSRF 概述1.1 SSRF 场景1.1.1 PHP 实现 1.2 SSRF 原理1.3 SSRF 危害 2. SSRF 攻防2.1 SSRF 利用2.1.1 文件访问2.1.2 端口扫描2.1.3 读取本地文件2.1.4 内网应用指纹识别2.1.5 攻击内网Web应用 2.2 SSRF 经典案例2.2.1 访问页面2.2.…

自然语言处理实战项目17-基于多种NLP模型的诈骗电话识别方法研究与应用实战

大家好,我是微学AI,今天给大家介绍一下自然语言处理实战项目17-基于NLP模型的诈骗电话识别方法研究与应用,相信最近小伙伴都都看过《孤注一掷》这部写实的诈骗电影吧,电影主要围绕跨境网络诈骗展开,电影取材自上万起真…

基于Java+SpringBoot+Vue前后端分离善筹网(众筹)设计和实现

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

vue3在路由route.js中获取不到仓库pinia中store里面的值

原因:小仓库(useUserStore )必须有大仓库(pinia)才能运行,在组件中能使用pinia仓库的数据,是因为在main.ts中已经在vue上面挂载了大仓库(pinia),但是route.js不是vue组件,没有被挂载大仓库,所以不能运行 解…

使用(七牛云)为例子实现将文件上传到云服务器

目的 目前,用户的头像、分享生成的长图等文件都是存放在本地的,我们可以将他们存放在云服务器中,此处我们使用七牛云作为例子示范。 七牛云 创建账户并申请如下的两个bucket,分别是用户头像的存储空间和分享长图的存储空间。 …

数据库设计DDL

DDL:数据定义语言,用来定义数据库对象(数据库、表) DDL(数据库操作) 查询: 查询所有数据库:show databases; 查询当前数据库:select database(); 使用: 使用…

Python 之 match 表达式

Python 从 3.10 版本开始增加了 match 语句,和其他语言常见的 switch 语句极其相似,但功能更加强大。 本文通过实例,了解下其用法。 基本的 match 语句 def http_code(status): match status: case 400 | 404 | 418: …

java八股文面试[JVM]——JVM性能优化

JVM性能优化指南 JVM常用命令 jps 查看java进程 The jps command lists the instrumented Java HotSpot VMs on the target system. The command is limited to reporting information on JVMs for which it has the access permissions. jinfo (1)实时…

AIGC专栏3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例

AIGC专栏3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例 学习前言源码下载地址网络构建一、什么是Stable Diffusion(SD)二、Stable Diffusion的组成三、img2img生成流程1、输入图片编码2、文本编码…

SpringCloud(35):Nacos 服务发现快速入门

本小节,我们将演示如何使用Spring Cloud Alibaba Nacos Discovery为Spring cloud 应用程序与 Nacos 的无缝集成。 通过一些原生的spring cloud注解,我们可以快速来实现Spring cloud微服务的服务发现机制,并使用Nacos Server作为服务发现中心,统一管理所有微服务。 1 Spring…

vue3中TCplayer应用

环境win10:vitevue3elementUI 1 安装 npm install tcplayer.js2 使用 <template><div><video id"player-container-id" width"414" height"270" preload"auto" playsinline webkit-playsinline></video>&l…

联发科MTK6762/MT6762核心板_安卓主板小尺寸低功耗4G智能模块

MT6762安卓核心板是一款基于MTK平台的高性能智能模块&#xff0c;是一款工业级的产品。该芯片也被称为Helio P22。这款芯片内置了Arm Cortex-A53 CPU&#xff0c;最高可运行于2.0GHz。同时&#xff0c;它还提供灵活的LPDDR3/LPDDR4x内存控制器&#xff0c;此外&#xff0c;Medi…

【FreeRTOS】【应用篇】消息队列【下篇】

前言 本篇文章主要对 FreeRTOS 中消息队列的概念和相关函数进行了详解消息队列【下篇】详细剖析了消息队列中发送、接收时队列消息控制块中各种指针的行为&#xff0c;以及几个发送消息和接收消息的函数的运作流程笔者有关于 【FreeRTOS】【应用篇】消息队列【上篇】——队列基…

【链表OJ 11】复制带随机指针的链表

前言: &#x1f4a5;&#x1f388;个人主页:​​​​​​Dream_Chaser&#xff5e; &#x1f388;&#x1f4a5; ✨✨刷题专栏:http://t.csdn.cn/UlvTc ⛳⛳本篇内容:力扣上链表OJ题目 目录 leetcode138. 复制带随机指针的链表 1. 问题描述 2.代码思路: 2.1拷贝节点插入到…

【文心一言大模型插件制作初体验】制作面试错题本大模型插件

文心一言插件开发初体验 效果图 注意&#xff1a;目前插件仅支持在本地运行&#xff0c;虽然只能自用&#xff0c;但仍然是一个不错的选择。&#xff08;什么&#xff1f;你说没有用&#xff1f;这不可能&#xff01;文心一言app可以支持语音&#xff0c;网页端结合手机端就可…

计算机网络第三节物理层

一&#xff0c;第二章 物理层&#xff08;数据通信有关&#xff09; 1.物理层引入的目的 屏蔽掉传输介质的多样性&#xff0c;导致数据传输方式的不同&#xff1b;物理层的引入使得高层看到的数据都是统一的0,1构成的比特流 2.物理层如何实现屏蔽 物理层靠定义的不同的通信…

智慧园区用水用电信息管理系统:实现高效节能的现代化园区管理

随着科技的不断发展&#xff0c;各类产业园区在我国经济社会发展中发挥着越来越重要的作用。为了提高园区的运营效率、降低能源消耗、实现绿色可持续发展&#xff0c;智慧园区用水用电信息管理系统应运而生。本文将从系统背景、功能特点、应用优势等方面进行详细介绍。 一、系统…

java八股文面试[数据库]——索引下推

什么是索引下推&#xff1f; 索引下推&#xff08;index condition pushdown &#xff09;简称ICP&#xff0c;在Mysql5.6的版本上推出&#xff0c;用于优化查询。 需求: 查询users表中 "名字第一个字是张&#xff0c;年龄为10岁的所有记录"。 SELECT * FROM users…

element+vue table表格全部数据和已选数据联动

1.组件TableChoose <template><div class"tableChooseBox"><div class"tableRow"><div class"tableCard"><div class"tableHeadTip">全部{{ labelTitle }}</div><slot name"body" …