在 Oracle® Solaris 11.2 中管理网络文件系统

退出打印视图

更新时间: 2014 年 7 月
 
 

Autofs 的工作原理

Autofs 是支持自动挂载和取消挂载的内核文件系统。协同工作以完成自动挂载的组件包括:

  • automount 命令

  • autofs 文件系统

  • automountd 守护进程

AutoFS 是一项可自动挂载相应文件系统的客户端服务。在系统启动时调用的自动挂载服务 svc:/system/filesystem/autofs 可读取主映射文件 auto_master 来创建一组初始 autofs 挂载。这些 autofs 挂载不会在启动时自动挂载,而是将来要在这些点下挂载文件系统。这些点也称为触发节点。有关启动导航进程的更多信息,请参见Autofs 如何启动导航进程(主映射)

下图显示了 autofs 服务如何启动 automount 命令。

图 2-3  svc:/system/filesystem/autofs 服务启动 automount

image:此图显示了 autofs 服务如何启动 automount 命令。

设置 autofs 挂载后,这些挂载可以触发在其下挂载文件系统。例如,当 autofs 收到对当前尚未挂载的文件系统的访问请求时,autofs 会调用 automountd,实际上由该命令挂载请求的文件系统。

请求访问 autofs 挂载点处的文件系统时,将发生下列情况:

  1. Autofs 拦截请求。

  2. Autofs 将消息发送到 automountd 守护进程,以便挂载请求的文件系统。

  3. automountd 守护进程在映射中查找文件系统信息,创建触发节点并执行挂载。

  4. Autofs 允许继续处理被拦截的请求。

  5. 当文件系统在一段时间内没有活动后,Autofs 将取消挂载该文件系统。

初始挂载 autofs 挂载后,必要时会使用 automount 命令更新 autofs 挂载。该命令将比较 auto_master 映射中的挂载列表和挂载表文件 /etc/mnttab(以前为 /etc/mtab)中的已挂载文件系统的列表。然后,automount 会做出相应更改。该进程允许系统管理员更改 auto_master 中的挂载信息,并使 autofs 进程可以使用这些更改,而无需停止并重新启动 autofs 守护进程。挂载文件系统后,在自动取消挂载文件系统之前,进一步进行访问不需要 automountd 执行任何操作。

mount 不同,automount 并不会从 /etc/vfstab 文件(该文件特定于每台计算机)中读取要挂载的文件系统列表。在域中或在计算机上,automount 命令是通过名称空间或本地文件进行控制的。


注 -  不应手动挂载或取消挂载通过 autofs 服务管理的挂载。即使手动操作成功,autofs 服务也不会检查是否已取消挂载该对象,从而可能导致不一致。重新引导时将清除所有 autofs 挂载点。