Tutoriales

Montar automáticamente unidades externas en Linux

Imagínese esta situación. Ha conectado un USB o SSD externo a su sistema y lo ha utilizado como medio de almacenamiento adicional. Este es un caso de uso común, especialmente si ha configurado Servidor de medios en Raspberry Pi O cualquier sistema Linux.

En Linux, normalmente hay que hacer clic en la opción de montaje en el Explorador de archivos o usar el comando de montaje para comenzar a usar una unidad externa.

Esta es una forma de incontinencia y también puede causar problemas en situaciones en las que el disco debe montarse como un disco interno cuando se inicia el sistema. Imagine que el servidor de medios no muestra ningún medio porque el medio está almacenado en un disco externo y no está montado.

Lo bueno es que puedes solucionar este problema asegurándote de que el disco externo se monte automáticamente.

En esta guía, exploraremos dos métodos populares para montar automáticamente una unidad en Linux:

  • Configuración fstab Comenzar a montar el archivo
  • usar udev y autofs Configuraciones más dinámicas

Echemos un vistazo uno por uno.

Método 1: montar automáticamente fstab Al iniciar

Si desea que la unidad externa se monte automáticamente al iniciar el sistema, puede configurarla usando el siguiente comando fstab (Tabla del sistema de archivos).

Este método es confiable para unidades que permanecen conectadas durante el inicio del sistema y lo uso principalmente en el laboratorio de mi casa.

Tengo un disco duro de 1,5 TB conectado a mi servidor y necesito montar automáticamente la partición /sdb2
Tengo un disco duro de 1,5 TB conectado a mi servidor y necesito montar automáticamente /sdb2

Pasos para el montaje automático fstab:

  1. Primero, conecte la unidad flash USB y ejecute los siguientes comandos para identificar el nombre del dispositivo y el UUID:
sudo blkid

Busque la línea correspondiente a su disco externo. Por ejemplo:

/dev/sdb2: UUID="12ab345cd-1234-4166-8539-ff4ff3ff2ff1" TYPE="ntfs"
Encuentre el UUID del dispositivo de almacenamiento
  1. editar /etc/fstab Cree el documento usando su editor de texto favorito (necesitará derechos de superusuario):
sudo nano /etc/fstab

Agregue las siguientes líneas al final del archivo:

UUID=12ab345cd-1234-4166-8539-ff4ff3ff2ff1 /media/hdd auto defaults,nofail,x-systemd.automount 0 2

Reemplace el UUID con el UUID de la unidad y ajuste el punto de montaje (/media/hdd) según sus requisitos.

Edite fstab y agregue registros al volumen de almacenamiento
  1. Vuelva a cargar systemd para aplicar los cambios:
sudo systemctl daemon-reload

Luego reinicie el sistema y la unidad debería instalarse automáticamente en la ubicación especificada.

El disco duro se montará automáticamente en el directorio correcto

💡

El mismo método también se puede utilizar cuando utiliza un sistema de arranque dual y desea montar automáticamente la partición de Windows.

Método 2: utilizar reglas de Udev para montar y configurar automáticamente autofs

Si desea que la unidad externa solo se monte cuando esté enchufada, udev reglas y autofs Proporciona métodos dinámicos.

Este método es más adecuado si intercambia frecuentemente memorias USB o no desea instalarlas al inicio.

Pasos de montaje automáticos udev y autofs:

  1. Cree un nuevo archivo de reglas en /etc/udev/rules.d/ Tabla de contenido:
sudo nano /etc/udev/rules.d/usb_auto_mount.rules

Agregue lo siguiente:

ACTION=="add", KERNEL=="sd*", ENV{DEVTYPE}=="partition", ENV{ID_BUS}=="usb", \
    SYMLINK+="usbdisks/%k", MODE:="0660", \
    RUN+="/bin/ln -sf /media/hdd/%k /media/usb-sticks/%k"
ACTION=="remove", KERNEL=="sd*", ENV{DEVTYPE}=="partition", ENV{ID_BUS}=="usb", \
    RUN+="/bin/rm /media/usb-sticks/%k"

descomponer:

  • ACTION=="add": Esta regla se activará cuando se agregue un nuevo dispositivo (como un USB).
  • KERNEL=="sd*": coincide con dispositivos cuyos nombres principales comienzan con «sd» (normalmente unidades de disco).
  • ENV{DEVTYPE}=="partition": Asegúrese de apuntar únicamente a dispositivos particionados.
  • ENV{ID_BUS}=="usb": limite esta regla a dispositivos USB.
  • SYMLINK+="usbdisks/%k": Crear un enlace simbólico /dev/usbdisks/ para equipos. %k Es un marcador de posición para el nombre del dispositivo asignado por el núcleo.
  • MODE:="0660": establece permisos de lectura y escritura para usuarios y grupos (pero no para otros).
  • RUN+="/bin/ln -sf /media/hdd/%k /media/usb-sticks/%k": Crear un enlace simbólico /media/usb-sticks/ señalar a /media/hdd/%kdonde se instalará la unidad.
  • ACTION=="remove": Esta regla se activa cuando se desconecta la unidad USB.
  • RUN+="/bin/rm /media/usb-sticks/%k": Elimina enlaces simbólicos cuando la unidad está desconectada.
Editar archivo udev
  1. Después de guardar el archivo, vuelva a cargar las reglas de udev para aplicar los cambios:
sudo udevadm control --reload-rules
  1. editar auto.master archivo para indicar autofs Monte la unidad flash USB:
sudo nano /etc/auto.master

Agregue las siguientes líneas:

/media/hdd /etc/auto_mount.usb --timeout=60

Luego, cree el archivo de mapeo de montaje automático correspondiente:

sudo nano /etc/auto_mount.usb

Añade esto:

#!/bin/bash
fstype=$(/sbin/blkid -o value -s TYPE /dev/usbdisks/${1})
if [ "${fstype}" = "vfat" ] ; then
  echo "-fstype=ntfs,sync,uid=0,gid=plugdev,umask=007 :/dev/usbdisks/${key}"
  exit 0
fi
exit 1

descomponer:

  • fstype=$(/sbin/blkid -o value -s TYPE /dev/usbdisks/${1}): Este comando utiliza el siguiente comando para obtener el tipo de sistema de archivos de la unidad flash USB (como FAT32, NTFS) blkid Orden.
  • if [ "${fstype}" = "ntfs" ]: Compruebe si el sistema de archivos ntfs Tipos de sistemas de archivos comunes utilizados por Windows.
  • echo "-fstype=ntfs,sync,uid=0,gid=plugdev,umask=007 :/dev/usbdisks/${key}":Monte la unidad con opciones específicas:fstype=vfat: instalarlo como vfat Sistema de archivos.sync: Garantiza que los datos se escriban en el disco inmediatamente en lugar de almacenarse en caché.uid=0,gid=plugdev:Establecer el propietario a root (uid 0) y grupo plugdev (Grupo universal para dispositivos USB).umask=007: establezca los permisos de archivos y directorios para que solo los propietarios y grupos puedan acceder a ellos.
Crear script auto_mount.usb

Guarde y salga del archivo.

La unidad ahora se montará automáticamente en /media/hdd/ Mientras está conectado y desinstalado después de 60 segundos de inactividad.

Consejos para montar automáticamente unidades externas

  • Usando UUID: Al usar fstabsiempre prefiero UUID /dev/sdX identificadores porque permanecen consistentes entre reinicios.
  • Verifique el soporte del sistema de archivos: Asegúrese de que su sistema admita el sistema de archivos de la unidad flash USB (por ejemplo, instale ntfs-3g para unidades NTFS).
  • Cambios de prueba: Asegúrese de probar los cambios de configuración después de la instalación para garantizar que la unidad se instale correctamente. usar journalctl Puede ayudar a diagnosticar cualquier problema.

en conclusión

La instalación automática de controladores puede simplificar significativamente su flujo de trabajo. Esto es algo que sé por experiencia personal.

Hace unos días, cuando estaba configurando un disco duro externo en mi Raspberry Pi como parte de mi NAS (almacenamiento conectado a la red) de bricolaje, me encontré con un problema frustrante.

Estoy haciendo una copia de seguridad de archivos importantes y usando la unidad para acceso remoto. Todo iba bien hasta el reinicio.

Para mi consternación, el sistema se reinició pero el disco duro externo no se montó automáticamente. El proceso de copia de seguridad se interrumpió y tuve que intervenir manualmente cada vez que se reiniciaba el sistema.

Esto es frustrante porque la atención se centra en hacer que el sistema funcione sin problemas y sin una supervisión constante. Intenté montar automáticamente la unidad y decidí compartir mi experiencia con ustedes.

El método que elija entre fstab y udev depende de sus necesidades específicas, ya sea que desee que la unidad esté lista al arrancar o solo cuando esté conectada.

Con estos pasos, puede asegurarse de que su almacenamiento externo esté siempre accesible sin intervención manual.

💬 Si tiene preguntas o encuentra problemas con el montaje automático de discos externos en Linux, hágamelo saber.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba