¿Cómo se valida fstab sin reiniciar?


104

He modificado /etc/fstab.

Verifiqué los nuevos dispositivos y puedo montarlos con el mountcomando.

¿Cómo puedo validar las modificaciones realizadas /etc/fstab?

Respuestas:


126

Puedes simplemente ejecutar: mount -a

-a Montar todos los sistemas de archivos (de los tipos dados) mencionados en fstab.

Este comando montará todos los sistemas de archivos (aún no montados) mencionados en fstab y se usa en el inicio del script del sistema durante el arranque.


3
... y compárelo con / etc / mtab una vez que haya hecho un "sudo mount -a", solo para asegurarse de que se hayan cumplido todas sus opciones.
adebaumann

1
mount -avolviendo a leer /etc/fstabtambién se volvería a cargar, /etc/mtabpor lo que debería estar bien solo con eso.
Premio

2
¿No es ese el punto que Adebaumann está tratando de plantear aquí? mount -a puede devolver el éxito, pero no necesariamente significa que se hayan cumplido todas las opciones de montaje específicas. como esto también volverá a cargar / etc / mtab, ¿debe verificar si todas las opciones funcionan?
RapidWebs

57

El comando mount toma un --fakeo -fpara abreviar. El siguiente comando debe hacer lo que necesita:

mount -fav

Lo siguiente está en la documentación para la -fopción:

Causes everything to be done except for the actual system call; if it's not obvious, this ``fakes'' mounting the filesystem. This option is useful in conjunction with the -v flag to determine what the mount command is trying to do.

(Tenga en cuenta que esto es Linux - verifique antes de usar en otro lugar: FreeBSD usa -fpara 'forzar' - exactamente el significado opuesto).


55
mount -fav no comprueba que el dispositivo con UUID especificado esté realmente en el sistema. También a uno le gustaría combinar -f con -n para no contaminar / etc / mtab
Alexandr Priymak

Me gusta mount --fake -apero parece que exit code($?)=0siempre vuelve . Umm ..
kujiy

Además, la opción falsa no verifica si el directorio existe. Dice successfully mountedincluso cuando el punto de montaje no existe
DollarAkshay

Esto parece ser un buen primer intento, pero también debe hacer un "montaje -a" después para verificar. En mi caso, configuré las opciones como "predeterminadas" en lugar de "predeterminadas" (lo que impedía que mi Pi se iniciara), pero las mount -favvalidé como correctas. Tan pronto como lo hice mount -a, encontró un error.
Adam Plocher

6

sudo findmnt --verify --verbose es la mejor manera que he encontrado


3

Encontré esto / problema / pero la solución no cumplió con mis requisitos.

Al reiniciar con cualquier entrada no válida en / etc / fstab, como sistemas de archivos faltantes que fsck no puede verificar; el sistema no podrá arrancar. Eso puede ser mucho más difícil de manejar si tienes una caja sin cabeza.

Esta es mi solución para verificar / etc / fstab para evitar este problema de arranque:

    # cat /usr/local/bin/check-fstab-uuid-entries.sh
    #!/usr/bin/env bash

    for x in $(grep ^UUID /etc/fstab|cut -d \  -f 1|cut -d = -f 2)
    do
            if [ ! -h /dev/disk/by-uuid/$x ];then
                    echo $(grep $x /etc/fstab)  ..... not found
            fi
    done

2

mount -a es un método seguro para verificar / etc / fstab; de lo contrario, una entrada incorrecta podría dañar el sistema

También se recomienda mantener una copia de respaldo del archivo original / etc / fstab. podría copiarse al directorio de inicio de la raíz


2

Tenga en cuenta que si agrega un archivo de intercambio a su fstab, mount -ano lo activará: querrá ejecutarlo swapon -a.


1

TBH incluso el montaje falso no valida con seguridad el fstab para entradas de tipo fs malas.

puede tener entradas que tengan uuid, directorios, etc. correctos, pero si especifica un tipo de FS inexistente, esto detendrá su arranque la próxima vez.

[root @ gruñón ~] # grep backup / etc / fstab
UUID = 5ed48e5e-7251-4d49-a273-195cf0432a89 / mnt / backup noatime, nodiratime, xfs defaults, nodev, nosuid 0 0
[root @ gruñón ~] #

[root @ gruñón ~] # mount -fav | grep backup
/ mnt / backup: montado con éxito
[root @ gruñón ~] #
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.