GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist Fstab unter Linux | Eine Einführung in die Linux-Datei /etc/fstab

In dieser Anleitung lernen wir, was fstab ist unter Linux, und was ist die Verwendung von fstab Datei, die Struktur von /etc/fstab Datei und schließlich, wie man fstab-Probleme debuggt. Am Ende werden wir auch eine kurze Einführung in mtab besprechen Datei, ihre Verwendung und wie sich mtab von fstab unterscheidet.

Was ist fstab?

Als Serveradministrator oder Linux-Desktop-Benutzer oder jeder, der neu bei Linux ist, verstehen Sie /etc/fstab Datei in Linux und das Debuggen von fstab-Problemen sind sehr wichtig.

Fstab ist ein f ile s System Tab Datei, die vom Kernel während des Bootens verwendet wird, um das Dateisystem einzuhängen. Vereinfacht gesagt erstellen Sie eine oder mehrere Partitionen auf Ihrer Festplatte und machen für jede Partition einen Eintrag in der fstab, der beim Booten vom Kernel gelesen und das Dateisystem automatisch gemountet wird.

Standardmäßig werden alle Partitionen, die Sie während der Installation des Betriebssystems erstellen, automatisch zur fstab-Datei hinzugefügt. Lassen Sie uns eintauchen und sehen, wie fstab strukturiert ist und wie man fstab verwendet.

HINWEIS: Vor dem Bearbeiten der fstab-Datei empfiehlt es sich, eine Sicherungskopie der Datei zu erstellen. Falls etwas durcheinander geraten ist, können Sie die Sicherungskopie wiederherstellen.

Struktur der Datei /etc/fstab

Fstab befindet sich im Verzeichnis /etc/ Verzeichnis und im Besitz des Root-Benutzers. Sie sollten die Datei also mit sudo bearbeiten Privileg oder als root Benutzer.

Zeigen Sie die fstab-Datei an, indem Sie den folgenden Befehl ausführen, um ihre Struktur zu verstehen.

$ cat /etc/fstab
$ cat /etc/fstab | grep -i -v "^#" | column -t # Skip comments and format

Die Fstab-Datei besteht aus sechs Spalten (Abschnitten).

  1. Dateisystem - Gerät blockieren, das partitioniert ist und auf dem ein Dateisystem erstellt wurde.
  2. Mount Point - Wo das Dateisystem in Ihrem System gemountet ist.
  3. Typ - Dateisystemtyp (Ext4, Ext3, Swap, Xfs usw.)
  4. Optionen - Dies entscheidet, welche Einhängeparameter beim Einhängen des Dateisystems zu berücksichtigen sind
  5. Dump - Dies ist für Sicherungszwecke, die von dump verwendet werden Nützlichkeit. Das Setzen auf Null bedeutet, dass die Sicherung deaktiviert wird, und Eins bedeutet, dass die Sicherung auf einem bestimmten Gerät/Medium aktiviert wird.
  6. Passen - Dateisystemprüfung beim Booten durch fsck Nützlichkeit. Null deaktiviert die Dateisystemprüfung und sollte für das Root-Dateisystem auf 1 und für andere Partitionen auf 2 gesetzt werden.

Jedes Dateisystem wird in einer eigenen Zeile beschrieben. Felder in jeder Zeile werden durch Tabulatoren oder Leerzeichen getrennt.

Sehen wir uns diese sechs Parameter im Detail an.

1. Dateisystem

In der ersten Spalte von fstab müssen Sie auf die Partition zeigen, die Sie einhängen möchten. Entweder Sie können einen Blockgerätenamen wie /dev/sda* verwenden oder verwenden Sie die UUID.

Wenn Sie ein Dateisystem auf einem partitionierten Laufwerk erstellen, indem Sie die Datei mkfs verwenden Befehl wird eine UUID für diese bestimmte Partition erstellt.

Nehmen wir an, Sie haben eine neue Partition erstellt und sie ist sdb1 . In diesem Fall sieht Ihre fstab wie folgt aus.

/dev/sdb1 /home ext4 defaults 0 0

Führen Sie den folgenden Befehl aus, um die Block-ID für ein beliebiges Dateisystem abzurufen.

$ blkid                # Print info about all fs.
$ blkid /dev/sdb1      # Print info about given fs alone.

Mit dieser Block-ID können Sie nun das Dateisystem wie im folgenden Bild gezeigt mounten.

2. Mount Point

In der zweiten Spalte müssen Sie das Mountpoint-Verzeichnis angeben. Einhängepunkt bezieht sich auf das Verzeichnis im Dateisystem, in dem Ihr partitioniertes Laufwerk eingehängt wird.

Wie Sie im folgenden Bild sehen, ist jede Partition in einem anderen Verzeichnis gemountet. Zum Beispiel die Partition /dev/sdb1 ist dem Home-Verzeichnis zugeordnet und unter /home gemountet .

Angenommen, Sie haben eine neue Partition mit einer Größe von 100 GB und mit EXT4 als Partitionstyp erstellt. Der fstab-Eintrag sieht wie folgt aus. Hier /mnt/data1 ist der Einhängepunkt.

UUID=xxxx-xxx-xxx /mnt/data1/ ext4 defaults 0 0

Oder

/dev/sdb2 /mnt/data1/ ext4 defaults 0 0

3. Dateisystemtyp

Hier erwähnen Sie den Dateisystemtyp (EXT2, EXT3, EXT4, XFS, VFAT, SWAP usw.). Wenn Sie den Dateisystemtyp wissen möchten Verwenden Sie für ein Blockgerät blkid oder lsblk Befehl.

$ lsblk -f /dev/sdb1
NAME FSTYPE LABEL UUID                                 MOUNTPOINT
sdb1 ext4         365c64d7-4d65-4cdf-8ce1-0def8bb41997 /home
$ blkid /dev/sdb1
/dev/sdb1: UUID="365c64d7-4d65-4cdf-8ce1-0def8bb41997" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="8f174339-01"

4. Mount-Optionen

Dies ist eine wichtige Spalte, in der Sie Einhängeoptionen für das Dateisystem übergeben. Es gibt viele Mount-Optionen, die verwendet werden können. Für den normalen Gebrauch reicht es aus, die Standardoption zu verwenden. Die Option default zeigt auf die Kombination aus sieben (rw , suid , dev , exec , auto , nouser und async ) Optionen.

Sehen wir uns an, was die Standardoption bewirkt.

  • rw - Dies teilt dem Dateisystem mit, dass es im Lese-Schreib-Modus gemountet werden soll. Wenn ein Fehler auftritt, können Sie das Dateisystem im schreibgeschützten Modus einhängen, indem Sie die Option errors=remount-ro .
  • suid - Jede Operation im Zusammenhang mit suid und sgid wird durch diese Option zugelassen.
  • dev - Es interpretiert Zeichen und blockiert Geräte im Dateisystem. Wenn Sie keine Zeichen interpretieren und Geräte blockieren möchten, können Sie die nodev-Option explizit verwenden.
  • exec - Vom Dateisystem aus können Sie die Binärdateien ausführen, indem Sie die Option exec setzen. Im Gegensatz dazu können Sie die noexec verwenden Option, keine Binärdateien aus dem Dateisystem auszuführen.
  • auto - Diese Option ist für das automatische Mounten des Dateisystems während der Startzeit oder immer dann verantwortlich, wenn Sie den Befehl mount -a vom Terminal aus ausführen. Dem gegenüber steht noauto Option, die es nur erlaubt, das Dateisystem einzeln zu mounten.
  • nouser - Nur ein Superuser kann das Dateisystem mounten. Sie können auch die Optionen "user" und "users" verwenden, mit denen der normale Benutzer das Dateisystem mounten und unmounten kann.
  • async - Alle IO-Vorgänge sollten asynchron ausgeführt werden. Wenn Sie die Option "sync" verwenden, wird die IO-Operation synchron ausgeführt.

Je nach Anforderung müssen Sie möglicherweise unterschiedliche Optionen verwenden. Wenn Sie einen bestehenden Produktionsserver in Ihrer Umgebung haben, schlage ich vor, dass Sie einen Blick auf die fstab-Datei werfen, die Ihnen eine gute Vorstellung davon gibt, welche Mount-Optionen verwendet werden.

5. Ablegen

Diese Spalte ist spezifisch für Sicherungszwecke. Wenn es auf 1 gesetzt ist, erstellt das Dump-Dienstprogramm Sicherungen. Dies ist jetzt eine veraltete Funktion, da sie ursprünglich entwickelt wurde, um Sicherungen auf Bändern für ältere Dateisysteme zu erstellen.

Es wird empfohlen, ihn auf Null zu setzen .

6. Bestanden

Während des Bootens wird fsck Das Dienstprogramm führt eine Dateisystemprüfung basierend auf dem Wert durch, den wir in der sechsten Spalte angeben. Wenn Sie den Wert auf Null setzen oder lassen Sie es leer , wird die Dateisystemprüfung deaktiviert.

Das Root-Dateisystem sollte immer mit dem Wert 1 angegeben werden . Für andere Dateisysteme können Sie den Wert auf 2 setzen . Da ich VM für die Demonstration verwende, habe ich alle Werte auf Null gesetzt.

Startprobleme im Zusammenhang mit der Fstab-Datei beheben

Wenn Sie einen Fehler in der fstab-Datei gemacht haben und der Computer neu gestartet wird, wechselt er in den Notfallmodus . Im Notfallmodus gibt es keine Netzwerkschnittstelle, sodass Sie direkt in der Konsole debuggen müssen.

Sie müssen den root eingeben Passwort, um in den Notfallmodus zu gelangen. Führen Sie den folgenden Befehl aus und scrollen Sie langsam, um nach Fehlermeldungen zu suchen. In meinem Fall habe ich absichtlich das Trennzeichen (/) in /dev/sdb1 entfernt .

Wenn das Dateisystem im Notfallmodus im Nur-Lese-Modus gemountet wird, müssen Sie es in rw mounten Modus und bearbeiten Sie die fstab Datei, um das Problem zu beheben. Zum Remounten des Dateisystems in rw Modus führen Sie den folgenden Befehl aus.

$ mount -o rw,remount /

Bearbeiten Sie nun die fstab, um den Fehler zu beheben, und starten Sie den Computer neu. Jetzt sollte Ihr Rechner ordnungsgemäß booten können.

$ reboot

Um die Probleme während der Startzeit zu vermeiden, können Sie mount ausführen Befehl nach dem Hinzufügen von fstab Einträge.

Schauen Sie sich das folgende Bild an, wo ich einen neuen Eintrag für /dev/sdb2 hinzugefügt habe . Ich habe den Dateisystemtyp nicht angegeben, daher wird mir ein Fehler ausgegeben, wenn ich mount ausführe Befehl.

$ mount -a
mount: /mnt: unknown filesystem type 'defaults'.

Was ist eine Mtab-Datei?

Wenn Sie den Mount-Befehl ausführen, ohne irgendwelche Argumente zu übergeben, gibt er die Liste der gemounteten Dateisysteme aus.

$ mount

Es gibt auch eine Datei namens mtab in /etc/ Verzeichnis. Wenn Sie sich /etc/mtab ansehen , ist es genau dasselbe wie die Ausgabe von mount Befehl.

Mal sehen, was die Manpage über die mtab-Datei zu sagen hat.

Die /etc/mtab Datei ist symbolisch mit Mounts im proc verknüpft Dateisystem. Wenn Sie die Datei mount ausführen oder umount Befehl wird das Ergebnis in mounts aktualisiert.

$ ls -ln /etc/mtab
lrwxrwxrwx 1 0 0 19 Jan 9 17:45 /etc/mtab -> ../proc/self/mounts

Um den Unterschied zwischen fstab und mtab zusammenzufassen:fstab wird verwendet, um das Dateisystem während der Bootzeit einzuhängen, und mtab wird verwendet, um die Liste der eingehängten Dateisysteme anzuzeigen.

Wenn /etc/mtab Datei versehentlich beschädigt oder gelöscht wurde, können Sie sie mit dem folgenden Befehl neu generieren.

$ sudo sh -c 'grep -v rootfs /proc/mounts > /etc/mtab'

Schlussfolgerung

In diesem Artikel haben wir besprochen, was fstab und mtab sind und wie wichtig es für das System ist, die Partitionsinformationen während des Bootens zu speichern und zu lesen. Wir haben auch besprochen, was passiert, wenn in der fstab-Datei ein Fehler gemacht wird.


Linux
  1. Eine Einführung in die Linux-Datei /etc/fstab

  2. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  3. /etc/hosts-Datei unter Linux verstehen

  4. Beispieldatei /etc/services unter Linux

  5. Größenbeschränkung von /etc/hosts (Linux)

Was ist umask unter Linux?

FSTAB &MTAB

Was ist eine .bashrc-Datei unter Linux?

Was ist die Datei /etc/passwd unter Linux?

Verstehen der /etc/fstab-Datei unter Linux

Ubuntu gibt Nachricht Willkommen im Notfallmodus !