Jump to content
From ArchWiki

Esta traducción de fstab fue revisada el 2022-10-21. Si existen cambios puede actualizarla o avisar al equipo de traducción.

Artículos relacionados

- Denominación de dispositivos de bloque persistente
- Sistemas de archivos
- tmpfs
- Espacio de intercambio

El archivo fstab(5) puede utilizarse para definir cómo deben montarse las particiones de disco, otros dispositivos de bloque o sistemas de archivos remotos en el sistema de archivos.

Cada sistema de archivos se describe en una línea separada. Estas definiciones se convertirán en unidades de montaje systemd dinámicamente en el arranque, y cuando se recargue la configuración del gestor del sistema. La configuración por defecto ejecutará automáticamente fsck y montará los sistemas de archivos antes de iniciar los servicios que necesitan que sean montados. Por ejemplo, systemd se asegura automáticamente de que los montajes de sistemas de archivos remotos como NFS o Samba se inicien solo después de que se haya configurado la red. Por lo tanto, los montajes de sistemas de archivos locales y remotos especificados en `/etc/fstab` deberían funcionar de forma inmediata. Véase systemd.mount(5) para más detalles.

La orden `mount` utilizará fstab, solo si se da una de las opciones de directorio o dispositivo, para rellenar el valor del otro parámetro. Al hacerlo, también se utilizarán las opciones de montaje que aparecen en fstab.

## Utilización

Un simple `/etc/fstab`, usando UUIDs del sistema de archivos, muestra la siguiente salida:

    /etc/fstab

    # <dispositivo>                           <dir> <tipo> <opciones> <dump> <fsck>
    UUID=0a3407de-014b-458b-b5c1-848e92a327a3 /     ext4   defaults   0      1
    UUID=f9fe0b69-a280-415d-a03a-a32752370dee none  swap   defaults   0      0
    UUID=b411dc99-f0a0-4c87-9e05-184977be8539 /home ext4   defaults   0      2

- `<device>` describe el dispositivo especial de bloques o el sistema de archivos remoto que se va a montar; véase #Identificación de sistemas de archivos.
- `<dir>` describe el directorio mount.
- `<tipo>` el tipo de sistema de archivos.
- `<options>` las opciones de montaje asociadas; véase mount(8) § FILESYSTEM-INDEPENDENT_MOUNT_OPTIONS y ext4(5) § MOUNT_OPTIONS.
- `<dump>` es comprobado por la utilidad dump(8). Este campo suele estar configurado como `0`, lo que desactiva la comprobación.
- `<fsck>` establece el orden de las comprobaciones del sistema de archivos en el momento del arranque; véase fsck(8). Para el dispositivo raíz debe ser `1`. Para otras particiones debe ser `2`, o `0` para desactivar la comprobación.

Sugerencia:

- Los del tipo `auto` permiten que la orden mount adivine qué tipo de sistema de archivos se utiliza. Esto es útil para medios ópticos (CD/DVD/Blu-ray).
- Si el sistema de archivos raíz es btrfs o XFS, el orden de fsck debe establecerse en `0` en lugar de `1`. Véase fsck.btrfs(8) y fsck.xfs(8).

Todos los dispositivos especificados dentro de `/etc/fstab` se montarán automáticamente al iniciar y cuando se utilice la opción `-a` con mount(8) a menos que se especifique la opción `noauto`. Los dispositivos listados y no presentes darán lugar a un error salvo que se utilice la opción `nofail`.

Véase fstab(5) § DESCRIPTION para más detalles.

## Identificación de sistemas de archivos

Hay diferentes maneras de identificar los sistemas de archivos que se montarán en `/etc/fstab`: por el descriptor de nombre del kernel, la etiqueta y UUID del sistema de archivos, y la etiqueta y UUID de la partición GPT para los discos GPT. El UUID o el PARTUUID deben ser favorecidos sobre los descriptores de nombre del kernel y las etiquetas. Véase Nombres de dispositivos de bloques persistentes para más detalles. Se recomienda leer ese artículo primero antes de proceder.

En esta sección, se describe cómo montar sistemas de archivos utilizando todos los métodos de montaje disponibles mediante ejemplos. La salida de las órdenes `lsblk -f` y `blkid` utilizados en los siguientes ejemplos están disponibles en el artículo Nombres de dispositivos de bloques persistentes.

Para utilizar los descriptores de nombres del kernel, utilice `/dev/sdxy` en la primera columna.

### Descriptores del nombre del kernel

Ejecute `lsblk -f` para listar las particiones y anteponer los valores de la columna NAME con `/dev/`.

    /etc/fstab

    # <dispositivo>   <dir>        <tipo>        <opciones>       <dump> <fsck>
    /dev/sda1         /boot        vfat          defaults         0      2
    /dev/sda2         /            ext4          defaults         0      1
    /dev/sda3         /home        ext4          defaults         0      2
    /dev/sda4         none         swap          defaults         0      0

Advertencia: Los descriptores de nombres del kernel no son persistentes y pueden cambiar en cada arranque, por lo que no deberían utilizarse en los archivos de configuración.

### Etiquetas del sistema de archivos

Ejecute `lsblk -f` para listar las particiones y anteponer los valores de la columna LABEL con `LABEL=` o, alternativamente, ejecute `blkid` y utilice los valores de LABEL sin las comillas:

    /etc/fstab

    # <dispositivo>   <dir>        <tipo>        <opciones>       <dump> <fsck>
    LABEL=ESP         /boot        vfat          defaults         0      2
    LABEL=Sistema     /            ext4          defaults         0      1
    LABEL=Datos       /home        ext4          defaults         0      2
    LABEL=Swap        none         swap          defaults         0      0

Nota: Si alguno de sus campos contiene espacios, véase #Espacios en la ruta de acceso.

### UUIDs del sistema de archivos

Ejecute `lsblk -f` para listar las particiones y anteponer los valores de la columna UUID con `UUID=` o, alternativamente, ejecute `blkid` y utilice los valores UUID sin las comillas:

    /etc/fstab

    # <dispositivo>                           <dir> <tipo> <opciones> <dump> <fsck>
    UUID=CBB6-24F2                            /boot vfat   defaults   0      2
    UUID=0a3407de-014b-458b-b5c1-848e92a327a3 /     ext4   defaults   0      1
    UUID=b411dc99-f0a0-4c87-9e05-184977be8539 /home ext4   defaults   0      2
    UUID=f9fe0b69-a280-415d-a03a-a32752370dee none  swap   defaults   0      0

### Etiquetas de las particiones GPT

Ejecute `blkid` para listar las particiones, y utilice los valores de PARTLABEL sin las comillas:

    /etc/fstab

    # <dispositivo>                      <dir> <tipo> <opciones> <dump> <fsck>
    PARTLABEL=EFI\040system\040partition /boot vfat   defaults   0      2
    PARTLABEL=GNU/Linux                  /     ext4   defaults   0      1
    PARTLABEL=Home                       /home ext4   defaults   0      2
    PARTLABEL=Swap                       none  swap   defaults   0      0

Nota: Si alguno de sus campos contiene espacios, consulte #Espacios en la ruta de acceso.

### UUIDs de las particiones GPT

Ejecute `blkid` para listar las particiones, y utilice los valores de PARTUUID sin las comillas:

    /etc/fstab

    # <dispositivo>                               <dir> <tipo> <opciones> <dump> <fsck>
    PARTUUID=d0d0d110-0a71-4ed6-936a-304969ea36af /boot vfat   defaults   0      2
    PARTUUID=98a81274-10f7-40db-872a-03df048df366 /     ext4   defaults   0      1
    PARTUUID=7280201c-fc5d-40f2-a9b2-466611d3d49e /home ext4   defaults   0      2
    PARTUUID=039b6c1c-7553-4455-9537-1befbc9fbc5b none  swap   defaults   0      0

## Consejos y trucos

### Montaje automático con systemd

Véase systemd.mount(5) para todas las opciones de montaje de systemd.

#### Partición local

En el caso de una partición grande, puede ser más eficiente permitir que los servicios que no dependen de ella se inicien mientras es comprobada por fsck. Esto se puede conseguir añadiendo las siguientes opciones a la entrada `/etc/fstab` de la partición:

    noauto,x-systemd.automount

Esto hará fsck y montará la partición sólo cuando se acceda a ella por primera vez, y el kernel cargará todo el acceso a los archivos hasta que esté listo. Este método puede ser relevante si uno tiene, por ejemplo, una partición `/home` significativamente grande.

Nota: Esto hará que el sistema de archivos sea del tipo `autofs`, el cual es ignorado por mlocate por defecto.

#### Sistema de archivos remoto

Lo mismo se aplica a los montajes de sistemas de archivos remotos. Si se desea que se monten sólo al acceder a ellos, se tendrán que usar los parámetros `noauto,x-systemd.automount`. Además, puede utilizar la opción `x-systemd.mount-timeout=` para especificar el tiempo que systemd debe esperar a que termine la orden de montaje. Además, la opción `_netdev` asegura que systemd entienda que el montaje depende de la red y lo ordene después de que la red esté en línea.

    noauto,x-systemd.automount,x-systemd.mount-timeout=30,_netdev

#### Sistema de archivos encriptado

Si tiene sistemas de archivos encriptados con ficheros de claves, también puede añadir el parámetro `noauto` a las entradas correspondientes en `/etc/crypttab`. Entonces systemd no abrirá el dispositivo encriptado en el arranque, sino que esperará hasta que se acceda a él y lo abrirá automáticamente con el archivo de claves especificado antes de montarlo. Esto puede ahorrar algunos segundos en el arranque si está usando un dispositivo RAID encriptado, por ejemplo, porque systemd no tiene que esperar a que el dispositivo esté disponible. Por ejemplo:

    /etc/crypttab

    data /dev/md0 /root/key noauto

#### Desmontaje automático

También puede especificar un tiempo de espera para un montaje con la opción `x-systemd.idle-timeout`. Por ejemplo

    noauto,x-systemd.automount,x-systemd.idle-timeout=1min

Esto hará que systemd lo desmonte después de que haya estado inactivo durante 1 minuto.

### Dispositivos externos

Los dispositivos externos que deben ser montados cuando están presentes pero ignorados si están ausentes pueden requerir la opción `nofail`. Esto evita que se reporten errores en el arranque. Por ejemplo:

    /etc/fstab

    /dev/sdg1        /media/backup    jfs    nofail,x-systemd.device-timeout=1ms    0  2

La opción `nofail` combina mejor con la opción `x-systemd.device-timeout`. Esto se debe a que el tiempo de espera del dispositivo por defecto es de 90 segundos, por lo que un dispositivo externo desconectado con sólo `nofail` hará que su arranque tarde 90 segundos más, a menos que reconfigure el tiempo de espera como se muestra. Asegúrese de no establecer el tiempo de espera en 0, ya que esto se traduce en un tiempo de espera infinito.

### Espacios en la ruta de acceso

Dado que los espacios se utilizan en `fstab` para delimitar los campos, si algún campo (PARTLABEL, LABEL o el punto de montaje) contiene espacios, éstos deben ser sustituidos por caracteres de escape `\` seguidos del código octal de 3 dígitos `040`:

    /etc/fstab

    UUID=47FA-4071     /home/username/Camera\040Pictures   vfat  defaults      0  0
    /dev/sda7          /media/100\040GB\040(Storage)       ext4  defaults,user 0  2

### Opciones de atime

Las siguientes opciones de atime pueden afectar al rendimiento de la unidad.

- La opción `strictatime` actualiza el tiempo de acceso de los archivos cada vez que se accede a ellos. Esto es más útil cuando Linux se utiliza para servidores, pues no tiene mucho sentido para uso de escritorio. El inconveniente de la opción `strictatime` es que incluso la lectura de un archivo desde la caché de páginas (lectura desde la memoria en lugar de la unidad de disco) seguirá dando lugar a una escritura.

- La opción `noatime` desactiva por completo la escritura de los tiempos de acceso a los archivos en la unidad cada vez que se lee un archivo. Esto funciona bien para casi todas las aplicaciones, excepto para aquellas que necesitan saber si un archivo ha sido leído desde la última vez que fue modificado. La información del tiempo de escritura a un archivo continuará actualizándose cada vez que se escriba en el archivo con esta opción activada.

- La opción `nodiratime` desactiva la escritura de los tiempos de acceso a los archivos sólo para los directorios, mientras que otros archivos siguen recibiendo los tiempos de acceso.
  Nota: `noatime` implica `nodiratime`. No es necesario especificar ambos.

- `relatime` actualiza el tiempo de acceso, pero solamente si el tiempo de acceso anterior fue inferior al tiempo de modificación o cambio actual. Además, desde Linux 2.6.30, la hora de acceso siempre se actualiza si la hora de acceso anterior era superior a las 24 horas. Esta opción se utiliza cuando se especifica la opción `defaults`, la opción `atime` (que significa utilizar el valor por defecto del kernel, que es `relatime`; véase mount(8) y wikipedia:Stat (system call)#Criticism of atime) o ninguna opción.

Cuando se utiliza Mutt u otras aplicaciones que necesitan saber si un archivo ha sido leído desde la última vez que fue modificado, la opción `noatime` no debe ser utilizada. El uso de la opción `relatime` es aceptable y sigue proporcionando una mejora de rendimiento.

Desde el kernel 4.0 existe otra opción relacionada:

- `lazytime` reduce las escrituras en disco manteniendo los cambios en las marcas de tiempo del inodo (tiempos de acceso, modificación y creación) sólo en memoria. Las marcas de tiempo en el disco se actualizan sólo cuando (1) el nodo del archivo necesita ser actualizado por algún cambio no relacionado con las marcas de tiempo del archivo, (2) se produce una sincronización con el disco, (3) un nodo no eliminado es desalojado de la memoria o (4) si han pasado más de 24 horas desde la última vez que la copia en memoria fue escrita en el disco.

  Advertencia: En caso de que se produzca una caida del sistema, los tiempos de acceso y modificación en disco podrían estar desfasados hasta 24 horas.

Tenga en cuenta que la opción `lazytime` funciona en combinación con las opciones `*atime` anteriormente mencionadas , no como alternativa. Por defecto es `relatime` , pero puede ser incluso `strictatime` con el mismo o menor coste de escrituras en disco que la simmple opción `relatime`.

### Volver a montar la partición raíz

Si por alguna razón la partición raíz ha sido montada incorrectamente como de sólo lectura, vuelva a montar la partición raíz con acceso de lectura-escritura con la siguiente orden:

    # mount -o remount,rw /

### Montaje automático de particiones GPT

Cuando se utiliza UEFI/GPT, es posible omitir ciertas particiones de `/etc/fstab` según la Especificación de particiones detectables y tener a systemd-gpt-auto-generator(8) montando las particiones. Véase Systemd (Español)#Montaje automático de particiones GPT.

### Fijar montaje

Puede vincular directorios con la opción `bind`:

    /etc/fstab

    # <dispositivo>                     <dir>                         <tipo> <opciones>    <dump> <fsck>
    UUID=94649E22649E06E0                /media/user/OS/              ntfs   defaults,rw,errors=remount-ro  0  0
    /media/user/OS/Users/user/Music/     /home/user/Music/            none   defaults,bind 0   0
    /media/user/OS/Users/user/Pictures/  /home/user/Pictures/         none   defaults,bind 0   0
    /media/user/OS/Users/user/Videos/    /home/user/Videos/           none   defaults,bind 0   0
    /media/user/OS/Users/user/Downloads/ /home/user/Downloads/        none   defaults,bind 0   0
    /media/user/OS/Users/user/Documents/ /home/user/Documents/        none   defaults,bind 0   0
    /media/user/OS/Users/user/projects/  /home/user/projects/windows/ none   defaults,bind 0   0

Véase mount(8) § Operación de enlace de montaje para obtener más información.

## Véase también

- Listado completo de dispositivos, incluyendo el dispositivo de bloques
- Estándar de jerarquía del sistema de archivos
- Caché y velocidad 30 veces más rápidos con TMPFS

Categories:

- File systems (Español)
- Boot process (Español)