Autofs是一个自动挂载文件系统的工具,它可以根据需要自动挂载和卸载文件系统,而无需手动干预。这使得管理文件系统变得更加方便和高效。
在Linux系统中,autofs通常用于自动挂载NFS(Network File System)等远程文件系统,以便在需要时自动挂载远程文件系统,而在不需要时自动卸载。
1、安装autofs
安装:
# 安装
[root@localhost ~]# yum install -y autofs
# 查看配置文件位置
[root@localhost ~]# rpm -qc autofs
/etc/auto.master
/etc/auto.misc
/etc/auto.net
/etc/auto.smb
/etc/autofs.conf
/etc/autofs_ldap_auth.conf
/etc/sysconfig/autofs
/usr/lib/systemd/system/autofs.service
配置文件:
/etc/auto.master #主配置
# 内容格式
mount-point [map-type[,format]:]map [options]
/etc/auto.misc #挂载点配置样板
2、配置
需求:
将nfs挂载到/data/nfs目录下
创建/data目录:
mkdir /data
配置主映射文件:
vim /etc/auto.master.d/mynfs.autofs
echo "/data /etc/auto.mynfs --timeout=180" | sudo tee /etc/auto.master.d/mynfs.autofs > /dev/null
[root@localhost ~]# cat /etc/auto.master.d/mynfs.autofs
/data /etc/auto.mynfs --timeout=180
可添加参数:--timeout=180
定义超时时间,如果未对共享执行任何操作,共享将在 180 秒后自动卸载。
创建自动挂载策略:
vim /etc/auto.misc
echo "nfs -fstype=nfs,rw,soft,intr 192.168.122.10:/data" | sudo tee /etc/auto.mynfs > /dev/null
[root@localhost ~]# cat /etc/auto.mynfs
nfs -fstype=nfs,rw,soft,intr 192.168.122.10:/data
nfs
是一个挂载点,将被挂载到/data/nfs目录下-fstype=nfs
是文件系统类型,rw,soft,intr
是挂载选项。192.168.122.10
是 NFS 服务器的服务器实例的 IP 地址。:/data
是 NFS 共享。
3、启动服务
设置开机启动并启动服务
systemctl enable --now autofs
查看服务状态:
[root@localhost ~]# systemctl status autofs
● autofs.service - Automounts filesystems on demand
Loaded: loaded (/usr/lib/systemd/system/autofs.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2021-06-08 00:32:51 CST; 17min ago
Main PID: 983 (automount)
CGroup: /system.slice/autofs.service
└─983 /usr/sbin/automount --systemd-service --dont-check-daemon
Jun 08 00:32:50 localhost.localdomain systemd[1]: Starting Automounts filesystems on demand...
Jun 08 00:32:51 localhost.localdomain systemd[1]: Started Automounts filesystems on demand.
4、验证
首次需要进入/data/nfs会触发自动挂载,因此需要执行:cd /data/nfs
查看:
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 17G 1.8G 16G 11% /
/dev/sda1 1014M 138M 877M 14% /boot
/dev/sdb1 20G 45M 19G 1% /data/nfs
tmpfs 98M 0 98M 0% /run/user/0
5、其他的存储挂载
挂载samba的配置:
backup -fstype=cifs,username=smbuser1%asdf ://192.168.1.99/pub
挂载iso的配置:
iso -loop,fstype=iso9660,ro :/root/rhel-server-6.0-x86_64-boot.iso
挂载nfs的配置:
nfs -fstype=nfs 192.168.1.99:/test_nfs