El montaje es el mecanismo por el cual Linux integra un dispositivo de almacenamiento en el árbol de directorios. A diferencia de Windows, donde cada disco aparece como una letra (C:, D:), en Linux cualquier dispositivo —un disco NVMe, una memoria USB, una partición cifrada— se ancla en un directorio existente llamado punto de montaje. Ese directorio no desaparece; simplemente queda “tapado” por el contenido del dispositivo mientras está montado.
Internamente, mount le pide al kernel que asocie un dispositivo de bloque con un directorio del VFS (Virtual Filesystem Switch). A partir de ese momento, todas las operaciones sobre ese directorio pasan por el driver del filesystem correspondiente (ext4, xfs, vfat, lo que sea). umount deshace esa asociación, pero solo si el kernel puede hacerlo de forma limpia: si algún proceso tiene un descriptor de archivo abierto dentro de ese filesystem, o simplemente tiene su directorio de trabajo (cwd) ahí, el kernel rechaza el desmontaje. No es un capricho —forzar el desmontaje con procesos activos corrompería operaciones en vuelo.
Usas mount manualmente cuando estás explorando, recuperando datos, o probando opciones antes de escribirlas en configuración permanente. /etc/fstab es esa configuración permanente: le dice al sistema qué montar automáticamente al arrancar. Equivocarse en fstab tiene consecuencias reales: una entrada mal escrita puede impedir que el sistema arranque, o puede dejar un disco externo sin montar sin que nadie se entere hasta que hace falta.
El error más común con fstab es identificar dispositivos por nombre de dispositivo (/dev/sdb1) en lugar de por UUID. Los nombres /dev/sdX los asigna el kernel en el orden en que detecta los dispositivos, y ese orden puede cambiar entre reboots —especialmente en sistemas con muchos discos o tras cambios de hardware. El UUID, en cambio, está grabado en los metadatos del filesystem y no cambia nunca a menos que formatees la partición.
Escenario completo: disco de datos adicional
Supón que has añadido un disco formateado como ext4 en /dev/sdb1. Vamos a montarlo manualmente, identificar por qué falla el desmontaje, y finalmente dejarlo configurado en fstab correctamente.
# Montar temporalmente para verificar que el disco funciona mount /dev/sdb1 /mnt/datos # Comprobar que está montado y ver el espacio disponible df -h /mnt/datos # Intentar desmontar (puede fallar si algo lo está usando) umount /mnt/datos # Si falla con "target is busy", identificar qué proceso lo bloquea # +D busca recursivamente en todo el árbol bajo ese directorio lsof +D /mnt/datos # Resultado típico: # COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME # bash 4821 ana cwd DIR 8,17 4096 2 /mnt/datos # Matar o reubicar ese proceso y reintentar; ahora sí funciona umount /mnt/datos # Obtener el UUID del dispositivo para usarlo en fstab blkid /dev/sdb1 # /dev/sdb1: UUID="a3f2e1b0-7c4d-4e8a-9b5f-2d1c3e4f0a6b" TYPE="ext4" ... # Crear el punto de montaje si no existe mkdir -p /mnt/datos # Añadir la entrada en /etc/fstab # El orden de las columnas es: # dispositivo punto_de_montaje tipo opciones dump pass cat >> /etc/fstab << 'EOF' UUID=a3f2e1b0-7c4d-4e8a-9b5f-2d1c3e4f0a6b /mnt/datos ext4 defaults,noatime 0 2 EOF # Verificar que la sintaxis es correcta antes de reiniciar: # mount -a intenta montar todo lo que hay en fstab y no está montado aún mount -a # Confirmar que está montado correctamente findmnt /mnt/datos
Lo que está pasando en cada decisión
El fallo de umount no es un error del sistema —es protección contra corrupción. Cuando lsof +D /mnt/datos muestra un proceso con cwd en ese directorio, significa que ese proceso tiene abierto el directorio como su directorio de trabajo actual. Basta con que un terminal haya hecho cd /mnt/datos para bloquearlo. La solución no es forzar (umount -l hace un desmontaje “lazy” que puede dejarte en estado inconsistente en ext4); la solución correcta es mover o terminar ese proceso.
blkid /dev/sdb1 lee los superblocks del filesystem y devuelve el UUID que ext4 grabó cuando fue formateado con mkfs.ext4. Ese valor es lo que pones en fstab, precedido de UUID=. Nunca uses el nombre /dev/sdb1 en producción; en cuanto añadas otro disco o cambies el orden de arranque, /dev/sdb1 puede pasar a ser otro dispositivo completamente distinto.
Las seis columnas de fstab tienen significado preciso. La quinta columna (dump, aquí 0) controla si el comando dump hace backup de este filesystem —en la práctica nadie usa dump hoy, siempre va a 0. La sexta columna (pass, aquí 2) le dice a fsck en qué orden revisar el filesystem durante el arranque: 1 es solo para el filesystem raíz (/), 2 para los demás que quieres que se comprueben, 0 para que fsck lo ignore por completo. Poner 2 en tu disco de datos es correcto; poner 1 en algo que no es raíz causará que fsck se queje.
defaults,noatime: defaults es un alias que expande a rw,suid,dev,exec,auto,nouser,async —el conjunto sensato para la mayoría de filesystems locales. noatime desactiva la actualización del access time en cada lectura de archivo. En ext4, cada vez que lees un archivo el kernel normalmente escribe en el inodo para actualizar atime. Con noatime, esa escritura no ocurre, lo que reduce la carga de escritura especialmente en SSDs y en discos con muchos archivos pequeños leídos frecuentemente.
mount -a es imprescindible antes de reiniciar. Ejecuta exactamente lo que ejecutaría el arranque (monta todo lo que hay en fstab y no está ya montado), por lo que si hay un error de sintaxis o el UUID es incorrecto, lo descubres ahora, en vivo, sin tener que reiniciar y quedarte con un sistema en modo de emergencia. Si mount -a devuelve un error, corrige fstab antes de tocar nada más.
Para discos externos o dispositivos que no siempre estarán presentes, añade nofail a las opciones: defaults,noatime,nofail. Sin esa opción, si el disco no está conectado al arrancar, systemd esperará 90 segundos y luego te dejará en un prompt de emergencia. Con nofail, simplemente salta esa entrada y sigue arrancando. Para filesystems de red (NFS, CIFS), usa además _netdev para indicarle a systemd que espere a que la red esté disponible antes de intentar montarlos.
N° 88