Autofs自动挂载探讨
Autofs介绍:
mount是用来挂载文件系统的,可以在系统启动的时候挂载也可以在系统启动后挂载。对于本地固定设
备,如硬盘可以使用mount挂载;而光盘、软盘、NFS、SMB等文件系统具有动态性,即需要的时候才有
必要挂载。光驱和软盘我们一般知道什么时候需要挂载,但NFS和SMB共享等就不一定知道了,即我们
一般不能及时知道NFS共享和SMB什么时候可以挂载。而autofs服务就提供这种功能,好像windows中的
光驱自动打开功能,能够及时挂载动态加载的文件系统。免去我们手动挂载的麻烦。要实现光驱,软盘
等的动态自动挂载,需要进行相关的配置。
Autofs特点:
Autofs与Mount/Umount的不同之处在于,它是一种看守程序。如果它检测到用户正试图访问一个尚未
挂接的文件系统,它就会自动检测该文件系统,如果存在,那么Autofs会自动将其挂接。另一方面,
如果它检测到某个已挂接的文件系统在一段时间内没有被使用,那么Autofs会自动将其卸载。因此一
旦运行了Autofs后,用户就不再需要手动完成文件系统的挂接和卸载。
Autofs常用配置:
Autofs需要从/etc/auto.master文件中读取配置信息。该文件中可以同时指定多个挂接点,由Autofs
来挂接文件系统。文件中的每个挂接点单独用一行来定义,每一行可包括3个部分,分别用于指定挂接
点位置,挂接时需使用的配置文件及所挂接文件系统在空闲多长时间后自动被卸载。例如在文件中包括
了如下一行:
/auto /etc/auto.misc --timeout
其中第一部分指定一个安装点为/auto,第二部分指定该挂接点的配置文件为/etc/auto.misc,
第三部分指定所挂接的文件系统在空闲60秒后自动被卸载。
文件/etc/auto.misc的示例如下:
cd -fstype=iSO9660,ro :/dev/cdrom
fd -fstype=msdos :/dev/fd0
文件每一行都说明某一个文件系统如何被挂接。其中第一行指定将/dev/cdrom挂接在/auto/cd中,
第二行指定将/dev/fd0挂接在/auto/fd中。每一行的第二个值-fstype是一个可选项,用来表明所
挂接的文件系统的类型和挂接选项,在mount命令中能使用的挂接选项同样适用于-fstype。
实验环境:
NFS 服务器:
IP:192.168.112.130
[root@node03 ~]# cat /etc/redhat-release
CentOS release 6.6 (Final)
[root@node03 ~]# uname -r
2.6.-.el6.x86_64
[root@node03 ~]#
[root@node03 ~]# getenforce
Disabled
[root@node03 ~]# service iptables status
iptables: Firewall is not running.
[root@node03 ~]#
客户端:
IP:192.168.112.129
[root@node02 ~]# cat /etc/redhat-release
CentOS release 6.6 (Final)
[root@node02 ~]# uname -r
2.6.-.el6.x86_64
[root@node02 ~]#
[root@node02 ~]# getenforce
Disabled
[root@node02 ~]# service iptables status
iptables: Firewall is not running.
[root@node02 ~]#
1、NFS服务器安装nfs服务:
[root@node03 ~]# yum install rpcbind nfs nfs-utils
[root@node03 ~]# service rpcbind start
Starting rpcbind: [ OK ]
[root@node03 ~]#
[root@node03 ~]# service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Starting RPC idmapd: [ OK ]
[root@node03 ~]#
创建两个共享目录:cvxtmp和cvxtmp2
[root@node03 ~]# mkdir -p /cvxtmp
[root@node03 ~]# mkdir -p /cvxtmp2
[root@node03 ~]#
将磁盘/dev/sdb和/dev/sdc分别挂在到cvxtmp和cvxtmp2
[root@node03 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 97G .3G 89G % /
tmpfs tmpfs 236M 12K 236M % /dev/shm
/dev/sda1 ext4 976M 27M 898M % /boot
/dev/sdb ext4 50G 94M 47G % /cvxtmp2
/dev/sdc ext4 .9T .4G .6T % /cvxtmp
[root@node03 ~]#
2、修改nfs配置文件,将cvxtmp和cvxtmp2共享出去
[root@node03 ~]# cat /etc/exports
/cvxtmp *(rw,no_all_squash,no_subtree_check,sync)
/cvxtmp2 *(rw,no_all_squash,no_subtree_check,sync)
[root@node03 ~]#
[root@node03 ~]# showmount -e 192.168.112.130
Export list for 192.168.112.130:
/cvxtmp2 *
/cvxtmp *
[root@node03 ~]#
3、安装autofs服务
[root@node02 ~]# yum install autofs -y
安装完成之后,在/etc/下会有几个文件,如下所示:
[root@node02 ~]# ls -l /etc/auto.*
-rw-r--r-- root root Aug : /etc/auto.home
-rw-r--r-- root root Aug : /etc/auto.master
-rw-r--r-- root root Mar : /etc/auto.misc
-rwxr-xr-x root root Mar : /etc/auto.net
-rwxr-xr-x root root Mar : /etc/auto.smb
You have new mail in /var/spool/mail/root
[root@node02 ~]#
其中auto.master是主配置文件,之后我们要创建一个文件auto.home,然后将要挂载到本地的
分区的目录写入其中:
[root@node02 ~]# cat /etc/auto.home
/cvxtmp -rw,soft,intr node03:/cvxtmp
/cvxtmp2 -rw,soft,intr node03:/cvxtmp2
[root@node02 ~]#
此时编辑/etc/auto.master,将auto.home文件添加进去,autofs在启动时加载auto.home,"/- /etc/auto.home"
[root@node02 ~]# cat /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().
#
/misc /etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
# "nosuid" and "nodev" options unless the "suid" and "dev"
# options are explicitly given.
#
/net -hosts
/- /etc/auto.home
#
# Include central master map if it can be found using
# nsswitch sources.
#
# Note that if there are entries for /net or /misc (as
# above) in the included master map any keys that are the
# same will not be seen as the first read key seen takes
# precedence.
#
+auto.master
[root@node02 ~]#
然后重启autofs服务:
[root@node02 ~]# service autofs restart
Stopping automount: [ OK ]
Starting automount: [ OK ]
[root@node02 ~]#
查看挂在情况,结果发现我们配置的挂在分区居然没有挂在过来,难道配置错误?
[root@node02 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 97G .4G 89G % /
tmpfs tmpfs 236M 12K 236M % /dev/shm
/dev/sda1 ext4 976M 27M 898M % /boot
[root@node02 ~]#
接下来我们进入挂在的目录cvxtmp和cvxtmp2
[root@node02 ~]# cd /cvxtmp
[root@node02 cvxtmp]# cd ..
[root@node02 /]# cd cvxtmp2
[root@node02 cvxtmp2]#
然后再查看挂在情况:
[root@node02 cvxtmp2]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 97G .4G 89G % /
tmpfs tmpfs 236M 12K 236M % /dev/shm
/dev/sda1 ext4 976M 27M 898M % /boot
node03:/cvxtmp nfs .9T .4G .6T % /cvxtmp
node03:/cvxtmp2 nfs 50G 94M 47G % /cvxtmp2
[root@node02 cvxtmp2]#
发现挂在居然已经生效。此时到NFS服务端向这里两个目录分别写入文件cvxtmp.txt和cvxtmp2.txt
[root@node03 /]# echo cvxtmp > /cvxtmp/cvxtmp.txt
[root@node03 /]# echo cvxtmp2 > /cvxtmp2/cvxtmp2.txt
[root@node03 /]# cat /cvxtmp/cvxtmp.txt
cvxtmp
[root@node03 /]# cat /cvxtmp2/cvxtmp2.txt
cvxtmp2
[root@node03 /]#
然后再切换到挂载端查看。
[root@node02 ~]# cat /cvxtmp/cvxtmp.txt
cvxtmp
[root@node02 ~]# cat /cvxtmp2/cvxtmp2.txt
cvxtmp2
[root@node02 ~]#
发现挂在确实生效,至此autofs自动挂在功能已经实现。
Autofs自动挂载探讨的更多相关文章
- Linux:SAMBA共享、NFS共享、Autofs自动挂载
SAMBA.NFS共享区别 NFS开源文件共享程序:NFS(NetworkFile System)是一个能够将多台Linux的远程主机数据挂载到本地目录的服务,属于轻量级的文件共享服务,不支持Linu ...
- linux autofs自动挂载
autofs:自动挂载器 自动挂载器是一个监视目录的守护进程,并在目标子目录被引用时,自动执行预定义的NFS挂载 自动挂载器由autofs服务脚本管理 自动挂载器由auto.master配置文件进行配 ...
- autofs 自动挂载.
autofs 自动挂载. 操作环境:redhat 6 一.autofs 说明 自动挂载器是一个监视目录的守护进程,并在目标子目录被引用时,自动执行预定义的挂载 自动挂载器由autofs服务脚本管理 自 ...
- Linux服务——二、配置NFS及autofs自动挂载服务
一.NFS服务配置步骤 NFS的作用:能够使两台虚拟机之间实现文件共享.数据同步 准备:主机名.网络.yum源 Server端: 1.安装nfs-util和rpcbind:(图形化自带) [root@ ...
- autofs自动挂载
autofs是根据需要自动挂载,默认5分钟不使用自动卸载挂载点!nfs,smb,iso,sd*的挂载 环境:RHEL6.5/Centos6.5 172.24.0.25 01.安装autofs y ...
- NFS使用autofs自动挂载
NFS自动挂载设置在/etc/fstab和/etc/rc.local可能挂载不成功,假如是服务端NFS宕机还可能导致客户端无法启动,可以使用autofs实现自动挂载 安装autofs yum -y i ...
- 004.Autofs自动挂载
一 安装autofs [root@imxhy data]# yum -y install autofs 二 编辑自动挂载相关配置 2.1 修改master [root@imxhy ~]# vi /et ...
- 实现nfs持久挂载+autofs自动挂载
实验环境: 两台主机 node4:192.168.37.44 NFS服务器 node2:192.168.37.22 客户端 在nfs服务器,先安装nfs和rpcbind [root@node4 fen ...
- 2-5-NFS服务器配置和autofs自动挂载-配置Samba服务器配置现实文件共享
大纲: NFS服务器运行原理 实战配置NFS服务器 配置Samba服务器配置现实文件共享 ----------------------------------------------- 问题: # 怎 ...
随机推荐
- 并发编程(五)——AbstractQueuedSynchronizer 之 ReentrantLock源码分析
本文将从 ReentrantLock 的公平锁源码出发,分析下 AbstractQueuedSynchronizer 这个类是怎么工作的,希望能给大家提供一些简单的帮助. AQS 结构 先来看看 AQ ...
- redis 系列8 数据结构之整数集合
一.概述 整数集合(intset)是集合键的底层实现之一, 当一个集合只包含整数值元素,并且这个集合元素数量不多时, Redis就会使用整数集合作为集合键的底层实现.下面创建一个只包含5个元素的集合键 ...
- npm 包的 发布 流程
npm 包的发布流程 本文主要是针对 还未曾发布过自己的 npm 的同学,阐述一下 npm 的发布流程 熟悉的同学,可以绕道了. 首先你得有一个 自己的 npmjs.com 的账号 (没有的话,就到 ...
- 带着萌新看springboot源码12(启动原理 下)
先继续接上一篇,那个启动原理还有一点没说完. 6. afterRefresh(context, applicationArguments); 看这个名字就知道,应该就是ioc容器刷新之后的一些操作了, ...
- Java基础1:深入理解Java面向对象三大特性
更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...
- 文本主题模型之潜在语义索引(LSI)
在文本挖掘中,主题模型是比较特殊的一块,它的思想不同于我们常用的机器学习算法,因此这里我们需要专门来总结文本主题模型的算法.本文关注于潜在语义索引算法(LSI)的原理. 1. 文本主题模型的问题特点 ...
- RabbitMQ消息队列(八)-通过Topic主题模式分发消息(.Net Core版)
前两章我们讲了RabbitMQ的direct模式和fanout模式,本章介绍topic主题模式的应用.如果对direct模式下通过routingkey来匹配消息的模式已经有一定了解那fanout也很好 ...
- MySQL/MariaDB系列文章目录
以下是本系列文章的大纲,此页博文完全原创,花费了作者本人的极大心血,如转载,请务必标明原文链接. 如果觉得文章不错,还请帮忙点下"推荐",各位的支持,能激发和鼓励我更大的写作热情. ...
- 对配置文件 xml 进行操作
个人喜欢用 Linq 的方式来进行操作,方便快捷 <?xml version="1.0" encoding="utf-8" ?> <confi ...
- PHP中的Traits用法详解
PHP是单继承的语言,在PHP 5.4 Traits出现之前,PHP的类无法同时从两个基类继承属性或方法.php的Traits和Go语言的组合功能有点类似, 通过在类中使用use关键字声明要组合的Tr ...