Empecemos por el principio. "autofs" es un servicio Unix/Linux que permite que un recurso se monte justo cuando se necesita. Pasado un tiempo de ociosidad (configurable, luego lo vemos), el recurso se desmonta.
Esto presenta ventajas desde varios puntos de vista:
- Durante el arranque, el host no tiene que montar todos los sistemas de ficheros que pueden ser necesarios. Se montarán justo cuando empiecen a necesitarse. Se evitan los posibles sobresaltos y esperas durante el arranque.
- El servidor NFS, FTP o del tipo que sea tendrá menos clientes conectados.
- Durante el tiempo en el que el hots está encendido lo hará siempre con la menor cantidad de recursos montados.
Configuración básica
El fichero /etc/auto.master es el origen de la configuración. Los ficheros incluidos en él se incorporan a la configuración del demonio. Un contenido mínimo típico (quitando los comentarios):
/misc /etc/auto.misc
La lectura que debemos hacer es que en el punto de montaje "/misc" se montarán los recursos declarados en el fichero "/etc/auto.misc".
El fichero /etc/auto.misc podría contener las siguientes 2 lineas:
cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom recupera -fstype=nfs,nolock servidor_nfs:/data/recuperacionesTodo ello debe interpretarse como que virtualmente existen /misc/cd y /misc/recupera. Si sacamos un listado del directorio "/misc" puede que aparezca vacío, pero si accedemos a cualquiera de los 2 directorios virtuales se montará el correspondiente recurso y se mostrará el contenido.
Es muy importante que sepamos que el directorio /misc no debe contener nada. De hecho si contiene algo, al arrancar el demonio "autofs" desaparecerá virtualmente ya que el demonio gestiona por completo ese punto de montaje base. Esto es un pequeño inconveniente que solemos solventar con enlaces, como comento abajo.
Uso
Una vez configurado adecuadamente, usar el recurso es tan sencillo como acceder al recurso como si estuviera montado. En ese justo instante se monta si no lo está ya.
Un simple "ls" del punto de montaje servirá
ls /misc/recupera
La dificultad estriba, si cabe decirlo así, en saber donde está el recurso. Una operativa habitual consiste en crear un enlace simbólico del punto de montaje automático en el lugar donde lo querríamos tener. Supongamos para el ejemplo, que queremos tener el directorio de recuperaciones en el $HOME del root. Como hemos dicho, no es posible que el montaje automático ocurra en un directorio que usamos para otra cosa, pero si podemos hacer el enlace:
ln -s /misc/recupera /root/RECUPERA
Monitorización
- Una vez montado se puede ver con el comando "mount", df, etc.., es decir, con cualquier comando que se nos ocurra.
- El log del sistema almacena todos los hitos de montaje y desmontaje de los recursos del autofs.
Configuración avanzada
Una linea típica de configuración en el /etc/auto.misc puede contener cualquier opción que acepta el correspondiente comando "mount" para ese recurso. Una lectura atenta de la sintaxis nos permite adivinar dónde va el tipo de recurso y dónde las opciones. Un ejemplo más completo para el recurso NFS puede ser:
/recupera -fstype=nfs,rw,nosuid,nodev,hard,nolock,rsize=32768,wsize=32768,noatime,nodiratime servidor_nfs:/data/recuperaciones
La otra cuestión caliente es el tiempo que debe estar un recurso montado para evitar rebotes o que esté montado demasiado tiempo. En el fichero "auto.master" se puede modificar el timeout por defecto (suele ser 300 segundos). Por ejemplo:
/misc /etc/auto.misc --timeout=60
En el ejemplo hemos rebajado a 60 segundos la permanencia del montaje. Cuanto más prolongado o frecuente sea el uso mayor tiene que ser el timeout. Cuanto mas esporádico sea el uso del recurso menor debería ser el timeout. Eso requiere de tu propio ajuste fino.
Finalmente decir que es posible tener montado el mismo recurso en distintos puntos de montaje. Esto es extensible a autofs. Puedes tener un recurso montado manualmente y también tenerlo configurado por autofs o en varios puntos de montaje autofs. La imaginación al poder.
Hay muchísimas posibilidades y detalles que escapan a la intención de primera aproximación de este post, por eso te recomiendo que mires documentación oficial similar a esta.