Si usted es un administrador de sistemas experimentado o simplemente un usuario habitual, probablemente ya haya montado unidades en Linux.
Las unidades pueden ser locales en su máquina o se puede acceder a ellas a través de la red mediante el protocolo NFS, por ejemplo.
Si eligió montar unidades de forma permanente, probablemente las haya agregado a su archivo fstab.
Afortunadamente para usted, hay una forma mejor y más rentable de montar accionamientos: mediante el uso de la utilidad AutoFS.
AutoFS es una utilidad que monta unidades locales o remotas solo cuando se accede a ellas : si no las utiliza, se desmontarán automáticamente.
En este tutorial, aprenderá cómo instalar y configurar AutoFS en sistemas Linux.
Tabla de Contenidos
Requisitos
Antes de comenzar, es importante para que usted tenga privilegios sudo en su host.
Para verificarlo, simplemente ejecute el comando » sudo «con la opción»- v»: si no ve ninguna opción, está listo.
$ sudo -v
Si no tiene privilegios sudo, puede seguir este tutorial para hosts basados en Debian o este tutorial para sistemas basados en CentOS.
Instalación de AutoFS en Linux
Antes de instalar la utilidad AutoFS, debe asegurarse de que sus paquetes estén actualizados con los repositorios.
$ sudo apt-get update
Ahora que su sistema está actualizado, puede instalar AutoFS ejecutando el comando» apt-get install «con el argumento «autofs».
$ sudo apt-get install autofs
Al instalar el paquete AutoFS, el proceso de instalación :
- Cree varios archivos de configuración en el directorio /etc, como: auto.maestro, auto.net, auto.misc y así sucesivamente;
- Creará el servicio AutoFS en systemd;
- Añadirá la entrada «automount» a su «nsswitch».después de la instalación, asegúrese de que el servicio AutoFS se está ejecutando con el comando» systemctl status »
$ sudo systemctl status autofs
También puede habilitar el servicio AutoFS para que se ejecute al inicio
$ sudo systemctl enable autofs
Ahora que AutoFS está instalado correctamente en su sistema, veamos cómo puede comenzar a crear su primer mapa.
Cómo funciona AutoFS en Linux
Los»mapas» son un concepto clave cuando se trata de AutoFS.
En AutoFS, está mapeando puntos de montaje con archivos (lo que se denomina mapa indirecto) o un punto de montaje con una ubicación o un dispositivo.
En su configuración predeterminada, las AutoFS comenzarán leyendo los mapas definidos en las autofs.archivo maestro en el directorio / etc.
A partir de ahí, iniciará un subproceso para todos los puntos de montaje definidos en los archivos de mapa definidos en el archivo maestro.
a Partir de un hilo no significa que el punto de montaje se monta cuando empiece a AutoFS : sólo podrán ser montados cuando se acceda.
De forma predeterminada, después de cinco minutos de inactividad, los AutoFS desmontarán (o desmontarán) los puntos de montaje que ya no se utilicen.
Nota: los parámetros de configuración para AutoFS están disponibles en /etc / autofs.conf
Crear su primer archivo de mapa automático
Ahora que tiene una idea de cómo funciona AutoFS, es hora de que comience a crear su primer mapa automático.
En el directorio /etc, cree un nuevo archivo de mapa llamado » auto.ejemplo».
$ sudo touch /etc/auto.example
El objetivo de este archivo de mapa será montar un recurso compartido NFS ubicado en un equipo de la red.
El recurso compartido NFS se encuentra en la IP 192.168.178.29 / 24 de la red local y exporta una unidad ubicada en /var/share.
Antes de intentar montar automáticamente el recurso compartido NFS, es una buena práctica intentar montarlo manualmente, así como verificar que puede ponerse en contacto con el servidor remoto.
$ ping 192.168.178.29
Crear un mapa directo
La asignación más fácil que puede crear con AutoFS se denomina mapa directo o asignación directa.
Un mapa directo asocia directamente un punto de montaje con una ubicación (por ejemplo, una ubicación NFS)
A modo de ejemplo, supongamos que desea montar un recurso compartido NFS en el momento del arranque en el directorio / tmp.
Para crear un mapa directo, edite su » auto.ejemplo de archivo» y añada el siguiente contenido :
# Creating a direct map with AutoFS# <mountpoint> <options> <remote_ip>:<location> /tmp -fstype=nfs 192.168.178.29:/var/share
Ahora, tendrá que agregar el mapeo directo a su auto.archivo maestro».
Para especificar que está haciendo referencia a un mapa directo, debe usar la notación » – »
# Content of the auto.master file/- auto.example
Ahora que se ha modificado el archivo maestro, puede reiniciar el servicio AutoFS para que los cambios sean efectivos.
$ sudo systemctl restart autofs$ cd /tmp
Felicitaciones, ahora debería poder acceder a sus archivos a través de NFS a través de asignación directa.
Creación de una asignación indirecta
Ahora que ha descubierto asignaciones directas, veamos cómo puede usar asignaciones indirectas para montar ubicaciones remotas en su sistema de archivos.
Las asignaciones indirectas utilizan la misma sintaxis que las asignaciones directas con una pequeña diferencia: en lugar de montar ubicaciones directamente en el punto de montaje, las está montando en una ubicación en este punto de montaje.
Para entender, crear un archivo con el nombre «auto.nfs»y pegue el siguiente contenido
nfs -fstype=nfs 192.168.178.29:/var/share
Como puede ver, la primera columna cambió : en un mapa directo, está utilizando la ruta al punto de montaje (por ejemplo /tmp), pero con un mapa indirecto está especificando la clave.
La clave representará el nombre del directorio ubicado en el directorio del punto de montaje.
Edita tu «auto».master» archivo y agregue el siguiente contenido
/tmp /etc/auto.nfs
Reinicie el servicio AutoFS y la cabeza para el directorio «tmp»
$ sudo systemctl restart autofs$ cd /tmp
Por defecto, no habrá nada aparece si se lista el contenido de este directorio : recuerde, AutoFS sólo montar los directorios cuando se accede a ellos.
Para que AutoFS monte el directorio, vaya al directorio que lleva el nombre de la clave que especificó en » auto.nfs» archivo (llamado «nfs» en este caso)
$ cd nfs
¡Impresionante!
Su punto de montaje ahora está activo y puede comenzar a navegar por su directorio.
Mapeo de directorios personales distantes
Ahora que entiende un poco más sobre las asignaciones directas e indirectas, puede hacerse una pregunta: ¿de qué sirve tener asignaciones indirectas cuando simplemente puede mapear ubicaciones directamente?
Para ser útiles, los mapas indirectos están diseñados para ser utilizados con caracteres comodín.
Un caso de uso importante de la utilidad AutoFS es poder montar directorios personales de forma remota.
Sin embargo, como los nombres de usuario cambian de un usuario a otro, no podrá tener un archivo de mapa limpio y atractivo, tendría que mapear a todos los usuarios de una manera muy redundante.
# Without wildcards, you have very redundant map files/home/antoine <ip>:/home/antoine/home/schkn <ip>:/home/schkn/home/devconnected <ip>:/home/devconnected
Afortunadamente para usted, hay una sintaxis que le permite crear directorios dinámicamente dependiendo de lo que esté disponible en el servidor.
Para ilustrar esto, cree un nuevo archivo llamado » auto.inicio » en su directorio / etc y comience a editarlo.
# Content of auto.home* <ip>:/home/&
En este caso, hay dos wilcards y simplemente significa que todos los directorios que se encuentran en el directorio / home en el servidor se asignarán a un directorio del mismo nombre en el cliente.
Para ilustrar esto, imaginemos que tenemos un servidor NFS que se ejecuta en la dirección IP 192.168.178.29 y que contiene todos los directorios de inicio para nuestros usuarios.
# Content of auto.home* 192.168.178.29:/home/&
Guarde su archivo y comience a editar su auto.archivo maestro para crear su asignación indirecta
$ sudo nano /etc/auto.master# Content of auto.master/home /etc/auto.home
Guarde el archivo maestro y reinicie el servicio AutoFS para que se apliquen los cambios.
$ sudo systemctl restart autofs
Ahora, puede dirigirse al directorio / home y debería poder ver los directorios montados correctamente para los usuarios.
Nota : si no ve nada en el directorio, recuerde que puede necesitar acceder al directorio una vez para que sea montado por AutoFS
Mapear y descubrir hosts en su red
Si prestó atención al auto.archivo maestro, probablemente haya notado que hay una entrada para el directorio / net con un valor «-hosts».
El parámetro «- hosts » está destinado a representar todas las entradas definidas en el archivo /etc/hosts.
Como recordatorio, el archivo «hosts» puede verse como un solucionador de DNS simple y local que asocia un conjunto de direcciones IP con nombres de host.
Como ejemplo, definamos una entrada para el servidor NFS en el archivo/etc / hosts rellenando la IP y el nombre de host de la máquina.
lo Primero de todo, asegúrate de que algunos directorios exportados en el servidor ejecutando el «showmount» de comandos en el cliente.
$ sudo showmount -e <server>
Ahora que seguro que algunos directorios exportados, diríjase a su «auto.archivo maestro » en /etc y agregue la siguiente línea.
# Content of auto.master/net -hosts
Guarde el archivo y reinicie el servicio AutoFS para que se apliquen los cambios.
$ sudo systemctl restart autofs
Eso es todo!
Ahora su recurso compartido NFS debe ser accesible en el directorio / net bajo un directorio con el nombre del nombre de host de su servidor.
$ cd /net/<server_name>$ cd /net/<server_ip>
Nota : recuerde que usted tendrá que navegar directamente en el directorio para ser montado. No lo verá simplemente listando el directorio / net en el primer montaje.
Solución de problemas
En algunos casos, puede tener algunos problemas al configurar AutoFS: cuando un dispositivo está ocupado o cuando no puede ponerse en contacto con un host remoto, por ejemplo.
- mount/umount : el objetivo está ocupado
Como Linux es un sistema multiusuario, es posible que algunos usuarios naveguen por algunas ubicaciones que está intentando montar o desmontar (usando AutoFS o no)
Si desea saber quién está navegando por la carpeta o quién está usando un archivo, debe usar el comando «lsof».
$ lsof +D <directory>$ lsof <file>
Nota : la opción «+D» se usa para enumerar quién está utilizando el recurso recursivamente.
- showmount está suspendido al configurar detección de host
Si ha intentado configurar detección de host mediante el parámetro «-hosts», es posible que haya verificado que sus hosts remotos son accesibles mediante el comando «showmount».
Sin embargo, en algunos casos, el comando «showmount» simplemente se cuelga porque no puede contactar con el servidor remoto.
La mayoría de las veces, el firewall del servidor bloquea las solicitudes realizadas por el cliente.
Si tiene acceso al servidor, intente inspeccionar los registros para ver si el firewall (UFW, por ejemplo) está bloqueando las solicitudes o no.
- Depuración con el automount utilidad
En las distribuciones más recientes, la autofs utilidad se instala como un servicio de systemd.
Como consecuencia, puede inspeccionar los registros de autofs utilizando el comando «journalctl».
$ sudo journalctl -u autofs.service
También puede utilizar la utilidad «automount» para depurar los montajes automáticos realizados por el servicio.
$ sudo systemctl stop autofs$ sudo automount -f -v
Conclusión
En este tutorial, aprendiste sobre la utilidad AutoFS : cómo funciona y las diferencias entre mapas directos e indirectos.
También aprendió que se puede configurar para configurar la detección de host: de inmediato, puede conectarse a todos los recursos compartidos NFS de su red local, lo que es una herramienta muy poderosa.
Finalmente, ha visto cómo puede crear mapas indirectos para crear automáticamente directorios personales sobre la marcha.
Si está interesado en la administración de sistemas Linux, tenemos una sección completa dedicada a ella, ¡así que asegúrese de echar un vistazo!