首页 > 系统相关 >RockyLinux配置AutoFs自动挂载

RockyLinux配置AutoFs自动挂载

时间:2024-01-01 22:32:13浏览次数:33  
标签:1.9 dev client AutoFs RockyLinux 挂载 tmpfs root

一、AutoFS简介

Autofs是一个自动挂载文件系统的工具,它可以自动地在需要时挂载文件系统并在不需要时卸载。与mount命令不同,autofs服务程序是一种Linux系统守护进程,当检测到用户试图访问一个尚未挂载的文件系统时,将自动挂载该文件系统。换句话说,将挂载信息填入/etc/fstab文件后,系统在每次开机时都自动将其挂载,而autofs服务程序则是在用户需要使用该文件系统时才去动态挂载,从而节约了网络资源和服务器的硬件资源。

二、实验环境

2.1 实验平台

  • VMware Workstation 17 Pro
  • PNETLab 4.2.10

2.2 实验拓扑

如下图,3台主机接入到同一网络下,均可以互通,且可以访问Internet

RockyLinux配置AutoFs自动挂载_自动挂载

2.2 资源规划

主机

角色

主机名

IP地址

操作系统

Client

autofs客户端

client

172.16.0.100/24

Rocky Linux 8.9

主机

用户名/密码

共享目录

IP地址

Samba-Server

lisi/redhat

/share/samba

172.16.0.20/24

NFS-Server

N/A

/share/nfs

172.16.0.30/24

前提条件:接下来的实验将直接跳过服务端的配置,可参阅以下内容:

配置Samba文件共享

Linux配置NFS文件共享

三、安装AutoFS

3.1 安装autofs软件包

[root@client ~]# yum -y install autofs
[root@client ~]# rpm -qc autofs	# 查看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

3.2 配置文件详解

打开文件 /etc/auto.master ,您将看到类似于以下内容的内容:

root@client ~]# vim /etc/auto.master
/misc   /etc/auto.misc

每一行的第一个参数为挂载目录的“基目录”,第二个参数定义要使用的模板

例如:

/mnt    /etc/mnt.misc   --timeout=5

定义了两个“基目录”,挂载的具体参数分别在/etc/mnt.misc/etc/media.misc模板文件中,可选参数“--timeout”是设置卸载目录的秒数,挂载目录超时未使用将自动取消挂载,将此值设置为 0 将禁用超时,则目录在第一次自动挂载以后一直处于挂载状态,除非手动取消挂载

模板文件参数:

filename        -options        :/device/path

第一参数定义挂载的目录,如果基目录为“/mnt”,则自动挂载后的路径为“/mnt/filename”,第二个参数是挂载的参数选项,第三个参数是挂载源

或者,可以在/etc/auto.master中这样定义“基目录”

/-    /etc/mnt.misc   --timeout=5

则模板文件中可以直接写挂载路径

/mnt/filename        -options        :/device/path

处于生产环境中的Linux服务器,一般会同时管理许多设备的挂载操作。如果把这些设备挂载信息都写入/etc/auto.master文件中,无疑会让主配置文件臃肿不堪,不利于服务执行效率,也不利于日后修改里面的配置内容。建议在/etc/auto.master.d/目录中新建文件,文件名后缀必须是.autofs,模板文件的文件名没有严格要求,但后缀建议以.misc结束。

四、参考实例

3.1 自动挂载USB设备

首先,为Client主机准备一块USB设备,因为是VMware虚拟机环境,先把USB设备插入到宿主机上,然后连接至虚拟机

RockyLinux配置AutoFs自动挂载_自动挂载_02

查看新增的块设备

[root@client ~]# lsblk
NAME                MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                   8:0    0   50G  0 disk 
├─sda1                8:1    0    1G  0 part /boot
└─sda2                8:2    0   49G  0 part 
  ├─rl-root         253:0    0 45.1G  0 lvm  /
  └─rl-swap         253:1    0  3.9G  0 lvm  [SWAP]
sdb                   8:16   0   10G  0 disk 
└─vgtest-lvtest     253:3    0   10G  0 lvm  
sdc                   8:32   0   10G  0 disk 
└─sdc1                8:33   0    5G  0 part 
  └─vgtest1-lvtest1 253:4    0    3G  0 lvm  
sdd                   8:48   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sde                   8:64   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sdf                   8:80   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sdg                   8:96   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sdh                   8:112  0   10G  0 disk 
sdi                   8:128  0   10G  0 disk 
sdj                   8:144  0   10G  0 disk 
sdk                   8:160  1  7.5G  0 disk 	# /dev/sdk即是刚刚连接的USB设备
└─sdk1                8:161  1  7.4G  0 part 
sr0                  11:0    1 1024M  0 rom 
[root@client ~]# parted /dev/sdk print	# 查看设备信息
Model: Mass Storage Device (scsi)
Disk /dev/sdk: 7990MB	# 容量为8G
Sector size (logical/physical): 512B/512B
Partition Table: msdos	# MBR分区表
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      4194kB  7990MB  7986MB  primary  fat32	# 只有一个分区,FAT32文件系统

查看USB设备的UUID

[root@client ~]# blkid /dev/sdk1
/dev/sdk1: UUID="A013-1EE4" BLOCK_SIZE="512" TYPE="vfat"

配置自动挂载,挂载路径为“/mnt/usb”

oot@client ~]# vim /etc/auto.master.d/usb.autofs	# 编辑主配置文件
/mnt    /etc/auto_usb.misc      --timeout=5
[root@client ~]# vim /etc/auto_usb.misc	# 编辑模板文件
usb     -fstype=auto :UUID="A013-1EE4"
[root@client ~]# systemctl restart autofs.service	# 重启服务
[root@client ~]# systemctl enable autofs.service 	# 设置服务开机自启

自动挂载测试

[root@client ~]# df -Th	# 首先查看挂载情况,USB设备未挂载
Filesystem                  Type      Size  Used Avail Use% Mounted on
devtmpfs                    devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs                       tmpfs     1.9G     0  1.9G   0% /dev/shm
tmpfs                       tmpfs     1.9G   18M  1.9G   1% /run
tmpfs                       tmpfs     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/rl-root         xfs        46G  5.5G   40G  13% /
/dev/mapper/vgtest2-lvtest2 xfs        35G  283M   35G   1% /data
/dev/sda1                   xfs      1014M  246M  769M  25% /boot
tmpfs                       tmpfs     388M   28K  388M   1% /run/user/1000
tmpfs                       tmpfs     388M     0  388M   0% /run/user/0
[root@client ~]# cd /mnt/usb	# 直接切换到/mnt/usb目录
[root@client usb]# df -Th ./	# USB设备自动挂载上来了
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sdk1      vfat  7.5G  4.5G  3.0G  61% /mnt/usb
[root@client usb]# ls	# 可以看到USB设备里面的文件
'??'  '????'  '????'   Android  'bandzip ????.zip'   cache   DCIM   download   LOST.DIR   MIUI   pictures  'System Volume Information'   tencent   ucdownloads
[root@client usb]# cd	# 返回家目录
[root@client ~]# 
[root@client ~]# df -Th /mnt/usb
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sdk1      vfat  7.5G  4.5G  3.0G  61% /mnt/usb
##################
等待5秒超时后
##################
[root@client ~]# df -Th	# 再次查看挂载情况,USB设备已自动取消挂载
Filesystem                  Type      Size  Used Avail Use% Mounted on
devtmpfs                    devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs                       tmpfs     1.9G     0  1.9G   0% /dev/shm
tmpfs                       tmpfs     1.9G   18M  1.9G   1% /run
tmpfs                       tmpfs     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/rl-root         xfs        46G  5.5G   40G  13% /
/dev/mapper/vgtest2-lvtest2 xfs        35G  283M   35G   1% /data
/dev/sda1                   xfs      1014M  246M  769M  25% /boot
tmpfs                       tmpfs     388M   28K  388M   1% /run/user/1000
tmpfs                       tmpfs     388M     0  388M   0% /run/user/0
[root@client ~]# df -Th /mnt/usb	# 而df命令后面直接跟/mnt/usb路径也会触发自动挂载
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sdk1      vfat  7.5G  4.5G  3.0G  61% /mnt/usb
##################
等待5秒超时后
##################
[root@client ~]# ls /mnt
[root@client ~]# ls /mnt/usb		# 可见,只要系统需要用到/mnt/usb这个目录,就会触发自动挂载
'??'  '????'  '????'   Android  'bandzip ????.zip'   cache   DCIM   download   LOST.DIR   MIUI   pictures  'System Volume Information'   tencent   ucdownloads

3.2 自动挂载CD-ROM设备

Client虚机在系统启动时,已连接光驱,使用系统安装的ISO镜像,相当于已将一张系统安装的光盘放入了光驱设备中

RockyLinux配置AutoFs自动挂载_AutoFs_03

查看块设备

[root@client ~]# lsblk
NAME                MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                   8:0    0   50G  0 disk 
├─sda1                8:1    0    1G  0 part /boot
└─sda2                8:2    0   49G  0 part 
  ├─rl-root         253:0    0 45.1G  0 lvm  /
  └─rl-swap         253:1    0  3.9G  0 lvm  [SWAP]
sdb                   8:16   0   10G  0 disk 
└─vgtest-lvtest     253:3    0   10G  0 lvm  
sdc                   8:32   0   10G  0 disk 
└─sdc1                8:33   0    5G  0 part 
  └─vgtest1-lvtest1 253:4    0    3G  0 lvm  
sdd                   8:48   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sde                   8:64   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sdf                   8:80   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sdg                   8:96   0   10G  0 disk 
└─vgtest2-lvtest2   253:2    0   35G  0 lvm  /data
sdh                   8:112  0   10G  0 disk 
sdi                   8:128  0   10G  0 disk 
sdj                   8:144  0   10G  0 disk 
sdk                   8:160  1  7.5G  0 disk 
└─sdk1                8:161  1  7.4G  0 part 
sr0                  11:0    1 1024M  0 rom 	# /dev/sr0即是CD-ROM设备
[root@client ~]# ls -l /dev/sr0
brw-rw----+ 1 root cdrom 11, 0 Jan  1 14:10 /dev/sr0
[root@client ~]# ls -l /dev/cdrom
lrwxrwxrwx. 1 root root 3 Jan  1 14:10 /dev/cdrom -> sr0		# /dev/cdrom是/dev/sr0的软链接

配置自动挂载,挂载路径为"/media",并且希望永久挂载

[root@client ~]# vim /etc/auto.master.d/cdrom.autofs
/-      /etc/auto_cdrom.misc    --timeout=0
[root@client ~]# vim /etc/auto_cdrom.misc
/media  -fstype=iso9660,ro,nosuid,nodev :/dev/sr0
[root@client ~]# systemctl restart autofs

挂载选项

作用

-fstype=iso9660

光盘的文件系统格式为iso9660

ro

只读

nosuid

禁止 suid 操作和设定 sgid 位

nodev

挂载后,不可以打开此目录下的设备文件

自动挂载测试

[root@client ~]# df -Th
Filesystem                  Type      Size  Used Avail Use% Mounted on
devtmpfs                    devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs                       tmpfs     1.9G     0  1.9G   0% /dev/shm
tmpfs                       tmpfs     1.9G   18M  1.9G   1% /run
tmpfs                       tmpfs     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/rl-root         xfs        46G  5.5G   40G  13% /
/dev/mapper/vgtest2-lvtest2 xfs        35G  283M   35G   1% /data
/dev/sda1                   xfs      1014M  246M  769M  25% /boot
tmpfs                       tmpfs     388M   28K  388M   1% /run/user/1000
tmpfs                       tmpfs     388M     0  388M   0% /run/user/0
[root@client ~]# cd /media
[root@client media]# ls
BaseOS  EFI  images  isolinux  LICENSE  media.repo  Minimal  TRANS.TBL
[root@client media]# df -Th ./
Filesystem     Type     Size  Used Avail Use% Mounted on
/dev/sr0       iso9660  2.4G  2.4G     0 100% /media

3.3 自动挂载NFS共享目录

首先我们先使用showmount命令来查看NFS服务器的共享目录,需要先安装“nfs-utils”包

[root@client ~]# yum -y install showmount
[root@client ~]# showmount -e 172.16.0.30
Export list for 172.16.0.30:
/share/nfs *			# NFS服务端的共享目录为/share/nfs

配置自动挂载,挂载路径为“/mnt/nfsfile”,超时时间为30秒

[root@client ~]# vim /etc/auto.master.d/nfs.autofs
/mnt    /etc/auto_nfs.misc      --timeout=30
[root@client ~]# vim /etc/auto_nfs.misc
nfsfile -rw     172.16.0.30:/share/nfs
[root@client ~]# systemctl restart autofs

自动挂载测试

[root@client ~]# cd /mnt/
[root@client mnt]# ls
[root@client mnt]# cd /mnt/nfsfile
[root@client nfsfile]# ls
README
[root@client nfsfile]# cat README 
This is a shared folder for nfs
[root@client nfsfile]# df -Th ./
Filesystem             Type  Size  Used Avail Use% Mounted on
172.16.0.30:/share/nfs nfs4   37G  2.2G   35G   6% /mnt/nfsfile
################
等待30秒超时后
################
[root@client ~]# df -Th			# /mnt/nfsfile已自动取消挂载
Filesystem                  Type      Size  Used Avail Use% Mounted on
devtmpfs                    devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs                       tmpfs     1.9G     0  1.9G   0% /dev/shm
tmpfs                       tmpfs     1.9G   18M  1.9G   1% /run
tmpfs                       tmpfs     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/rl-root         xfs        46G  5.6G   40G  13% /
/dev/mapper/vgtest2-lvtest2 xfs        35G  283M   35G   1% /data
/dev/sda1                   xfs      1014M  246M  769M  25% /boot
tmpfs                       tmpfs     388M   28K  388M   1% /run/user/1000
tmpfs                       tmpfs     388M     0  388M   0% /run/user/0

3.4 自动挂载Samba共享目录

首先我们先使用smbclient命令来查看samba服务器的共享目录,需要先安装“samba-client”包

[root@client ~]# yum -y install samba-client
[root@client ~]# smbclient -L //172.16.0.20 -U lisi --password=redhat

        Sharename       Type      Comment
        ---------       ----      -------
        samba_share     Disk      share for lisi	# 查看到“samba_share”这个目录
        IPC$            IPC       IPC Service (Samba 4.18.6)
SMB1 disabled -- no workgroup available

为了支持cifs协议挂载,还需要安装cifs-utils包

[root@client ~]# yum -y install cifs-utils

配置自动挂载,挂载路径为“/samba”,超时时间为10秒

[root@client ~]# vim /etc/auto.master.d/samba.autofs
 /-    /etc/auto_samba.misc    --timeout=10
 [root@client ~] vim /etc/auto_samba.misc
/samba   -fstype:cifs,username=lisi,password=redhat      ://172.16.0.20/samba_share
[root@client ~]# systemctl restart autofs.service

自动挂载测试

[root@client ~]# df -Th
Filesystem                  Type      Size  Used Avail Use% Mounted on
devtmpfs                    devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs                       tmpfs     1.9G     0  1.9G   0% /dev/shm
tmpfs                       tmpfs     1.9G   18M  1.9G   1% /run
tmpfs                       tmpfs     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/rl-root         xfs        46G  5.6G   40G  13% /
/dev/mapper/vgtest2-lvtest2 xfs        35G  283M   35G   1% /data
/dev/sda1                   xfs      1014M  246M  769M  25% /boot
tmpfs                       tmpfs     388M   28K  388M   1% /run/user/1000
tmpfs                       tmpfs     388M     0  388M   0% /run/user/0
[root@client ~]# cd /samba
[root@client samba]# df -Th ./
Filesystem                Type  Size  Used Avail Use% Mounted on
//172.16.0.20/samba_share cifs   37G  2.3G   35G   7% /samba
[root@client samba]# cd
[root@client ~]# 
################
等待10秒超时后
################
[root@client ~]# df -Th
Filesystem                  Type      Size  Used Avail Use% Mounted on
devtmpfs                    devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs                       tmpfs     1.9G     0  1.9G   0% /dev/shm
tmpfs                       tmpfs     1.9G   18M  1.9G   1% /run
tmpfs                       tmpfs     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/rl-root         xfs        46G  5.6G   40G  13% /
/dev/mapper/vgtest2-lvtest2 xfs        35G  283M   35G   1% /data
/dev/sda1                   xfs      1014M  246M  769M  25% /boot
tmpfs                       tmpfs     388M   28K  388M   1% /run/user/1000
tmpfs                       tmpfs     388M     0  388M   0% /run/user/0

参阅

Autofs - ArchWiki

第12章 AutoFs自动挂载服务 | 《Linux就该这么学》

文件系统的 nodev 挂载选项有什么用? – 肥叉烧 feichashao.com


标签:1.9,dev,client,AutoFs,RockyLinux,挂载,tmpfs,root
From: https://blog.51cto.com/min2000/9058589

相关文章

  • Linux 挂载 Windows 共享文件夹 cifs
    Linux挂载Windows共享文件夹cifs一台Windows系统(192.168.1.10),创建一个共享文件夹share。Windows客户端访问路径就是:\\192.168.1.10\shareLinux下挂载方法如下(CentOS7):1).需要安装cifs-utils软件包yuminstall-ycifs-utils2).不管是开机自动挂载还是手动挂载,我们都首先在/mn......
  • Linux 挂载 IP SAN
    CentOS7挂载IPSAN环境描述IPSAN为DellEQLPS4100,创建卷名称ODB01,分别设置指定IP允许访问和CHAP账户访问。IPSAN对外服务IP:10.3.6.10CentOS19087.7:10.3.5.1211.安装iSCSIinitiator和iscsiadmiscsiadm是基于命令行的iscsi管理工具,提供了对iscsi节点、会话、连接以及发现记......
  • Centos8 硬盘挂载
    查看硬盘分区状况fdisk-l可以看到数据盘/dev/vdb大小为10Gb,目前还没有进行分区。对/dev/vdb资源盘进行分区fdisk/dev/vdb//根据提示输入信息:Command(mforhelp):输入nSelect(defaultp):输入pPartitionnumber(1-4,default1):输入1Firstsector(20......
  • windows使用rclone挂载alist为本地磁盘,设置开机自启
    前言实现在windows下将alist挂载为本地磁盘,并设置开机自启,使得重启后依然生效。教程下载软件Rclone:RclonedownloadsWinFsp:https://winfsp.dev/rel/配置Rclone假设Rclone所在目录是:D:\rclone-v1.64.0-windows-amd64,进入文件目录,在地址栏输入cmd输入rcloneconfig......
  • 运维工程师面试题整理(挂载windows下的共享目录 查看http的并发请求数 tcpdump嗅探80端
    1.linux如何挂载windows下的共享目录mount.cifs//192.168.1.3/server/mnt/server-ouser=administrator,pass=123456linux下的server需要自己手动建一个,后面的user与pass是windows主机的账号和密码,注意空格和逗号2.查看http的并发请求数与其TCP连接状态netstat-n|awk'/^......
  • NFS文件服务器及客户端挂载(搞个网盘玩一下啦)
    NFS简介什么是NFS?NFS(NetworkFileSystem)网络文件系统目标:实现计算机之间通过网络共享资源将NFS主机分享的目录,挂载到自己电脑,我们就可以用自己电脑使用NFS的硬盘存储资源大白话说,就像百度云盘差不多哦~~NFS实现原理是什么?NFS每个功能会开启不同端口,使用RPC管理端口,RP......
  • Linux磁盘分区和挂载
    一、准备工作(1)查看主机磁盘命令:lsblk(2)查看主机磁盘挂载文件系统情况命令:df-h二、磁盘分区(1)分区命令:fdisk-b1024/dev/vda其中:b1024,一个sectorsize的大小;1GB;使用-b指定sector时,每个sector的大小是:sectorsize(512,1024,2048or4096)。(2)根据提示填写相应信息n,是......
  • Alist系列之---【使用RaiDrive把网盘挂载到本地】
    1.前提已经搭建好了Alist2.安装RaiDrive下载地址:https://www.raidrive.com/下载好之后,一路下一步安装即可,耗时可能有点长。3.配置webdav......
  • nfs挂载
    ​ NFS(networkfilesystem)NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。也就是说NFS服务端提供共享目录文件挂载在客户端某一个目录文件下,以供客户端去访问和使用​编辑思路:在虚拟机下创建根文......
  • 【Docker】关于挂载修改&迁移问题
    如果进行容器挂载迁移,新挂载的目录会导致之前容器内的数据丢失,接下来给大家整理思路之前是没有进行数据挂载的,也就是默认路径#先查看一下默认路径dockerinspect【容器名】#Mounts这里有详细的挂载信息,可以看到最开始的默认路径是home/lib/docker/volumes/b9588a26ea88d44f1......