Was ist die Linux-fstab-Datei und wie funktioniert sie?
Veröffentlicht: 2022-01-29Wenn Sie Linux ausführen, müssen Sie wahrscheinlich einige Optionen für Ihre Dateisysteme ändern. Sich mit fstab vertraut zu machen, kann den gesamten Prozess viel einfacher machen, und es ist viel einfacher, als Sie denken.
Was ist Fstab?
Fstab ist die Dateisystemtabelle Ihres Betriebssystems. Wenn Sie einen Überblick über Dateisysteme wünschen, lesen Sie unbedingt unseren anderen Artikel HTG Explains: Welches Linux-Dateisystem sollten Sie wählen? Früher war dies die primäre Methode, mit der das System Dateien automatisch einhängte. Heutzutage können Sie ein beliebiges USB-Laufwerk anschließen und es wird einfach in Nautilus auftauchen, wie es in Windows und Mac OS der Fall ist, aber früher mussten Sie diese Festplatten manuell in einem bestimmten Ordner mit dem „ mount“-Befehl. Dies galt für DVDs, CDs und sogar Disketten (erinnern Sie sich daran?).
Damals war die einzige Alternative, dem Computer mitzuteilen, dass jedes Mal, wenn ein bestimmtes Gerät angeschlossen wurde, es automatisch an einer bestimmten Stelle gemountet werden sollte. Hier kam fstab ins Spiel, und es war großartig. Angenommen, Sie haben die Festplatten Ihres IDE- oder SCSI-Controllers ausgetauscht. Der Computer könnte die Dateisysteme in einer anderen Reihenfolge laden und möglicherweise Dinge durcheinander bringen. Fstab ist so konfiguriert, dass es nach bestimmten Dateisystemen sucht und sie jedes Mal automatisch auf die gewünschte Weise einbindet, wodurch eine Vielzahl von Katastrophen verhindert werden.
Ihre Fstab-Datei
Die fstab-Datei befindet sich unter:
/etc/fstab
Werfen wir einen Blick auf meine fstab-Datei, sollen wir?
Sie werden definitiv Unterschiede sehen, aber wenn Sie mit Ihrer eigenen fstab mitmachen möchten, geben Sie einfach diesen Befehl in ein Terminal ein:
Sie können auch gedit verwenden, wenn Sie mit Nano nicht vertraut sind.
Die offensichtlichen Optionen
Sie werden feststellen, dass alle Einträge mit UUIDs beginnen. Sie erinnern sich vielleicht, dass Sie dies in einem unserer vorherigen Artikel, So wählen Sie ein Partitionsschema für Ihren Linux-PC, gesehen haben, aber wir werden es trotzdem noch einmal erklären. Jedem Dateisystem wird während der Formatierung ein Universally Unique Identifier zugewiesen, den es mit ins Grab nimmt. Da es nicht geändert werden kann, ist dies der ideale Weg, um Dateisysteme zum Mounten auszuwählen, insbesondere für wichtige. Nehmen wir an, Ihre /home-Partition befindet sich auf einer zweiten Festplatte und Sie verschieben sie am Ende auf eine externe Festplatte. fstab findet diese Partition trotzdem und hängt sie korrekt ein, wodurch ein fehlgeschlagener Start vermieden wird. Wenn Sie auf die alte Methode der Verwendung von Gerätekennungen zur Auswahl von Partitionen (z. B. /dev/sda1) umsteigen (oder damit stecken bleiben), verschwindet dieser Vorteil, da Festplatten und Partitionen von ihren Controllern gezählt werden und sich daher ändern können.
Bearbeiten: Die Verwendung von UUIDs in Ihrer fstab-Datei ist zwar für die meisten Heimanwender praktisch, hat jedoch einige große Einschränkungen. Dies funktioniert nicht, wenn Dinge wie „zusammengebaute“ oder „netzwerkbasierte“ Geräte verwendet werden. Wenn Sie eher ein fortgeschrittener Benutzer sind oder in Zukunft Dinge wie Software-RAID verwenden möchten, sollten Sie besser keine UUIDs verwenden.
Der nächste Abschnitt von fstab wird, wie alle folgenden, entweder durch ein Leerzeichen oder einen Tabulator oder eine Kombination davon getrennt. Hier finden Sie den Einhängepunkt. Wie Sie sehen können, habe ich einen Root-Mount-Punkt (/), einen Swap und zwei, die ich manuell für meine freigegebenen Netzwerkspeicherlaufwerke hinzugefügt habe. Wenn Sie fstab einen Eintrag hinzufügen, müssen Sie den Einhängepunkt manuell erstellen, bevor Sie Ihren Computer neu starten (und die Änderungen wirksam werden).
Als nächstes folgt der Abschnitt, der den Typ des Dateisystems auf der Partition identifiziert. Viele, wie ext2/3/4, ReiserFS, jFS usw. werden von Linux nativ gelesen. Auf Ihrem speziellen System müssen möglicherweise noch bestimmte Pakete installiert sein, um sie lesen und darauf schreiben zu können. Das perfekte Beispiel sind meine NTFS-Partitionen; Sie können sehen, dass ich den ntfs-3g-Treiber verwende, um auf sie zuzugreifen.
Das gruseligere Zeug
Die nächsten paar Abschnitte sind das, was Neuankömmlinge normalerweise abschreckt, aber sie sind wirklich nicht so kompliziert. Es gibt eine große Auswahl an Optionen, aber es gibt eine Handvoll sehr gängiger Optionen. Werfen wir einen Blick auf sie. (Die Standardoption ist zuerst, gefolgt von Alternativen, aber da Linux-Distributionen sehr unterschiedlich sein können, kann Ihre Laufleistung variieren.)
- auto/noauto: Geben Sie an, ob die Partition beim Booten automatisch gemountet werden soll. Sie können das Mounten bestimmter Partitionen beim Booten blockieren, indem Sie „noauto“ verwenden.
- exec/noexec: Gibt an, ob die Partition Binärdateien ausführen kann. Wenn Sie eine Scratch-Partition haben, auf der Sie kompilieren, wäre dies nützlich, oder vielleicht, wenn Sie /home auf einem separaten Dateisystem haben. Wenn Sie Bedenken hinsichtlich der Sicherheit haben, ändern Sie dies in „noexec“.
- ro/rw: „ro“ ist schreibgeschützt und „rw“ ist schreibgeschützt. Wenn Sie als Benutzer und nicht als Root in ein Dateisystem schreiben wollen, müssen Sie „rw“ angeben.
- sync/async: Das ist interessant. „sync“ erzwingt das Schreiben sofort nach Ausführung des Befehls, was ideal für Disketten (was für ein Computerfreak sind Sie?) und USB-Laufwerke ist, aber für interne Festplatten nicht unbedingt erforderlich ist. Was „async“ bewirkt, ist, dass der Befehl über einen verstrichenen Zeitraum ausgeführt werden kann, vielleicht wenn die Benutzeraktivität nachlässt und dergleichen. Haben Sie jemals eine Nachricht erhalten, in der Sie gefragt werden: „Warten Sie, während Änderungen auf das Laufwerk geschrieben werden?“ Dies ist normalerweise der Grund.
- nouser/user: Dies erlaubt dem Benutzer Mount- und Unmount-Privilegien zu haben. Ein wichtiger Hinweis ist, dass „user“ automatisch „noexec“ impliziert. Wenn Sie also Binärdateien ausführen und trotzdem als Benutzer mounten müssen, achten Sie darauf, explizit „exec“ als Option zu verwenden.
Diese Optionen werden durch ein Komma und keine Leerzeichen getrennt und können in beliebiger Reihenfolge angegeben werden. Wenn Sie sich bezüglich der Standardeinstellungen nicht sicher sind, können Sie Ihre Optionen ausdrücklich angeben. Dinge, die von temporären Orten (wie USB) gemountet werden, folgen diesem grundlegenden Muster nicht, es sei denn, Sie haben Einträge für sie (per UUID) in fstab erstellt. Es ist praktisch, wenn Sie möchten, dass eine externe Festplatte immer auf eine bestimmte Weise gemountet wird, da normale USB-Sticks und dergleichen nicht betroffen sind.

Sie können sehen, dass für meine beiden Speicherlaufwerke Benutzer-Mounting-Privilegien aktiviert sind, der Lese-/Schreibzugriff aktiviert ist und das automatische Mounten aktiviert ist. Ich kompiliere nicht viel Software, aber wenn ich das tue, füge ich die Option „exec“ am Ende der Liste hinzu.
Dumping und Fscking
Die nächste Option ist ein binärer Wert („0“ für falsch und „1“ für wahr) für „Dumping“. Dies ist eine ziemlich veraltete Sicherungsmethode für Fälle, in denen das System ausgefallen ist. Diese sollten Sie auf „0“ belassen.
Die letzte Option ist ein numerischer Wert für „bestanden“. Dies teilt dem System die Reihenfolge mit, in der es fsck (sprechen Sie das aus, wie Sie möchten) oder eine Dateisystemprüfung durchführen soll. Wenn eine Festplatte die Option „0“ hat, wird sie übersprungen, wie meine NTFS-formatierten Speicherlaufwerke. Das Root-Dateisystem sollte immer „1“ sein und andere Dateisysteme können danach gehen. Dies funktioniert am besten für Journaling-Dateisysteme wie ext3/4 und ReiserFS. Ältere Dateisysteme wie FAT16/32 und ext2 können eine Weile dauern, daher ist es besser, ihr Fscking auszuschalten und es regelmäßig selbst zu tun.
Jetzt, da Sie wissen, was Sie tun, können Sie mit automatischem Mounten und dergleichen verrückt werden. Es ist sehr praktisch, wenn Sie eine Menge Partitionen verwalten müssen. Denken Sie immer daran, ein Backup zu erstellen, falls etwas schief geht, aber haben Sie Spaß und hinterlassen Sie Ihre Erfahrungen in den Kommentaren!
Linux-Befehle | ||
Dateien | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · konvertieren · rclone · shred · srm | |
Prozesse | alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · history · at · batch · free · which · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · yes · kill · sleep · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg | |
Vernetzung | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw |
RELATED: Beste Linux-Laptops für Entwickler und Enthusiasten