it-swarm.com.de

Wie validiert man fstab ohne Neustart?

Ich habe /etc/fstab Geändert.

Ich habe die neuen Geräte überprüft und kann sie mit dem Befehl mount mounten.

Wie kann ich die an /etc/fstab Vorgenommenen Änderungen validieren?

115
Luc M

Sie können einfach ausführen: mount -a

-a Hängen Sie alle in fstab genannten Dateisysteme (der angegebenen Typen) ein.

Dieser Befehl stellt alle in fstab genannten (noch nicht gemounteten) Dateisysteme bereit und wird beim Starten des Systemskripts beim Booten verwendet.

134
Prix

Der Befehl mount nimmt ein --fake oder -f kurz. Der folgende Befehl sollte das tun, was Sie brauchen:

mount -fav

Das Folgende ist in der Dokumentation für -f Möglichkeit:

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.

(Beachten Sie, dass dies Linux ist - überprüfen Sie dies, bevor Sie es an anderer Stelle verwenden: FreeBSD verwendet -f für 'Kraft' - genau die entgegengesetzte Bedeutung.)

64
tronda

Sudo findmnt --verify --verbose ist der beste Weg, den ich gefunden habe

9
rockwotj

Ich habe dieses/Problem/gefunden, aber die Lösung hat meine Anforderungen nicht erfüllt.

Beim Neustart mit ungültigen Einträgen in der Datei/etc/fstab, z. B. fehlenden Dateisystemen, die von fsck nicht überprüft werden können. Das System kann nicht gestartet werden. Das kann viel schwieriger sein, wenn Sie eine Headless-Box haben.

Dies ist meine Lösung zum Überprüfen von/etc/fstab, um dieses Startproblem zu vermeiden:

    # 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
3

Beachten Sie, dass mount -a Wenn Sie Ihrer fstab eine Auslagerungsdatei hinzufügen, diese nicht aktiviert: Sie möchten swapon -a Ausführen.

2
Ian Hunter

mount -a ist eine sichere Methode, um/etc/fstab zu überprüfen, da sonst eine falsche Eingabe das System beschädigen kann

Es wird außerdem empfohlen, eine Sicherungskopie der Originaldatei/etc/fstab aufzubewahren. Es könnte in das Ausgangsverzeichnis von root kopiert werden

2
Vikas Avnish

TBH selbst bei gefälschter Montage wird die fstab nicht sicher auf fehlerhafte Einträge vom Typ fs überprüft.

sie können Einträge mit korrekten UUIDs, Verzeichnissen usw. haben. Wenn Sie jedoch einen nicht vorhandenen FS Typ eingeben), wird Ihr Start beim nächsten Mal angehalten.

 [Root @ grumpy ~] # grep backup /etc/fstab[.____.‹UUID=5ed48e5e-7251-4d49-a273-195cf0432a89/mnt/backup noatime, nodiratime, xfs defaults, nodev, nosuid 0 0 
 [Root @ grump ~] # 
 
 [Root @ grumpy ~] # mount -fav | grep backup 
/mnt/backup: erfolgreich gemountet 
 [root @ grumpy ~] # 
1
OldTimeAdmin