- Introducción
- 1.1. Nota rápida sobre los términos
- Instalación
- Configuración
- 3.1. El archivo de mapa maestro
- 3.1.1. Mapas directos e indirectos
- 3.2. Archivos de mapa
- EJEMPLO: Montaje automático de un recurso compartido NFS
- 4.1. Editar /etc/auto.master
- 4.2. Crear /etc/auto.nfs
- 4.2.1. NFSv4
- 4.3. Desmontar los montajes estáticos y editar /etc/fstab
- 4.4. Recargue /etc/init.d/autofs
- 4.5. Asegúrese de que funciona
- Información avanzada
- 5.1. Nota sobre /net y /smb
- 5.2. Caracteres comodín
- Montaje de otros tipos de sistemas de ficheros
- 6.1. CIFS
- 6.2. Sistemas de archivos basados en FUSE
- 6.2.1. Sistema de archivos SSHFS
- Debiendo problemas de montaje automático
- Vea también
Introducción
autofs es un programa para montar automáticamente los directorios según sea necesario. Los montajes automáticos se montan sólo cuando se accede a ellos, y se desmontan después de un período de inactividad. Debido a esto, el montaje automático de recursos compartidos NFS/Samba conserva el ancho de banda y ofrece un mejor rendimiento general en comparación con los montajes estáticos a través de fstab.
1.1. Nota rápida sobre los términos
Para evitar confusiones, se utilizarán las siguientes terminologías:
-
automount es el programa utilizado para configurar un punto de montaje para autofs. Cuando se inicia autofs, se genera un demonio de automount para cada mapa.
-
autofs es el programa que controla el funcionamiento de los demonios de automontaje.
Auto-mount o auto-montaje se refiere al proceso de montar automáticamente los sistemas de archivos.
Instalación
Instala el paquete autofs pulsando aquí o introduciendo lo siguiente en una ventana de terminal:
-
$ sudo apt-get install autofs
Configuración
autofs se puede configurar editando los archivos de configuración. Hay otras formas de configurar autofs en una red (véase AutofsLDAP), pero los archivos de configuración proporcionan la configuración más sencilla.
3.1. El archivo de mapa maestro
El archivo de configuración maestro para autofs es /etc/auto.master por defecto. A menos que tenga una buena razón para cambiar esto, déjelo por defecto.
Aquí está el archivo de ejemplo proporcionado por Ubuntu:
## $Id: auto.master,v 1.4 2005/01/04 14:36:54 raven Exp $## Sample auto.master file# This is an automounter map and it has the following format# key location# For details of the format look at autofs(5).#/misc /etc/auto.misc --timeout=60#/smb /etc/auto.smb#/misc /etc/auto.misc#/net /etc/auto.net
-
Por defecto, todas las líneas se comentan utilizando el carácter #.
Cada una de las líneas de auto.master describe un montaje y la ubicación de su mapa. Estas líneas tienen el siguiente formato:
-
mount-point :] map
3.1.1. Mapas directos e indirectos
Los mapas automáticos pueden ser directos o indirectos. Los mapas indirectos, como los del archivo auto.master mostrado anteriormente, crean puntos de montaje como subdirectorios dentro del punto de montaje principal. Por ejemplo, considere la siguiente entrada del mapa maestro:
-
/smb /etc/auto.smb
Esta entrada en auto.master le dice a autofs que busque en /etc/auto.smb y cree puntos de montaje en el directorio /smb.
Los mapas directos crean un punto de montaje en la ruta especificada en el archivo de mapa correspondiente. La entrada del punto de montaje en auto.master es siempre /-. Por ejemplo, la siguiente línea indica a autofs que cree un punto de montaje en el lugar especificado en auto.data:
-
/- /etc/auto.data
- Si el archivo de mapa no se especifica utilizando una ruta local o de red completa, se utilizará la configuración del conmutador de servicio de nombres para localizar el mapa, por ejemplo
/- auto.data
3.2. Archivos de mapa
Como se indicó anteriormente, cada montaje autofs tiene su propio archivo de mapa. Estos archivos suelen nombrarse utilizando la convención auto.<X>, donde <X> puede ser cualquier cosa siempre que coincida con una entrada en auto.master y sea válida para un nombre de archivo.
Los archivos de mapa tienen el siguiente formato:
-
key location
EJEMPLO: Montaje automático de un recurso compartido NFS
En este howto, configuraremos autofs para montar automáticamente un recurso compartido NFS, utilizando un conjunto de archivos de configuración. Este howto asume que usted ya está familiarizado con las exportaciones NFS, y que ya tiene un recurso compartido NFS que funciona correctamente en su red. Vaya a la página de configuración de NFS para aprender a configurar dicho servidor.
4.1. Editar /etc/auto.master
El siguiente paso crea un punto de montaje en /nfs y lo configura según los ajustes especificados en /etc/auto.nfs (que crearemos en el siguiente paso).
- Escribe lo siguiente en un terminal:
$ sudo nano /etc/auto.master
-
Agrega la siguiente línea al final de /etc/auto.master:
/nfs /etc/auto.nfs
4.2. Crear /etc/auto.nfs
Ahora crearemos el archivo que contiene nuestro mapa de contadores automáticos:
-
$ sudo nano /etc/auto.nfs
Este fichero debe contener una línea distinta para cada recurso compartido NFS. El formato de una línea es {punto de montaje} {ubicación}. Si ha configurado previamente montajes estáticos en /etc/fstab, puede ser útil referirse a ellos. Recuerde que los puntos de montaje especificados aquí serán relativos al punto de montaje dado en /etc/auto.master.
La siguiente línea es para los recursos compartidos que utilizan versiones antiguas de NFS (anteriores a la versión 4):
-
server server:/
Esto crea un nuevo punto de montaje en /nfs/servidor/ y monta el directorio raíz NFS exportado por la máquina cuyo nombre de host es servidor.
4.2.1. NFSv4
Si sus recursos compartidos NFS utilizan NFSv4, debe informar a autofs al respecto. En tal caso, la línea anterior aparecería de la siguiente manera:
-
server -fstype=nfs4 server:/
El cliente necesita los mismos cambios en /etc/default/nfs-common para conectarse a un servidor NFSv4.
-
En /etc/default/nfs-common establecemos:
NEED_IDMAPD=yesNEED_GSSD=no # no is default
4.3. Desmontar los montajes estáticos y editar /etc/fstab
Si has configurado previamente los recursos compartidos NFS como montajes estáticos, ahora es el momento de desmontarlos.
-
$ sudo umount /server
Luego, elimine (o comente) sus respectivas entradas en /etc/fstab.
-
#server:/ /server/ nfs defaults 0 0
4.4. Recargue /etc/init.d/autofs
Después de introducir sus cambios, ejecute el siguiente comando para recargar autofs:
-
$ sudo service autofs reload
Si trabaja en una versión de ubuntu más antigua, y eso no funciona pruebe:
-
$ sudo /etc/init.d/autofs reload
Si trabaja en Natty, y eso no funciona pruebe:
-
$ sudo /etc/init.d/autofs restart
4.5. Asegúrese de que funciona
Para acceder al recurso compartido y verificar que funciona correctamente, introduzca lo siguiente en un shell:
-
$ ls /nfs/server
Si ve su recurso compartido NFS en la lista, ¡felicidades! ¡Tienes un montaje NFS que funciona a través de autofs! Si quieres aprender algo más de información avanzada, sigue leyendo.
Información avanzada
Siguiendo el ejemplo de la estructura de directorios anterior, si introdujera ls /nfs en un intérprete de comandos, podría sorprenderse de no ver nada en la lista. Pero recuerde que necesita acceder a un directorio antes de que se monte automáticamente. Para acceder al recurso compartido, introduzca ls /nfs/servidor. Una vez que se haya accedido a él, el recurso compartido aparecerá en la lista sólo hasta que se agote el tiempo de espera. Es bueno tener esto en cuenta, ya que podría ahorrarte tiempo diagnosticando un problema de autofs que no existe realmente.
5.1. Nota sobre /net y /smb
Estas dos configuraciones por defecto pueden ser útiles para su configuración. Si tiene muchos recursos compartidos NFS o Samba, es posible que desee descomentar estas líneas. /net permite el montaje automático de los sistemas de archivos en otros lugares de la red que son exportados por NFS. Por ejemplo, si tienes un servidor llamado fileserver con un directorio de exportación NFS llamado /export, puedes montarlo escribiendo en una línea de comando del shell cd /net/fileserver/export. En un entorno con servidores de archivos NFS, esta configuración puede ser útil. /smb funciona de la misma manera pero es para sistemas de archivos Samba. Sin embargo, si necesita autenticarse antes de acceder al recurso compartido Samba, el automontaje no funcionará.
5.2. Caracteres comodín
Digamos que tienes un directorio con varios subdirectorios que quieres que se automonten individualmente. Un ejemplo de esto es el directorio /home, en cuyo caso /etc/auto.master podría contener la siguiente línea:
-
/home /etc/auto.home
Si el usuario1 está conectado, querrá auto-montar su directorio home. Sin embargo, si creas un punto de montaje para todo el directorio /home, también montarás los directorios personales de todos los demás usuarios al mismo tiempo, desperdiciando así el ancho de banda. Una solución a esto sería crear entradas separadas para cada directorio, de la siguiente manera
-
# /etc/auto.homeuser1 server:/home/user1user2 server:/home/user2user3 server:/home/user3
Esto funciona, pero es engorroso. En su lugar, puede utilizar caracteres comodín, de la siguiente manera:
-
* server:/home/&
El asterisco (*) se utiliza en lugar del punto de montaje y el ampersand (&) en lugar del directorio a montar. Para más detalles sobre el uso de los comodines ver Uso de caracteres comodín como atajos en los mapas de AutoFS.
También se pueden utilizar variables (véase la página man de autofs(5)) para sustituir a los usuarios y otros parámetros para poder crear archivos genéricos para múltiples usuarios. El ejemplo de abajo es un mapa smb que mapea basado en el usuario que pide el recurso compartido usando la variable $USER.
* -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users,file_mode=0700,dir_mode=0700 ://server/$USERshare1 -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users ://server/share1share2 -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users ://server/share2
Montaje de otros tipos de sistemas de ficheros
6.1. CIFS
Cuando especifique un recurso compartido CIFS en un archivo de mapa, especifique -fstype=cifs y preceda la ubicación del recurso compartido con dos puntos (:).
Ejemplo:
mntpoint -fstype=cifs ://example.com/shrname
Ejemplo: Montar en lectura-escritura, especificando un usuario y un grupo como propietarios de los archivos:
mntpoint -fstype=cifs,rw,uid=myuserid,gid=mygrpid ://example.com/shrname
Ejemplo: Montar en lectura-escritura, especificando un nombre de usuario y una contraseña para conectarse al recurso compartido:
mntpoint -fstype=cifs,rw,username=myuser,password=mypass ://example.com/shrname
6.2. Sistemas de archivos basados en FUSE
Los sistemas de archivos basados en FUSE se montan especificando -fstype=fuse. La ubicación del sistema de archivos especifica el binario del espacio de usuario utilizado para montar el sistema de archivos, seguido de un hash (#), seguido de la ubicación.
Cuando se especifica la ubicación de un sistema de archivos FUSE en el archivo map, ciertos caracteres, especialmente el hash (#) y los dos puntos (:), deben ser escapados por una barra invertida (\). La ubicación completa debe ir precedida de dos puntos (:).
Dado que automount realiza el montaje como root, normalmente es necesario especificar allow_other en las opciones de montaje para permitir que su usuario no root acceda al recurso compartido.
6.2.1. Sistema de archivos SSHFS
SSHFS es un sistema de archivos basado en FUSE. En un montaje autofs, los dos puntos (:) que siguen al nombre del servidor deben ser escapados por una barra invertida (\).
Ya debería haber configurado la autenticación sin contraseña a través del cifrado de clave pública. Asegúrese de que entiende las implicaciones de seguridad de esto antes de proceder.
Recuerda que automount montará tu sistema de archivos SSHFS como root, así que necesitas:
-
Copiar su clave privada al directorio /root/.ssh. Asegúrese de que entiende las implicaciones de seguridad de esto antes de proceder.
-
Agrega las claves de host necesarias a /root/.ssh/known_hosts.
- Especificar el nombre de usuario utilizado para conectarse
Para probar el montaje de su sistema de archivos SSHFS como root emitió lo siguiente:
sudo sshfs [email protected]:/ mountpoint
Si el montaje tiene éxito sin pedirle una contraseña, usted está listo para montar el sistema de archivos a través de autofs
Ejemplo:
mntpoint -fstype=fuse,allow_other :sshfs\#[email protected]\:/path/to/mount
Ejemplo: Montar en lectura-escritura, especificando un usuario y un grupo como propietarios de los archivos:
mntpoint -fstype=fuse,rw,uid=1000,gid=1000,allow_other :sshfs\#[email protected]\:/path/to/mount
Nota que para los montajes FUSE, uid y gid deben ser ids numéricos.
Debiendo problemas de montaje automático
Si tiene problemas con el montaje automático de sus sistemas de archivos, puede ser útil ejecutar automount en primer plano.
-
Detenga el demonio autofs
sudo service autofs stop
-
Ejecute automount en primer plano con información verbosa
sudo automount -f -v
- Desde otra terminal, intente montar sus sistemas de archivos cambiando los directorios en el punto de montaje.
- Compruebe la salida de la primera terminal para obtener pistas sobre por qué el montaje falló o no se intentó.
Vea también
-
Mount – Información sobre el proceso de montaje y su configuración en Ubuntu.
-
La página man de mount – alojada en el sitio web oficial de Ubuntu.