automount和autofs

2023-10-29

参考:http://hi.baidu.com/dfjlaicqjlbafnd/item/6db9af719cc2fe5f0d0a07ac

摘要:


automount 和 autofs是易于使用的文件系统管理工具,功能强大。它允许同一台机器上的所有用户在他们需要的时候去安装不同的文件系统。

简介:

对于不同的物理设备(硬盘、软盘、cdrom等等)和/或操作系统,数据的写入过程也是不同的:这就是我们所称的文件系统。/etc/fstab文件 决定了启动时安装的硬盘安装点。每个安装点对应一块区域或一个文件系统(例如,一个硬盘分区)。然后,如果你想存取其它的分区,只有root用户能使用 mount命令(除非特定的选项“user”包含在/etc/fstab中)。作为超级用户root,你要指明安装位置,被安装的分区,有时还包括文件系 统和其他一些选项。幸运的是,普通用户没有这种权限,不能存取所有的数据。

Mount 和 fstab 的man pages提供了有关这些命令和概念的更详细的描述。

Automount和autofs允许系统管理员配置机器能够访问的所有的文件系统,他同样要用到mount。用户可以用一种完全透明的方式来访问这些系统,完全不必关心内核是如何回答这些请求的。

描述:

这一对命令(automount,autofs)可以看作是网络系统中的客户机/服务器模式。服务器正在运行,等待发出的请求。请求到来时,服务器将自动复制,这边用来回应系统的请求,那边继续等待请求。

现在,autofs扮演了等待服务器的角色,automount则扮演了另一个角色。请求将被保存在配置文件中。

autofs

通常,autofs在系统启动时被运行,关机或重新启动时被关闭。然而,系统管理员能够手工启动或停止它的运行。

1.Start:含义很明显,启动进程。启动时,autofs将在配置文件/etc/auto.master中查询“maps”(maps指明了安装 位置)。然后,他为每个安装位置启动automount。接着,autofs查询NIS maps(关于这一点,这篇文章不作过多涉及)。

2.Stop: 停止autofs和所有automounts的运行。

3.Status:显示当前的配置和所有正在运行的automount。

4.Reload:重新读取auto.master map,杀掉当前的automount,然后重新运行。注意,maps中的变化在重新启动后将被体现出来。另一方面,auto.master的变化也要求autofs重新启动。

总之,autofs只是一个脚本,它在运行于每一个安装点的automount之前要访问auto.master。

automount

Automount运行时,要用到初始安装目录(启动automount时被autofs找到的),还有描述初始安装目录特性的新的map文件。与 automount相关的map文件包含自动安装文件系统所需的所有信息。当有人试图访问开始于安装点的目录树时,自动安装过程就会自动完成。

然后,当经过非活动期之后(缺省是5分钟),文件系统就会被自动卸载。

Configuration

配置将在2个文件的帮助下完成。Auto.master文件,包含安装点,以及为特定安装点提供安装选项的安装点文件。


/etc/auto.master file



这里,我们描述一下Sun格式的maps文件。另一种格式(hesiod)不适合下面讲到的语法。

/etc/auto.master是autofs的主要文件。每一行描述一个安装点,指向包含文件系统描述的文件,该文件系统将被安装到这个安装点目录。

每一行的语法如下:


mount-point map-for-the-associated-automount
[ -mount-options-separated-by-comma ]
Example :
/home /etc/auto.home
/misc /etc/auto.misc --timeout 60
/mnt yp:mnt.map -intr,nosuid,nodev



这里设置了3个安装点,/home,/misc和/mnt。为了访问/misc目录下的文件,automount将会读取/etc/auto.misc文件,以便找到安装选项和与文件系统相关的关键字(the key)。

最后2行包含可选项。他们在mount的man page中有描述,而且是标准的。就象例子中最后一行所显示的那样,autofs和automount与黄页maps(NIS或其他)是全兼容的。


The key represents an identifier for the file system under the mount point .
The place is the true physical location.



这个文件的语法同auto.master基本相同(两者都是map文件嘛):


key [ -mount-options-separated-by-comma ] place



我们回头看一下使用/etc/auto.misc文件的那个例子:


kernel -ro,soft,intr ftp.kernel.org:/pub/linux
cdrom -fstype=iso9660,ro :/dev/cdrom
floppy -fstype=auto :/dev/fd0
windoz -fstype=vfat :/dev/hda1



文件的绝对路径如下:


/mount-point/key/path/file



现在,为了读取我的windows文件config.sys,我只要运行一下“cat /misc/windoz/config.sys”,就能存取到/dev/hda1设备。

我们注意到这个文件的第一行指向了一个NFS的出口目录(这也正显示了automount和autofs的灵活应用)。

关于细节:

首先,我们必须注意到:当我们想找到maps文件中的一个文件时,完整的路径是不需要的。为了避免键入全路径名,我们经常使 用<TAB>;键自动完成。如果map还没有被加载,key字段就不会起作用。看一下前一个例子,如果我想访问同一个config.sys文 件,我会这样做:


%1 >; cat /misc/ <TAB >;



我只会得到一个令人失望的“beep”声,因为这个命令无法完成任何功能。(为了能听到令人愉快的“beep”声,可以有几种选择—为了建立完整的命令,你必须键入<CTRL+D>;,你将会看到所有可用的选择,当然如果他们存在的话)。

事实上,这种做法很普遍。显然,当你试图使用完整的路径时,这个目录的内容将被检查,然后你就可以看一下什么才是你所需要的符号。在那种情况 下,/misc目录是空的,因为系统要做的是只有在存取某个文件系统时才安装它。另一方面, 只有当安装点被自动取消后,你才能使用全路径名。(例如,当没有对一个文件系统的资源存取时,而且系统已超时。)

让我们看一下存取map前后的安装结果,回顾一下/etc/auto.master的作用。


/dev/hda6 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/hda9 on /home type ext2 (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
automount(pid362) on /home type autofs (rw,fd=5,pgrp=362,minproto=2,maxproto=3)
automount(pid364) on /misc type autofs (rw,fd=5,pgrp=364,minproto=2,maxproto=3)
automount(pid366) on /mnt type autofs (rw,fd=5,pgrp=366,minproto=2,maxproto=3)



我们注意到每一个安装点都对应一个daemon进程(一个系统进程)。进一步说,每一个相关类型都是“autofs”的。在访问了我的/misc/windoz/config.sys文件后,下面是安装后的结果:


/dev/hda6 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/hda9 on /home type ext2 (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
automount(pid362) on /home type autofs (rw,fd=5,pgrp=362,minproto=2,maxproto=3)
automount(pid364) on /misc type autofs (rw,fd=5,pgrp=364,minproto=2,maxproto=3)
automount(pid366) on /mnt type autofs (rw,fd=5,pgrp=366,minproto=2,maxproto=3)
/dev/hda1 on /misc/windoz type vfat (rw)



最后一行正是我们所期望的结果。 如果60秒钟内没有访问安装点目录,在下一次安装时这一行就会消失。

总结

在一台运行Linux或者Windows的个人计算机上,automount和autofs几乎没用,除非不想频繁的使用root注册(事实上,情况远没有这么怀)。我们可以为FAT和FAT32的分区定义一个map文件,然后就可以访问它。

在网络环境中,将有更大的灵活性,与黄页(yellow pages)和NFS相接合,不管我们的物理位置在哪,我们都能轻松的访问任何地方。

当一台访问失败的服务器只影响与它相连的客户机时,automount就变得非常有用。通常这会减少大公司(拥有10个或者更多的nfs服务器)的当机时间。

补充:

最近搞一个项目,也用到automount,一般情况下使用没问题。但如果把服务器共享的文件夹改为不共享,然后再改为共享,那么,automount要过一小段时间才能重新mount该目录。如果查询状态使用automount的-C项(不检查是否正在运行)来重新挂载一次,则会立即重新挂载上了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

automount和autofs 的相关文章

  • linux4.6 EC11旋转编码器的驱动

    最近项目使用了旋转编码器EC11 遍查内核 发现并没有它的驱动 查了查 终于找到一篇有用的 根据自己的需要和对最基础的gpio key c的理解 我改写出了一份EC11的专用驱动 感谢下面博主的启发 有了这位高人的指点 我才有信心改写成功
  • strace 命令来查看系统调用

    strace p pid strace p pid i i 显示函数地址
  • 精讲!查看和控制进程相关命令

    这里写目录标题 一 查看进程的相关命令 1 ps 命令 查看静态的进程统计信息 Processes Statistic 2 top 命令 查看进程动态信息 3 pgrep 命令 查询进程信息 4 pstree 命令 查看进程树 二 控制进程
  • Avalonia-VS环境安装

    链接 https pan baidu com s 1T1TYf7 Q5T6hbpOyGCW2Vg 提取码 m8eu 安装SDK 没有这个 vs2019安装后Avalonia插件 无法选择netcore 生成项目 插件地址 上面为vs2019
  • ld 链接程序出错定位

    工具链相关问题 一般可 verbose 下 看看具体什么地方出问题 设置 LDFLAGS Wl verbose 例如 链接一堆 o文件 只有以下错误信息 ld final link failed Bad value 就可以加入 Wl ver
  • fedora下一些与网络配置相关的文件和命令

    http thethe blog 51cto com 498901 145966 1 如果您在命令行下启动网络服务 应该是 root localhost beinan etc init d network start root localh
  • linux grep 使用

    1 grep 单独使用 搜素指定目录中包含指定字符的文件 例如 grep r words 搜素当前目录中包含 words 字符的文件 grep r words wc 搜素当前目录中包含 words 字符的文件 只显示 包含该字符的数量 2
  • Dell工作站8T硬盘安装ubuntu 16.04

    Dell工作站8T硬盘安装ubuntu 16 04 MBR文件系统仅支撑2T磁盘 因此在2T以上磁盘上安装ubuntu时 如果想利用全部磁盘空间 需要采用GPT分区 文件系统 模型 这需要重新分区 制作Ubuntu 16 04启动U盘 一
  • intel性能测试工具VTune的功能和用法介绍

    转自 https blog csdn net WY stutdy article details 79106501 https software intel com en us node 256997 1 VTune介绍 VTune可视化性
  • 深入探究 Linux C中进程崩溃

    目录 前言 栈内存异常以及案列分享 堆内存异常以及案列分享 Ptmalloc的内存管理 前言 LinuxC的内存管理融入了设计者很多高效的算法和思想 提供了用户直接可以操作的内存的 指针 这也是其他语言不涉及的 除Go语言21世纪的C语言
  • vi下显示和处理回车换行符等特殊符号

    http blog sina com cn s blog 4c76784c0100uaf9 html 换行方式 在早期的打印机时代 开始新的一行要占用两个字符的时间 如果到了一行的结尾处 你要快速回到新的一行的开头 需要打印针头在纸面上飞快
  • Linux下五种I/O模型详解(阻塞IO、非阻塞IO、IO复用、信号驱动、异步IO)

    https blog csdn net gui951753 article details 82348485 感谢博主 我已收藏
  • linux设置系统时间

    我们一般使用 date s 命令来修改系统时间 比如将系统时间设定成20066年10月19日的命令如下 date s 10 19 2006 将系统时间设定成下午1点12分0秒的命令如下 date s 13 12 00 注意 这里说的是系统时
  • linux系统之字符设备驱动——IIC驱动mma8451q

    linux系统之字符设备驱动 IIC子系统驱动mma8451q 1 原理图 2 驱动程序 mma8451q c Author your name Date 2021 02 23 22 16 37 LastEditTime 2021 02 2
  • 理解virt res shr之间的关系 - linux

    转自 https www orchome com 298 想必在linux上写过程序的同学都有分析进程占用多少内存的经历 或者被问到这样的问题 你的程序在运行时占用了多少内存 物理内存 通常我们可以通过top命令查看进程占用了多少内存 这里
  • linux中如何重新configure(或去除已configure的文件)

    linux中如何重新configure 或去除已configure的文件 linux中 在安装源码软件前 需要configure命令来进行安装配置 有时configure后需要重新configure 这时需要进行一些操作 已放置出错 以在f
  • Linux系统图形界面,字符界面切换快捷键。启动图形界面服务。

    Ctrl Alt F3 启动字符界面 Ctrl Alt F7 启动图形界面 启动图形界面服务 cd etc init d service lightdm restart
  • Fedora 启动顺序

    http hi baidu com wwwkljoel item 29620217882a585b2b3e2244 The start of the Fedora fedora 系统加电或复位后 中央处理器将内存中的所有数据清零 并对内存进
  • Linux系统制作Ubuntu18.04启动盘

    转自 https blog csdn net xiaoma 2018 article details 85059930 首先进入 Ubuntu 官网下载 Ubuntu18 04 ios 镜像包 下载的镜像包为 ubuntu 18 04 1
  • begin to drop messages due to rate-limiting

    对于syslog保存的日志会有很多重要信息 但是一旦打印的日志数量超过设置的阈值 就会丢掉 imuxsock pid 48 begin to drop messages due to rate limiting 这是在调试时不愿看到的 可以

随机推荐

  • mysql动态ip域名连接_用本地动态IP连接本地mysql

    一个问题已经困扰了我很久的问题今天终于解决了 在用C 连接mysql时 用本地的动态IP加端口号连接本地的数据库mysql real connect conn 192 168 223 128 root mysql Project 3306
  • PCA的数学原理(非常值得阅读)!!!!

    PCA Principal Component Analysis 是一种常用的数据分析方法 PCA通过线性变换将原始数据变换为一组各维度线性无关的表示 可用于提取数据的主要特征分量 常用于高维数据的降维 网上关于PCA的文章有很多 但是大多
  • 统计字符串内某个字符出现的次数

    假如有一个字符串 cabcdasgcjaieyakxhanzgajgaa 我们要统计这个字符串里字符 a 出现的位置以及出现的次数 大致思路 先利用 indexOf 判断出该字符第一次出现的位置 只要其返回结果不等于 1 就继续往后查找 但
  • Linux基础(较全)

    Linux 0 目录 文章目录 Linux 0 目录 1 Linux简介 1 1 Linux是什么 1 2 Linux发行版 1 3 LInux应用领域 1 4 Linux vs Windows 2 Linux 虚拟机 安装 2 1 系统分
  • 数据库表结构设计方法及原则(li)

    数据库设计的三大范式 为了建立冗余较小 结构合理的数据库 设计数据库时必须遵循一定的规则 在关系型数据库中这种规则就称为范式 范式是符合某一种设计要求的总结 要想设计一个结构合理的关系型数据库 必须满足一定的范式 在实际开发中最为常见的设计
  • Java入门

    Java入门 Java 入门 主要内容 Java的地位 Java诞生 Java的特点 安装JDK 简单的Java应用程序 重点与难点 重点 Java平台无关性 Java程序的结构 难点 Java程序的开发过程 Java之父与Java的诞生
  • 探索性数据分析-如何描述业务量数据

    探索性数据分析 如何描述业务量数据 描述业务量的特征 均值 标准差 相关系数 均值代表的是集中趋势 整体的趋势 整体发展方向 整体水平 标准差代表的是离中趋势 描述事物的波动程度 在一定程度上也代表着风险 相关系数代表的是相关分析 代表的是
  • 刷脸支付有深度整合垂直领域的商业价值

    移动支付和银行卡支付没有办法确定使用者到底是谁 因为可以和家人等共同使用 刷脸支付可以确定消费实体是谁 定位到具体人确定数据标签 新零售从业者认为 刷脸支付除了提供更便捷的支付服务外 还可以提供更多的商业数据用于精细化经营 从垂直领域来看
  • 从Qt5的改变看最佳头文件包含风格?QT5找不到#include头文件在哪里

    老版本 C C code 1 2 include
  • Polkit权限提升漏洞(CVE-2021-4034)利用及修复

    Polkit本地权限提升漏洞 CVE 2021 4034 利用及修复 文章目录 Polkit本地权限提升漏洞 CVE 2021 4034 利用及修复 漏洞说明 危害等级 影响版本 修复版本 漏洞利用 漏洞修复 升级polkit版本 临时修复
  • WebSocket协议状态码1005: 理解、应用与解决方案

    WebSocket协议状态码1005 理解 应用与解决方案 引言 WebSocket协议是一种在Web应用程序中实现双向通信的协议 与传统的HTTP协议不同 WebSocket协议允许服务器主动向客户端推送数据 而不需要客户端发送请求 在W
  • TypeScript 元组类型

    TypeScript 语言中 数组中的元素一般只能是由相同数据类型组成 any 除外 如果我们想要存储不同类型的元素 则可以使用元组 TypeScript 中的元组 Tuple 从外形上来看和数组相差不多 但是元组中允许存储不同类型的元素
  • AD18画元器件封装

    AD18画元器件封装 1 在创建好的工程旁边右键给工程添加新的PCB libriary 2 在PCB libriary界面点击工具 gt 元器件向导 然后点击Next 3 可以看到不同类型元器件 可以根据自己需求选择 我选择第二个电容 单位
  • rt-thread系列文章目录

    rt thread系列文章目录 本文是rt thread系列文章目录 后续关于rt thread的更新都会添加到此文内 实战篇 rt thread 生成工程模板 rt thread fal移植 内核篇 rt thread 内存管理 内存堆
  • STM32 USB虚拟串口通信

    目录 一 使用STM32 HAL库配置 选择USB从机模式 添加USB库并选择虚拟串口模式 二 HAL库USB驱动函数介绍 三 驱动函数编写 一 使用STM32 HAL库配置 选择USB从机模式 添加USB库并选择虚拟串口模式 二 HAL库
  • SVN下载、安装、配置及使用方法

    文章目录 SVN是什么 相关概念 为什么需要SVN SVN的特点 TortoiseSVN VisualSVN Subversion 以及 VisualSVN Server的区别 为什么不直接使用Subversion SVN下载 SVN服务端
  • 策略模式与外观模式

    1 策略 定义不同的算法族 并且之间可以互相替换 让算法的变化独立于使用算法的客户 以动态的改变对象的行为 2 例子 随机生成宠物 并统计各种宠物生成数量 a 抽象类 PetCreator 用于随机生成宠物 package context
  • 【毕设中期报告总结】MMGEN-FaceStylor的环境配置总结

    MMGEN FaceStylor的环境配置总结 0 引言 1 Python环境配置 2 安装步骤 2 1 创建虚拟环境 2 2 安装MMCV和MMGEN 2 3 克隆存储库并准备数据和权重 3 Play with MMGEN FaceSty
  • 【Keil编译问题】RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT

    Keil编译问题 RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT Keil编译信息提示内容 然而在Keil软件file菜单 license manage许可菜单里面查看信息 又是注册成功
  • automount和autofs

    参考 http hi baidu com dfjlaicqjlbafnd item 6db9af719cc2fe5f0d0a07ac 摘要 automount 和 autofs是易于使用的文件系统管理工具 功能强大 它允许同一台机器上的所有