SDB:CÓMO Añadir un disco externo con autofs

Saltar a: navegación, buscar
Artículos recomendados Artículos relacionados
Icon-manual.png Icon-ayuda.png

Sobre la configuración de autofs

Autofs utiliza varios archivos localizados en /etc para manejar el automontaje de dispositivos.

  • /etc/auto.master permite definir un punto de montaje y qué archivo de configuración contendrá las reglas para montar dispositivos en él.
  • El archivo indicado en /etc/auto.master, que puede ser visto como una suerte de fstab. En él se indica qué dispositivo se montará en cada carpeta, el sistema de ficheros y las opciones de montaje que se precisen.

Básicamente, autofs monta el dispositivo cuando se accede a su correspondiente carpeta, y lo desmonta cuando deja de utilizarse.

Identificar el dispositivo a montar

Como es normal, para utilizar un disco externo dicho disco debe de tener al menos una partición, y por supuesto podría tener varias. Es buena idea montar manualmente -o con la herramienta del escritorio a tal efecto- cada partición disponible para asegurarse de que es la que se quiere montar.

Si por ejemplo, tenemos un disco duro interno y otro externo, con seguridad el dispositivo asociado al externo será /dev/sdb; si tuviésemos dos discos duros internos, normalmente sería /dev/sdc.

El ejemplo que sigue supone un disco interno y otro externo con una única partición: /dev/sdb1.

Una vez que hemos identificado nuestro disco y partición es buena idea obtener el identificador UUID con el comando blkid:

usuario@sistema:~> sudo /sbin/blkid /dev/sdb1
/dev/sdb1: UUID="52a87-e4a4-34a5-ba22-a654445ag465" TYPE="ext4"

Ésa es la información precisa para el automontaje, aunque la forma de disponer la información en el archivo de configuración es distinta.

Configurar auto.master

El contenido de auto.master por defecto es:

#
# Sample auto.master file
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# For details of the format look at autofs(5).
#
#/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
#
# Include /etc/auto.master.d/*.autofs
#
#+dir:/etc/auto.master.d
#
# 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

Puedes descomentar la línea 7 o bien añadir una propia en el mismo lugar. Si deseas utilizar /DiscoExterno como punto de montaje, deberías tener una línea de la siguiente forma:

/DiscoExterno /etc/auto.misc

Modificar auto.misc

El nombre de este archivo puede variar según hayas modificado auto.master. En este ejemplo se utiliza este archivo que provee la instalación de autofs a modo de ejemplo. El contenido del fichero es:

#
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# Details may be found in the autofs(5) manpage

cd              -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

# the following entries are samples to pique your imagination
#linux          -ro,soft,intr           ftp.example.org:/pub/linux
#boot           -fstype=ext2            :/dev/hda1
#floppy         -fstype=auto            :/dev/fd0
#floppy         -fstype=ext2            :/dev/fd0
#e2floppy       -fstype=ext2            :/dev/fd0
#jaz            -fstype=ext2            :/dev/sdc1
#removable      -fstype=ext2            :/dev/hdd

Añade una nueva línea al final del archivo con los datos obtenidos con el comando blkid y el nombre de la carpeta que deseas. Por ejemplo, lo siguiente monta una partición para descargas en /DiscoExterno/Descargas:

Descargas       -fstype=ext4      UUID="52a87-e4a4-34a5-ba22-a654445ag465"

Arrancar autofs

systemd

usuario@sistema:~> sudo systemctl start autofs.service
usuario@sistema:~> sudo systemctl enable autofs.service

system V

usuario@sistema:~> sudo rcautofs start
usuario@sistema:~> sudo chkconfig autofs on

YaST

En Sistema->Servicios del sistema (Niveles de ejecución), buscamos autofs y lo activamos.

Comprobar permisos

Asegúrate de tener conectado cada dispositivo al que quieras tener acceso; autofs creará las carpetas correspondientes que hayas indicado. Si en el ejemplo anterior era /DiscoExterno/Descargas:

usuario@sistema:~> sudo chown usuario:users /DiscoExterno/Descargas/ -Rf

Comprueba el resultado con

usuario@sistema:~> ls -ld /DiscoExterno/Descargas/
drwxr-xr-x 2 usuario users 4096 Feb 28 15:42 /DiscoExterno/Descargas/

En general, la única complicación al montar otros dispositivos en nuestro sistema estriba en comprobar que los permisos de la carpeta a través de la cual accedemos al dispositivo de turno son los que esperamos. Tanto si se trata de un disco duro externo o un pendrive con un sistema de ficheros tal como ext4 en lugar de FAT, el sistema no permitirá guardar nada en dicho dispositivo si el usuario no tiene permiso de escritura en tal carpeta.

Es preciso aclarar aquí que el acceso a dispositivos lo controla udev. Así que, en realidad, lo que se dice en esta guía podría hacerse creando una regla udev (que es como se le dice al sistema udev cómo reaccionar cuando se detecta un dispositivo dado). La propuesta de utilizar autofs simplemente puede ser más sencilla en la mayoría de situaciones.

Por otra parte, la forma obvia de que cualquier carpeta tenga los permisos adecuados para un usuario es que tal carpeta se cree dentro de la carpeta del usuario en lugar de en la raíz (por ejemplo, /home/usuario/externos en auto.master en lugar de /externos). Y también es cierto que esto no evita el problema de compartir ese dispositivo con otros usuarios.