Un sistema de archivos que reside en un dispositivo SATA/PATA o SCSI necesita ser montado manualmente para poder acceder a él. El comando mount permite al usuario root montar manualmente un sistema de archivos. El primer argumento del comando mount especifica el sistema de archivos a montar. El segundo argumento especifica el directorio de destino en el que el sistema de archivos estará disponible después de montarlo. El directorio de destino se denomina punto de montaje.
La sintaxis general para montar un sistema de archivos con mount es:
# mount device mount_point_directory
Al utilizar mount, puede anular la configuración predeterminada en /etc/fstab. Por ejemplo, introduciendo lo siguiente se monta la partición /dev/sdd1 en el directorio /data:
# mount /dev/sdd1 /data
Normalmente no se especifica el tipo de sistema de archivos porque se reconoce automáticamente (usando números mágicos en el superbloque, o simplemente probando diferentes tipos de sistemas de archivos; ver man mount para más detalles).
Las siguientes son algunas de las opciones que puede utilizar al montar un sistema de archivos con el comando mount o introduciéndolas en /etc/fstab.
- remount. Esta opción hace que los sistemas de archivos que ya están montados se vuelvan a montar. Cuando se realiza un cambio en las opciones de /etc/fstab, se puede utilizar remount para incorporar los cambios.
- rw, ro. Estas opciones indican si un sistema de archivos debe ser de escritura (rw) o sólo de lectura (ro).
- sync, async. Estas opciones establecen la entrada y salida sincrónica (sync) o asincrónica (async) en un sistema de archivos. La configuración por defecto es async.
- atime, noatime. Estas opciones establecen si el tiempo de acceso de un archivo se actualiza en el inodo (atime) o no (noatime). La opción noatime debería mejorar el rendimiento.
- nodev, dev. La opción nodev impide que los archivos de dispositivo se interpreten como tales en el sistema de archivos.
- noexec, exec. Puede prohibir la ejecución de programas en un sistema de archivos con la opción noexec.
- nosuid, suid. La opción nosuid asegura que los bits suid y sgid del sistema de archivos sean ignorados.
- auto, noauto. Los sistemas de archivos configurados con la opción noauto en el archivo /etc/fstab no se montan automáticamente al arrancar el sistema.
- user, nouser. Esta opción permite a los usuarios montar el sistema de archivos. Normalmente, este es un privilegio del usuario root.
- defaults. Esta opción hace que se utilicen las opciones predeterminadas rw, suid, dev, exec, auto, nouser y async.
Algunas opciones sólo tienen sentido en el archivo /etc/fstab. Estas opciones incluyen las siguientes:
Las opciones noauto y user suelen combinarse para los medios extraíbles, como las unidades de disquete o CD-ROM.
Desmontar un sistema de archivos
Una vez montado un sistema de archivos, puede utilizar el comando umount (sin «n») para desmontar el sistema de archivos. Puede desmontar el sistema de archivos utilizando umount con el dispositivo o el punto de montaje.
Por ejemplo, para desmontar un sistema de archivos (dev/sdd1) montado en /data, podría introducir uno de los siguientes:
# umount /data
o
umount /dev/sdd1
Para desmontar el sistema de archivos, ninguna aplicación o usuario puede utilizarlo. Si se está utilizando, Linux ve el sistema de archivos como «ocupado» y se negará a desmontar el sistema de archivos y producirá el siguiente error.
# umount /dataumount: /data: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
El desmontaje no es posible si el punto de montaje es accedido por un proceso. Para que el umount tenga éxito, el proceso debe dejar de acceder al punto de montaje.
El comando lsof lista todos los archivos abiertos y los procesos que acceden a ellos en el directorio proporcionado. Es útil para identificar qué procesos impiden actualmente que el sistema de archivos se monte con éxito.
# lsof /dataCOMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEbash 1160 root cwd DIR 253,1 180 4194369 /rootrsyslogd 566 root cwd DIR 253,1 224 64 /...
También puede utilizar el comando fuser para obtener los IDs de los procesos que se ejecutan actualmente en el punto de mpunto que desea montar.
# fuser -cu /data
También puedes matar todos los procesos del punto de montaje utilizando el comando fuser.
# fuser -ck /data
Una vez identificados los procesos, se puede realizar una acción, como esperar a que el proceso finalice o enviar una señal SIGTERM o SIGKILL al proceso. En este caso, basta con desmontar el punto de montaje.
# umount /data
Forzar el desmontaje de los sistemas de archivos
Puede haber ocasiones en las que el sistema (kernel) vea el sistema de archivos como ocupado, sin importar lo que se intente hacer. En estos casos, puede introducir umount -f para forzar el desmontaje del sistema de archivos. Sin embargo, recomendamos usar esto sólo como último recurso, ya que probablemente haya una razón por la que el kernel piense que el sistema de archivos sigue montado.
# umount -f /mount_point
Ver sistemas de archivos montados actualmente
Puede ver los sistemas de archivos montados actualmente introduciendo el comando mount. Aparece información similar a la siguiente:
# mountsysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=487424k,nr_inodes=121856,mode=755)/dev/vda1 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)...
También puede ver esta información en el archivo /proc/mounts.