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

autofs自动挂载

文章目录

    • 一、应用背景
    • 二、安装及配置文件分析
    • 实验一:自动挂载光盘
      • 安装
      • 修改autofs主配置文件
      • 编写autofs子配置文件
      • 测试
    • 实验二:自动挂载共享目录
      • 一、服务端创建共享文件,编辑nfs配置文件
      • 二、客户端编辑自动配置文件
      • 三、测试

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

一、应用背景

在一般NFS文件系统的使用过程中,如果客户端要使用服务端所提供的文件系统,可以在 /etc/fstab中设置开机时自动挂载,也可以在登录系统后手动利用mount来挂载。但是由于网络的问题,NFS服务器与客户端的连接不会一直存在,当我们挂载了NFS服务器之后,任何一方脱机都可能造成另外一方等待超时,如果在资源挂载后长期不使用,也会造成服务器硬件资源的浪费。

解决办法:

  • 当客户端在有使用NFS文件系统的需求时才让系统自动挂载。
  • 当NFS文件系统使用完毕后(autofs默认自动卸载时间为300s即5分钟),让NFS自动卸载。

二、安装及配置文件分析

[root@node1 ~] yum install autofs -y   # 客户端安装

配置文件路径:/etc/auto.master

linux服务器一般会同时管理多个设备的挂载操作。如果把设备的挂载信息都写入到auto服务的主配置文件中,必定会让配置文件臃肿,不利于服务执行效率,也不利于后续修改,解决办法就是将需要挂载的设备独立配置成子文件,主配置文件只存储配置挂载设备的文件名

/etc/auto.master内容格式:挂载父目录 子配置文件

  • 挂载目录不需要事先存在,因为autofs会自动创建该目录
  • 子配置文件内容格式为:本地挂载子目录 [+参数] 服务器地址:目录
  • 例如:testmnt 192.168.65.128:/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)的区块大小。这个设置值可以影响客户端与服务器

实验一:自动挂载光盘

安装

[root@server ~] yum install autofs -y

修改autofs主配置文件

# 设计本地自动挂载目录路径:/media/test# 定位第7行,输入本地挂载路径的父目录和自配置文件
[root@server ~] vim  /etc/auto.master  
/media  /etc/iso.aa

编写autofs子配置文件

[root@server ~] vim  /etc/iso.aa
test -fstype=iso9660,ro,nosuid,nodev  :/dev/sr0   # 冒号前有空格# 注意cdrom为挂载路径/media/cdrom的子目录
# -ftype:为文件系统格式
# iso9660:为光盘设备格式
# ro:以只读模式挂载文件系统
# nodev:不解析文件系统上的块特殊设备
# nosuid:禁止suid操作和设定sgid位(SUID 是 Set User ID, SGID 是 Set Group ID的意思)#启动
[root@server ~] systemctl start autofs

测试

[root@server ~] df -h
文件系统               容量  已用  可用 已用% 挂载点
devtmpfs               4.0M     0  4.0M    0% /dev
tmpfs                  968M     0  968M    0% /dev/shm
tmpfs                  388M  9.7M  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@server ~] cd /media/
[root@server media] cd test    # 触发自动挂载
[root@server cdrom]# ls
AppStream  EFI   extra_files.json  images    media.repo                  RPM-GPG-KEY-redhat-release
BaseOS     EULA  GPL               isolinux  RPM-GPG-KEY-redhat-beta
[root@server cdrom]# df -h
文件系统               容量  已用  可用 已用% 挂载点
devtmpfs               4.0M     0  4.0M    0% /dev
tmpfs                  968M     0  968M    0% /dev/shm
tmpfs                  388M  9.7M  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/test   # 已经自动挂载

实验二:自动挂载共享目录

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

一、服务端创建共享文件,编辑nfs配置文件

[root@server ~] mkdir  /nfsfile
[root@server ~] vim  /etc/exports
/nfsfile   *(rw,sync,all_squash)[root@server ~] chmod  -Rf  777 /nfsfile
[root@server ~] echo  "hello hahaha"  >  /nfsfile/readme
[root@server ~] ls  /nfsfile
reademe#定位服务端,启动服务,必须先启动rpcbind服务
[root@server ~] systemctl start rpcbind
[root@server ~] systemctl start nfs-server

二、客户端编辑自动配置文件

# 设计自动挂载本地目录:/nfs/testmnt
[root@node1 ~]# vim  /etc/auto.master  # 编辑自动挂载配置文件,定位第7行,输入
/nfs    /etc/auto.nfs
# /nfs为本地挂载路径的父目录,可以不用创建,autofs回自动创建,auto.nfs为自配置文件,名称自定义# 查看共享信息
[root@node1 ~] showmount -e 192.168.65.200
Export list for 192.168.65.200:
/nfsfile *# 编辑自动挂载的子配置文件
[root@node1 ~]# vim  /etc/auto.nfs  # 书写本地挂载目录的子目录及远程共享目录
testmnt   192.168.65.200:/nfsfile#启动服务
[root@node1 ~]# systemctl  start  autofs

三、测试


[root@node1 ~] df -h # 查看挂载信息
Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               4.0M     0  4.0M   0% /dev
tmpfs                  867M     0  867M   0% /dev/shm
tmpfs                  347M  5.7M  341M   2% /run
/dev/mapper/rhel-root   17G  4.5G   13G  27% /
/dev/nvme0n1p1         960M  299M  662M  32% /boot
/dev/sr1               9.9G  9.9G     0 100% /media
tmpfs                  174M   52K  174M   1% /run/user/42
tmpfs                  174M   36K  174M   1% /run/user/0[root@node1 ~] cd  /nfs   # 进入本地挂载目录,会自动新建
[root@node1 nfs] ls
[root@node1 nfs] cd  testmnt  # 进入本地挂载目录的下级目录,会触发自动挂载[root@node1 testmnt] df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 4.0M     0  4.0M   0% /dev
tmpfs                    867M     0  867M   0% /dev/shm
tmpfs                    347M  7.1M  340M   3% /run
/dev/mapper/rhel-root     17G  4.5G   13G  27% /
/dev/nvme0n1p1           960M  299M  662M  32% /boot
/dev/sr1                 9.9G  9.9G     0 100% /media
tmpfs                    174M   52K  174M   1% /run/user/42
tmpfs                    174M   36K  174M   1% /run/user/0
192.168.65.200:/nfsfile   17G  4.3G   13G  25% /nfs/testmnt#可以看到共享的文件夹里面的文件
[root@node1 testmnt] ls
readme  test1.txt  test2  test3.txt  test4.txt

在这里插入图片描述

http://www.dtcms.com/a/581093.html

相关文章:

  • 微软TinyTroupe“人格”模拟库:AI智能体市场调研-V3版本(五)
  • Opencv(九) : 图像旋转
  • 关键词解释:DAG 系统(Directed Acyclic Graph,有向无环图)
  • 【Linux】基础开发⼯具
  • 那些网站可以给产品做推广个人网站备案填写
  • 现代汽车确认遭遇数据泄露, 攻击者连续窃密9天获取用户驾照信息
  • 如何进行数据脱取
  • 将linux操作系统装入U盘20251107
  • 工业级部署指南:在西门子IOT2050(Debian 12)上搭建.NET 9.0环境与应用部署
  • ​AI大模型时代下的全栈技术架构:从深度学习到云原生部署实战
  • 手机版网站推荐银川网站建设哪家不错
  • maven与springBoot环境配置
  • C++程序设计实验(黑龙江大学)
  • 全屋智能家居定制小程序
  • 做电影网站需多大的空间网站建设意义
  • 拓普建站推广wordpress域名变更
  • 深度学习从入门到精通(一):深度学习的分类
  • 进制转换--c
  • opencv 学习: 05 像素操作
  • Mamba YOLO: 基于状态空间模型的目标检测简单基线
  • Java 大视界 --Java 大数据在智慧农业农产品市场价格预测与种植决策支持中的应用实战
  • K8s的标签应用和调度
  • 如何应用动作捕捉技术让户外重体力工作更安全
  • rust中的Cargo.toml文件
  • PD快充诱骗芯片 XSP15 支持获取快充电压可与外部MCU共用D+D-网络与电脑传输数据
  • 蓝牙钥匙 第58次 蓝牙钥匙交互反馈设计:构建多感官无缝用户体验
  • spiderdemo第22题与webassembly的跨域
  • 【MySQL | 基础】通用语法及SQL分类
  • 【爬虫】分析天气网后,整理的一点理论上的理解
  • Web安全-文件上传漏洞-黑白名单及其它绕过思路(附思维导图)