Linux -- 进阶 自动挂载服务 ( autofs ) 介绍及安装 主配置文件分析

背景引入 : 

针对于 挂载 , 大家有没有思考过一个问题,如果我们需要挂载的文件或访问的远程数据甚至只是挂载一些设备,如果太多的话,数量很大的话,那 光每次挂载 敲的 mount 命令,都得敲很多遍啊, 会不会觉得很麻烦~?  

那有的同学就会说,你一次性挂载完不就行了,

那还有个问题就是,你挂载的这些东西,你能保证每时每刻都在用嘛 ??? 

你这个设备或文件挂载完后,有可能用完之后,就不需要了,甚至有可能就用这一次,以后的长时间里都不会用呢 ??  

那是不是就占用空间,浪费资源了 ???

所以,就提出一个需求 

===>>> 

        就是 当批量的设备或文件需要挂载时,我们形成自动化的挂载,即需要时就挂载,不需要时

        自己就自动卸掉了,即按需挂载 ~!!!

        那什么叫不需要呢 ?? 

        ===>>> 

                就是说,不访问挂载目录,只要退出挂载目录它就自动卸掉了,只要使用 cd  命令进这

                个 共享目录了,它自己就又自动挂载上了;  

                既按需使用同时也节省资源 ~!!!!!!!

                

        那怎么实现这个 需求呢 ?? 

        ===>>> 

                       这就引入 我们今天要讲的点 ----  自动挂载服务 ( Autofs ) 

产生原因 : 

                

     在一般 NFS 文件系统的使用过程中,如果客户端要使用服务端所提供的文件系统,可以

         在 /etc/fstab 中设置开机时自动挂载,也可以在登录系统后手动利用 mount 命令来挂载

         ( 但是,手动就伴随着 系统重启就会失效 。)

    #   由于网络的问题,NFS 服务器与客户端的连接不会一直存在,当我们挂载了 NFS 服务器之

         后,任何一方脱机都可能造成另一方等待超时,如果在资源挂载后长期不使用,也会造成

         服务器硬件资源的浪费。 

    #   为了解决这一问题,就提出下列想法 : 

         *  当客户端在有使用 NFS 文件系统的需求时才让系统自动挂载 

         *  当 NFS 文件系统使用完毕后 ( autofs 默认自动卸载时间为 300秒 即5 分钟 ),让NFS自

             动卸载。 

          ( 这 300秒 的意义就是, 举个例子,其实有的时候,使用完之后,立刻就卸掉好像也不太

               好,所以我们就设置了这个延迟时间,这个时间过了之后,就会自动卸载掉。  )

     #   autofs 自动挂载服务可以帮我们解决这一问题,该服务是运行在客户端的一种 Linux 系统守

         护进程,在用户需要使用该文件系统时才会去动态挂载,从而节约了网络资源和服务器的硬

         件资源。

         ( Autofs 它是一个软件,它就可以帮我们解决上面的需求,可以实现 按需挂载; 

           所以,它能实现我们的需求有一个很大的原因就是, Autofs 是有一个守护进程的,而且它

           是肯定会有个守护进程的,不然它怎么知道你需要的时候就可以立即给你挂载呢 ?? 

           这个守护进程 一直在监听 所有的共享目录,只要你 cd 命令进到这个共享目录里,它立刻

           就会给你挂载上,一直常驻内存,被动的监听着用户的访问,按照需要实现动态挂载~!)

           那它也是个软件,所以,我们先安装下 

安装

 服务端 : 

[root@server ~]# yum install autofs -y  # 服务端  Autofs安装 

  客户端 

[root@node1 ~]# yum install autofs -y   # 客户端 安装

    #  我们在 客户端  服务端 都装了 Autofs ; 

        其实,一般情况下,服务端是不需要装 Autofs 的,但是将来服务端也要用客户端的相关数

        据,不也就可以用了,不一定 Autofs 是专门用于自动化挂载远程服务的,它也可以自动化挂

        载本地 ( 比如自动化挂载本地光盘~~ ) 

        所以,就干脆 客户端 ,服务端 都安装上 ~!! 

        但是,注意,要是只使用远程的共享目录的话,那就只需要给 客户端 安装就好( 谁访问就给

        谁装嘛~!)

  定位到 客户端   : 

[root@node1 ~]# vim /etc/auto.master 

  Linux -- 进阶 自动挂载服务 ( autofs ) 介绍及安装 主配置文件分析_第1张图片

 #    /etc/auto.master   即是 Autofs 的主配置文件  ( 38 行,大部分都是注释  ) 

 #   上示主配置文件里的内容 最重要的就是 我们做标记的那个 (  /misc     /etc/auto.misc  ) 

       表示的含义就是  : 

                *   指明  要挂载的目录是哪个 ( /misc ) 

                *   它的配置文件的路径是什么  ( /etc/auto.misc ) 

       

       比如,现在有 100 多个设备需要挂载, 那按道理走,是不是就得在主配置文件里,把这100多

       个设备全写在里面,那这个主配置文件是不是肯定也就 多了 100 多行, 那这个配置文件就显

       得很臃肿 ( 人家本身也就 38 行,一下又多了 100 多行 ) 所以,就会显得比较臃肿~!!

        那么,为了不让配置文件不臃肿,将来检索文件效率高一点,所以,就不需要把 这 100 多个

        设备的挂载命令写到 这个配置文件里 ,  

       

        那怎么办呐 ? 

         ===>>> 

                    就是把 需要挂载的设备 独立的形成一个 子配置文件 ~!! 

                    以 上示 为例  (  /misc       /etc/auto.misc  )   

                    /misc          ===>>>>              就是 挂载的父目录  

                    /etc/auto.misc     ===>>>>    被挂载设备的子配置文件    

                   

                   为什么说 /misc  是父目录呢  ?? 

                   ===>>>

                              因为 自动挂载 有一个要求 就是  , 有一个父目录 是最好的 ~!!!

                              比如,要挂载的目录为 test  ,那它前面 就必须得 有一级 ,

                              那一级的父目录 就得写到 主配置文件里,你的被挂载的设备的相关目录就得写

                              到子配置文件里 ~!!!

       

       注  :  

                        *     父目录不需要 建立,你只需要在主配置文件里起个名字即可

                               它是自动建立的~!!!

主配置文件分析 : 

  

        #  配置文件路径  : /etc/auto.master 

        #  作用  :  

                   处于 生产环境中的 Linux 服务器,一般会同时管理许多设备的挂载操作。 如果把这些

                   设备挂载信息都写入到autofs 服务的主配置文件中,无疑会让主配置文件臃肿不堪,

                   不利于服务执行效率,也不利于日后修改里面的配置内容,则需要将挂载的设备形成

                   独立配置的子文件,主配置文件只存储配置挂载设置的文件名。

        #  /etc/auto.master  文件内容格式  :   挂载目录         子配置文件 

            *     挂载目录  :  不需要实现存在,因为 autofs 会主动建立该目录 

            *     子配置文件 : 文件名可自定义 

            *      示例  :   /nfs                 /etc/auto.nfs  

                    (  也不一定必须按照 auto. XXX  , 格式命名,  不需要这样 ~!!) 

子配置文件分析  :

        #     子配置文件由自己创建,内容格式 : 

               *   本地挂载目录     [ -挂载参数 ]      服务器地址 : 目录 

                    示例  :  testmnt         192.168.1.1:/data

               *   挂载参数 : 

       参数                                  功能 
      fg/bg 当执行挂载时,该挂载行为会在前台( fg ) 还是后台( bg ) 执行,若在前台执行,则 mount 会持续尝试多次挂载,直到成功或 time out  为止;  若为后台执行,则mount 会在后台持续多次进行 mount ,而不会影响到前台的程序运行。 

                soft/hard      

hard 表示当 两者之间的任何一台主机脱机,则 RPC 会持续的呼叫,直到对方恢复连接为止。 

soft 则表示 RPC 会在 time out 后重复呼叫,而非持续呼叫

       intr 当使用上面提到的 hard 方式挂载时,若加上 intr 这个参数,则当 RPC 持续呼叫时,该次的呼叫是可以被中断的
           rsize/wsize

读出( rsize ) 与 写入( wsize ) 的区块大小。 

这个设置值可以影响客户端与服务器 

你可能感兴趣的:(Linux,进阶,运维,服务器,linux)