Montar un disco secundario al arranque de forma automática y fiable es una de esas tareas que parece sencilla, pero que esconde varios detalles que pueden hacerte perder horas si no se conocen. En esta guía veremos cómo montar un disco o partición al inicio en Debian (y sistemas derivados como Raspberry Pi OS, Ubuntu, Linux Mint…), explicando no solo los pasos, sino también el porqué de cada opción, los errores más comunes y cómo resolverlos.
Al terminar, tendrás un montaje:
- Robusto: usa
UUIDen lugar de nombres de dispositivo volátiles (/dev/sda1). - Seguro para el arranque: si el disco no está conectado, el sistema arranca igualmente.
- Bajo demanda: el disco se monta solo cuando se accede a él, ahorrando recursos.
Índice
- Conceptos previos
- Requisitos
- Paso 1: Comprobar que el disco está conectado y detectado
- Paso 2: Obtener el UUID del disco
- Paso 3: Crear el punto de montaje
- Paso 4: Editar
/etc/fstab - Paso 5: Recargar systemd
- Paso 6: Activar la unidad de automontaje
- Paso 7: Verificar el montaje
- Paso 8: Permisos de usuario.
- Opciones de
fstabexplicadas - Solución de problemas
- Resumen del flujo completo
Conceptos previos.
Antes de tocar nada, conviene tener claros cuatro conceptos que aparecerán una y otra vez:
/mediavs/mnt: por convención,/mediase usa para medios extraíbles (USB, discos externos) y/mntpara montajes temporales o manuales. Usaremos/media.UUIDvs/dev/sdX: el nombre/dev/sda,/dev/sdb… puede cambiar entre arranques (sobre todo con discos USB). ElUUIDes un identificador único y estable del sistema de archivos. Usa siempreUUID.systemdyfstab: en sistemas modernos,systemdes quien gestiona los montajes definidos en/etc/fstabmediante unidades (.mounty.automount). Por eso, tras editarfstab, hay que decirle a systemd que recargue (daemon-reload).x-systemd.automount: opción que le dice a systemd que no monte el disco inmediatamente, sino que cree una unidad de automontaje que lo montará la primera vez que se acceda al directorio. Esto es ideal para discos USB que queremos que se monten solo cuando se usen.
Requisitos.
- Un sistema Debian, Ubuntu, Raspberry Pi OS o similar con
systemd. - Un disco o partición ya formateada (ext4, exFAT, NTFS…). Si está «en bruto», deberás formatearla primero.
- Acceso
sudo.
Paso 1: Comprobar que el disco está conectado y detectado.
Este paso es ineludible. Si el disco no está siendo detectado por el sistema, ningún ajuste en fstab funcionará. Y es un fallo muy común con discos USB que no reciben suficiente energía o con cables defectuosos.
Conecta el disco y ejecuta:
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT
Deberías ver un disco nuevo con el tamaño esperado, por ejemplo:
NAME SIZE TYPE FSTYPE MOUNTPOINT
sda 931,5G disk
└─sda1 931,5G part ext4
sdb 111,8G disk
└─sdb1 111,8G part ext4
nvme0n1 238,5G disk
├─nvme0n1p1 256M part vfat /boot/firmware
└─nvme0n1p2 237,7G part ext4 /
En este ejemplo voy a montar un disco SSD de 120GB, conectado al puerto USB 3.0, mediante un adaptador SATA-USB, el cual aparece en el sistema como sdb1.
⚠️ Si tu disco no aparece, el problema es físico o de alimentación. Antes de seguir:
Conecta el disco y revisa los últimos mensajes del kernelsudo dmesg | tail -n 30Busca errores como
device descriptor read/64, error -110oreset full-speed USB device. Si los ves, prueba con otro puerto USB, otro cable o asegúrate de que la alimentación externa (si la tiene) está conectada. Desconecta y vuelve a conectar el disco, y repitelsblk.Truco: en Raspberry Pi y otros SBC, un disco de 2.5″ puede consumir más de lo que un solo puerto USB puede entregar de forma estable. Un hub USB con alimentación suele resolver el problema.
Paso 2: Obtener el UUID del disco.
Una vez que el disco aparece en lsblk, obtén su UUID real:
sudo blkid /dev/sdb1
Salida de ejemplo:
/dev/sdb1: LABEL="SD_120Gb" UUID="f6b565ed-cee0-4508-b94d-464c422fd9f1" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="c7a2c28e-01"
Copia el UUID exacto. Compruébalo carácter por carácter: un 0 por O, un 1 por l… y el montaje fallará silenciosamente.
Consejo: Si tienes varios discos, puedes ver todos los UUID a la vez con
sudo blkid(sin argumentos).
Paso 3: Crear el punto de montaje.
Crea un directorio vacío donde se montará el disco:
sudo mkdir -p /media/Disco_120GB
Comprueba que esté vacío:
ls -la /media/Disco_120GB
Si tiene archivos dentro (residuos de un montaje anterior), límpialos con cuidado. Un punto de montaje «sucio» puede impedir que systemd active la unidad.
Paso 4: Editar /etc/fstab.
Abre el archivo con tu editor preferido:
sudo nano /etc/fstab
Añade una línea al final con este formato:
UUID=f6b565ed-cee0-4508-b94d-464c422fd9f1 /media/Disco_120GB ext4 defaults,nofail,x-systemd.automount,x-systemd.device-timeout=10s 0 2
Desglose de los campos:
| Campo | Valor | Significado |
|---|---|---|
| 1 | UUID=... | Identificador único del sistema de archivos |
| 2 | /media/Disco_120GB | Punto de montaje (debe existir) |
| 3 | ext4 | Tipo de sistema de archivos (usa el que devuelva blkid) |
| 4 | defaults,nofail,x-systemd.automount,x-systemd.device-timeout=10s | Opciones de montaje (ver abajo) |
| 5 | 0 | dump: normalmente 0 (no se usa) |
| 6 | 2 | fsck: 1 para raíz, 2 para el resto, 0 para deshabilitar |
¿Qué hace cada opción?
defaults: opciones por defecto (rw,suid,dev,exec,auto,nouser,async).nofail: si el disco no está presente al arrancar, el sistema arranca igualmente sin bloquearse. Imprescindible para discos secundarios y USB.x-systemd.automount: crea una unidad.automount. El disco no se monta hasta que se accede a él por primera vez. Perfecto para discos que no se usan constantemente.x-systemd.device-timeout=10s: le dice a systemd que no espere más de 10 segundos al dispositivo. Sin esto, el valor por defecto es 90 segundos, lo que puede alargar el arranque si el disco no está conectado.
Valores recomendados para
x-systemd.device-timeout:
- SSD (detección casi instantánea):
5s.- HDD por USB (el motor tarda en arrancar):
10so15s.- Nunca
0: eso haría que el sistema espere indefinidamente.
Extra opcional: si quieres que el disco se desmonte solo tras un tiempo sin uso (ahorro de energía), añade
x-systemd.idle-timeout=10min.
Guarda el archivo (Ctrl+O, Enter, Ctrl+X en nano).
Paso 5: Recargar systemd
Cada vez que edites /etc/fstab, systemd debe releer la configuración:
sudo systemctl daemon-reload
Si no haces esto, systemd seguirá usando la versión antigua en memoria y verás el aviso:
mount: (consejo) fstab ha sido modificado, pero systemd sigue utilizando
la versión antigua; utilice 'systemctl daemon-reload' para recargar.
daemon-reload no monta nada: solo recarga definiciones. El montaje viene en los pasos siguientes.
Paso 6: Activar la unidad de automontaje.
Este es el paso que más gente olvida y la causa principal de que «no se monte nada». Tras crear una entrada nueva en fstab con x-systemd.automount, systemd crea la unidad pero la deja inactiva (inactive (dead)). No se activará sola hasta el próximo arranque.
Comprueba el estado:
systemctl list-units --type=automount --all
Verás algo así:
UNIT LOAD ACTIVE SUB DESCRIPTION
media-Disco_120GB.automount loaded inactive dead media-Disco_120GB.automount
media-Disco_1TB.automount loaded active running media-Disco_1TB.automount
Actívala manualmente:
sudo systemctl start media-Disco_120GB.automount
Nota sobre el nombre de la unidad: systemd nombra las unidades a partir del punto de montaje, sustituyendo
/por-. Para/media/Disco_120GB→media-Disco_120GB.automount. Si el nombre tiene espacios o caracteres especiales, systemd los escapa (por ejemplo, espacios →\x20). Puedes listar todas las unidades disponibles consystemctl list-unit-files | grep automount.
Verifica que ahora aparece como active (running):
systemctl list-units --type=automount --all | grep 120GB
Paso 7: Verificar el montaje.
Con la unidad activa, dispara el montaje accediendo al directorio:
ls /media/Disco_120GB
Esto «despierta» la unidad de automontaje y monta la partición en ese instante. Ahora comprueba con:
mount | grep /media
df -h | grep Disco
Deberías ver algo así:
/dev/sdb1 on /media/Disco_120GB type ext4 (rw,relatime,...,x-systemd.automount)
¡Listo! El disco está montado y se montará automáticamente cada vez que accedas a él o al arrancar el sistema.
Paso 8: Permisos de usuario:
Cuando montas un sistema de archivos nativo de Linux como ext4 mediante fstab, el directorio recién montado en /media/... pertenecerá por defecto al usuario root (root:root).
Aunque lo menciones de pasada en la tabla de opciones para exFAT/NTFS (uid=1000,gid=1000), a muchos usuarios les pasa que montan su partición ext4, van a guardar un archivo desde su usuario normal sin privilegios y obtienen un error de «Permiso denegado».
Sugerencia: Añadir una pequeña nota o un comando rápido al final del proceso para ajustar los permisos si es necesario:
sudo chown -R $USER:$USER /media/Disco_120GB
Nota: Esto debe hacerse con el disco ya montado, de lo contrario cambiarías los permisos del punto de montaje vacío y al montarse el disco se sobrescribirían con los permisos raíz del sistema de ficheros).
Opciones de fstab explicadas {#opciones-fstab}
Resumen rápido de las opciones más útiles para discos secundarios:
| Opción | Para qué sirve | ¿Cuándo usarla? |
|---|---|---|
defaults | Opciones estándar (rw, exec, auto…) | Siempre |
nofail | El arranque no se bloquea si el disco no está | Discos secundarios, USB |
x-systemd.automount | Montaje bajo demanda al acceder | Discos que no se usan siempre |
x-systemd.device-timeout=10s | Tiempo máximo de espera al dispositivo | Siempre con nofail |
x-systemd.idle-timeout=10min | Desmontaje automático tras inactividad | Ahorro energético |
ro | Solo lectura | Discos que no deben modificarse |
uid=1000,gid=1000 | Asignar propietario (para exFAT/NTFS) | Discos formateados en exFAT/NTFS |
Solución de problemas.
🔴 El disco no aparece en lsblk / blkid
- Revisa cable, puerto USB y alimentación.
- Ejecuta
sudo dmesg | tail -n 30justo después de conectar el disco. - Prueba otro puerto (mejor USB 3.0) u otro cable.
- Desconecta y vuelve a conectar el disco.
🟡 systemctl start ...automount da Job failed
Obtén el error exacto:
sudo journalctl -u media-Disco_120GB.automount -xe --no-pager
Causas más frecuentes:
- UUID incorrecto en
fstab. Compara carácter por carácter consudo blkid. - Conflicto con una unidad
.mounten estadofailed. Resetea:sudo systemctl reset-failed media-Disco_120GB.mount sudo systemctl start media-Disco_120GB.automount - Punto de montaje con residuos. Comprueba
ls -la /media/Disco_120GB. Si hay archivos, limpia el directorio. - El disco no está listo en el momento del arranque. Añade o aumenta
x-systemd.device-timeout(por ejemplo,30s).
🟡 La unidad aparece como inactive (dead)
Es el estado normal tras daemon-reload si no se ha hecho start. Solución:
sudo systemctl start media-Disco_120GB.automount
🟡 mount -a no muestra nada y el disco «no se monta»
Con x-systemd.automount, mount -a no monta el disco de inmediato, solo valida la configuración. El montaje real ocurre al acceder al directorio:
ls /media/Disco_120GB
🟡 El arranque tarda mucho (más de un minuto)
Falta x-systemd.device-timeout. Sin él, systemd espera 90 segundos por defecto al dispositivo. Añade x-systemd.device-timeout=10s (o 5s para SSD, 15s para HDD USB).
🟡 «No tengo permisos para escribir en el disco» (exFAT/NTFS)
Añade a las opciones: uid=1000,gid=1000 (sustituye por tu id -u e id -g).
Resumen del flujo completo.
Para que no se te olvide nada, este es el flujo completo que debes seguir cada vez que añadas un disco nuevo:
# 1. Comprobar que el disco está detectado
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT
# 2. Obtener el UUID
sudo blkid /dev/sdX1
# 3. Crear el punto de montaje
sudo mkdir -p /media/Disco_XXX
# 4. Editar /etc/fstab con el UUID y las opciones
sudo nano /etc/fstab
# → UUID=... /media/Disco_XXX ext4 defaults,nofail,x-systemd.automount,x-systemd.device-timeout=10s 0 2
# 5. Recargar systemd
sudo systemctl daemon-reload
# 6. Activar la unidad de automontaje
sudo systemctl start media-Disco_XXX.automount
# 7. Verificar que está activa
systemctl list-units --type=automount --all | grep XXX
# 8. Disparar el montaje accediendo al directorio
ls /media/Disco_XXX
# 9. Verificar montaje final
mount | grep /media
df -h | grep Disco
Conclusión
Montar discos al inicio en Debian es una tarea que, bien hecha, no da problemas nunca más. La clave está en:
- Verificar siempre que el disco está detectado antes de tocar
fstab. - Usar
UUIDy nunca/dev/sdX. - Combinar
nofailconx-systemd.device-timeoutpara no bloquear el arranque. - Activar la unidad de automontaje manualmente la primera vez.
- Tener a mano
journalctlyreset-failedcuando algo falle.
Con estos pasos, tus discos se montarán solos, de forma fiable, y sin sorpresas. Si te has encontrado con algún caso raro que no aparezca aquí, déjalo en los comentarios y lo añadiremos a la guía.
¡Feliz montaje! 🚀