Autofs
antofs简介
我们通过mount命令来挂载需要的设备,如光盘硬盘等固定设备。而NFS和SMB这种动态设备只在需要的时候挂载,不然会长期占用服务器资源造成浪费。autofs则提供这种功能让我们在需要的时候能自动挂载,以及相应的配置
Autofs的特点:
- 守护进程,随时监测用户访问文件系统
- 用户需要时,守护进程会检测设备是否存在,存在就挂载
- 用户一段时间不用,则会断开挂载,节省资源
autofs的安装
用yum命令直接安装
//yum安装设置systemctl开机自启
[root@node0 ~]# yum -y install autofs.x86_64
[root@node0 ~]# systemctl enable --now autofs.service
Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.
配置文件的编辑
主配置文件
/etc/auto.master
- 由于实际操作挂载设备会很多,全部写入文件会很臃肿,配置格式为:
挂载路径 子配置文件路径
# Sample auto.master file
# This is a 'master' automounter map and it has the following format:
# mount-point [map-type[,format]:]map [options]
# For details of the format look at auto.master(5).
#
/misc /etc/auto.misc #配置文件以挂载设备路径后缀
子文件配置
/etc/autofs.misc
由于挂载目录不存在,则自行创建auto.服务名
[root@node0 ~]# vim /etc/anto.iso
//挂载目录 挂载文件类型及权限 :设备名称
iso -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
实战(以配置nfs共享目录为例)
nfs服务器端准备
[root@serverb ~]# yum -y install nfs-utils
[root@serverb ~]# [root@node0 ~]# systemctl enable --now nfs-server.service
[root@serverb ~]# mkdir /rhome/
[root@serverb ~]# useradd -d /rhome/ldapuser0 ldapuser0
[root@serverb ~]# vim /etc/exports
/rhome/ldapuser0 *(rw) #
[root@serverb ~]# systemctl restart nfs-server
[root@serverb ~]# systemctl enable nfs-server
[root@serverb ~]# firewall-cmd --permanent --add-service=rpc-bind
[root@serverb ~]# firewall-cmd --permanent --add-service=nfs
[root@serverb ~]# firewall-cmd --permanent --add-service=mountd
[root@serverb ~]# firewall-cmd --reload
autofs设备端
[root@servera ~]# showmount -e serverb.lab.example.com
Export list for 172.25.250.11:
/rhome/ldapuser0 *
[root@servera ~]# yum -y install autofs
[root@servera ~]# systemctl enable --now autofs
[root@servera ~]# vim /etc/auto.master
/rhome /etc/auto.nfs
[root@servera ~]# vim /etc/auto.nfs
ldapuser0 -rw serverb.lab.example.com:/rhome/ldapuser0
[root@servera ~]# systemctl restart autofs
[root@servera ~]# cd /rhome/
[root@servera rhome]# ls
[root@servera rhome]# cd ldapuser0 # 触发挂载