基础概念总览
Autofs 分为两大工作模式:
- 间接映射(Indirect Map) :就是你第一种写法:
/data /etc/auto.nfs-data --timeout=60 - 直接映射(Direct Map) :第二种写法:
/- /etc/auto.direct --timeout=60
两台服务器安装 autofs
bash
yum install autofs -y
systemctl enable --now autofs
1.直接映射(Direct Map),要直接挂载到 /data /home
机器 A(192.168.10.10)/etc/auto.master
/- 是 autofs固定魔法标识,代表开启「直接挂载模式」:
不再限定某个父目录,允许在子配置文件里任意指定系统绝对路径作为挂载点(/data、/home、/mnt/xxx 全都可以)
bash
# 本地自定义autofs直接挂载规则
/- /etc/auto.direct --timeout=60
# NIS自动映射,不需要NIS可以注释
+auto.master
配套 /etc/auto.direct
bash
/data -fstype=nfs,rw,tcp,soft 192.168.10.20:/data
机器 B(192.168.10.20)/etc/auto.master
bash
/- /etc/auto.direct --timeout=60
+auto.master
配套 /etc/auto.direct
bash
/home -fstype=nfs,rw,tcp,soft 192.168.10.10:/home
修改完生效步骤
bash
# 重载autofs配置,不需要kill进程
systemctl restart autofs
# 查看加载的所有映射,确认条目识别成功
automount -m
2.间接映射(Indirect Map)
/etc/auto.master 主配置行
bash
/data /etc/auto.nfs-data --timeout=60

子配置文件 /etc/auto.nfs-data
bash
* -fstype=nfs,rw,soft,tcp 192.168.10.20:/data/&
*:通配符,匹配任意进入/data/下面的子目录名称&:把匹配到的目录名传递到远端路径末尾
最终挂载效果(核心特点)
autofs 永远不会把远端目录挂载到 /data 本身
只会挂载在 /data/子目录名 层级:
当你执行:
bash
cd /data/abc
autofs 触发挂载: 本机 /data/abc ↔ 192.168.10.20:/data/abc
关键限制:
你无法直接使用 /data 作为挂载点入口,只能访问它内部的子文件夹。 如果你直接执行 ls /data,只会列出空目录,不会触发 NFS 挂载。
专门用来批量挂载多个远端目录 : 比如: 远端服务器有 /data/disk1、/data/disk2、/data/disk3 用*通配符,访问哪个子目录就自动挂载哪一个,统一收纳在本机 /data 下。