Autofs自动挂载服务

Autofs自动挂载服务

Autofs简介

mount是用来挂载文件系统的,可以在系统启动的时候挂载也可以在系统启动后挂载。对于本地固定设备,如硬盘可以使用mount挂载;而光盘、软盘、NFS、SMB等文件系统具有动态性,即需要的时候才有必要挂载。光驱和软盘我们一般知道什么时候需要挂载,但NFS和SMB共享等就不一定知道了,即我们一般不能及时知道NFS共享和SMB什么时候可以挂载。而autofs服务就提供这种功能,好像windows中的光驱自动打开功能,能够及时挂载动态加载的文件系统。免去我们手动挂载的麻烦。要实现光驱,软盘等的动态自动挂载,需要进行相关的配置

Autofs特点

  • 优点

    autofs是一个守护进程,它会在后台检测用户是否要访问某一个还未挂载的文件系统,autofs会自动检测该文件系统是否存在,如果存在则进行挂载,如果用户过了一段时间还没有使用该文件系统,autofs自动将其卸载,节省人力维护的成本,以及节省服务器资源

  • 缺点

    当用户请求时候才挂载文件系统,如果高并发的业务场景,大量的用户并发访问文件系统,autofs突然进行大量挂载,会给服务器造成很大的压力,一次一些高并发场景下,宁愿保持持续挂载,也不用

安装Autofs服务

[root@localhost ~]# yum -y install autofs
Updating Subscription Management repositories.
Last metadata expiration check: 0:09:58 ago on Sun 14 Mar 2021 08:41:40 PM CST.
Dependencies resolved.
====================================================================================
 Package          Architecture     Version                     Repository      Size
====================================================================================
Installing:
 autofs           x86_64           1:5.1.4-43.el8              base           781 k
====================================================================================
Install  1 Package

Total download size: 781 k
Installed size: 3.6 M
Downloading Packages:
autofs-5.1.4-43.el8.x86_64.rpm                      1.8 MB/s | 781 kB     00:00    
------------------------------------------------------------------------------------
Total                                               1.8 MB/s | 781 kB     00:00     
Running transaction check
Running transaction
  Preparing        :                                                            1/1 
  Installing       : autofs-1:5.1.4-43.el8.x86_64                               1/1       
Installed products updated.

Installed:
  autofs-1:5.1.4-43.el8.x86_64                                                      

Complete!

//设置开机自启
[root@localhost ~]# systemctl start autofs
[root@localhost ~]# systemctl enable autofs
Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.

修改配置文件(主配置+子配置)

autofs服务程序的主配置文件中需要按照挂载目录 子配置文件的格式写入参数。挂载目录是设备要挂载位置的上一级目录

设备一般是挂载到/media/cdrom目录中的,那么此处就应该写成/media即可,而对应的子配置文件则是对这个目录内挂载设备信息的进一步说明,配置文件是需要用户自行定义的

定义主配置文件

[root@localhost ~]# vim /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
/media /etc/cdrom.misc #添加这行配置

定义子配置文件

子配置文件中应按照“挂载目录 挂载文件类型及权限 :设备名称”的格式写入参数

把设备挂载到/media/cdrom目录中,则此时写iso即可,而-fstype为文件系统格式参数,iso9660为光盘系统设备格式,ro、nosuid及nodev为光盘设备具体的权限参数,最终/dev/cdrom则是定义要挂载的设备名称

[root@localhost ~]# vim /etc/cdrom.misc 

cdrom -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

//重启autofs
[root@localhost ~]# systemctl restart autofs

测试

//查看挂载情况
#cdrom没有被挂载
[root@localhost ~]# df -h
Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               883M     0  883M   0% /dev
tmpfs                  901M     0  901M   0% /dev/shm
tmpfs                  901M   17M  884M   2% /run
tmpfs                  901M     0  901M   0% /sys/fs/cgroup
/dev/mapper/rhel-root   47G  1.9G   46G   4% /
/dev/sda1             1014M  179M  836M  18% /boot
tmpfs                  181M     0  181M   0% /run/user/0

//进入media/cdrom触发挂载
[root@localhost ~]# cd /media/cdrom
[root@localhost cdrom]# ls
AppStream  EULA              images      RPM-GPG-KEY-redhat-beta
BaseOS     extra_files.json  isolinux    RPM-GPG-KEY-redhat-release
EFI        GPL               media.repo  TRANS.TBL
#可以看到cdrom被挂载
[root@localhost cdrom]# df -h
Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               883M     0  883M   0% /dev
tmpfs                  901M     0  901M   0% /dev/shm
tmpfs                  901M   17M  884M   2% /run
tmpfs                  901M     0  901M   0% /sys/fs/cgroup
/dev/mapper/rhel-root   47G  1.9G   46G   4% /
/dev/sda1             1014M  179M  836M  18% /boot
tmpfs                  181M     0  181M   0% /run/user/0
/dev/sr0               7.9G  7.9G     0 100% /media/cdro
原文地址:https://www.cnblogs.com/leixixi/p/14535467.html