Bearbeiten und Verstehen von / etc / fstab - 1.1
Es gibt eine Datei namens /etc/fstab
in Ihrem Linux-System. Erfahren Sie, was der Inhalt bedeutet und wie er in Verbindung mit dem verwendet wird mount
Befehl. Wenn Sie lernen, das zu verstehen fstab
Datei können Sie den Inhalt auch selbst bearbeiten.
Ich gehe davon aus, dass Sie bereits wissen, wie Sie Dateisysteme und Partitionen mit dem mount
Befehl. Wenn Sie dies nicht tun, empfehle ich, die Mounting-Datei zu lesen, bevor Sie diese lesen.
Was ist fstab und warum ist es nützlich?
fstab
ist eine Konfigurationsdatei, die Informationen zu allen Partitionen und Speichergeräten in Ihrem Computer enthält. Die Datei befindet sich unter /etc
Der vollständige Pfad zu dieser Datei lautet also /etc/fstab
.
/etc/fstab
enthält Informationen darüber, wo und wie Ihre Partitionen und Speichergeräte bereitgestellt werden sollen. Wenn Sie unter Linux nicht auf Ihre Windows-Partition zugreifen können, Ihre CD nicht mounten oder als normaler Benutzer auf Ihre Diskette schreiben können oder Probleme mit Ihrer CD-RW haben, haben Sie wahrscheinlich eine falsche Konfiguration /etc/fstab
Datei. So können Sie Ihre Montageprobleme normalerweise beheben, indem Sie Ihr bearbeiten fstab
Datei.
/etc/fstab
ist nur eine reine Textdatei, sodass Sie sie mit jedem vertrauten Texteditor öffnen und bearbeiten können. Beachten Sie jedoch, dass Sie vor dem Bearbeiten über die Root-Berechtigungen verfügen müssen fstab
. Um die Datei bearbeiten zu können, müssen Sie sich entweder als root anmelden oder die su
Befehl, root zu werden.
< Überblick über die Datei >
Natürlich hat jeder etwas anderes /etc/fstab
Datei, da die Partitionen, Geräte und ihre Eigenschaften auf verschiedenen Systemen unterschiedlich sind. Aber die Grundstruktur von fstab
ist immer das gleiche. Hier ist ein Beispiel für den Inhalt von /etc/fstab
:
/ dev / hda2 | / | ext2 | defaults | 1 1 |
/ dev / hdb1 | / Home | ext2 | defaults | 1 2 |
/ dev / cdrom | / media / cdrom | Auto | ro, noauto, benutzer, exec | 0 0 |
/ dev / fd0 | / Medien / Diskette | Auto | rw, noauto, benutzer, sync | 0 0 |
proc | / proc | proc | defaults | 0 0 |
/ dev / hda1 | tauschen | tauschen | pri = 42 | 0 0 |
Was bedeutet all dieser Kauderwelsch? Wie Sie sehen, enthält jede Zeile (oder Zeile) die Informationen eines Geräts oder einer Partition. Die erste Spalte enthält den Gerätenamen, die zweite den Einhängepunkt, den dritten den Dateisystemtyp, die vierte die Einhängeoptionen, die fünfte Speicherauszugsoption (eine Zahl) und die sechste (andere Zahl) Dateisystemprüfoptionen. Schauen wir uns dieses Zeug genauer an.
< 1st- und 2nd-Spalten: Gerät und Standard-Einhängepunkt >
Die erste und die zweite Spalte sollten ziemlich unkompliziert sein. Sie erzählen dem mount
befehle genau dasselbe U erzählen mount
Wenn Sie Sachen manuell einhängen: Was ist das Gerät oder die Partition und was ist der Einhängepunkt. Der für ein Gerät angegebene Mountpunkt in /etc/fstab
ist der Standard-Einhängepunkt. Dies ist das Verzeichnis, in dem das Gerät bereitgestellt wird, wenn Sie beim Bereitstellen des Geräts keinen anderen Bereitstellungspunkt angeben.
Wie Sie bereits aus dem Mounting tuXfile gelernt haben, erstellen die meisten Linux-Distributionen spezielle Verzeichnisse für Mountpunkte. Die meisten Distributionen erstellen sie unter /mnt
, aber einige (zumindest SuSE) unter /media
. Wie Sie wahrscheinlich beim Betrachten des Beispiels bemerkt haben fstab
Ich verwende die Einhängepunkte von SuSE als Beispiel.
Was bedeutet das alles? Wenn ich den folgenden Befehl eingebe:
$ mount /dev/fd0
… Wird meine Diskette eingelegt /media/floppy
, weil dies der Standard-Mountpunkt ist, der in angegeben ist /etc/fstab
. Wenn es keinen Eintrag für gibt /dev/fd0
in meinem fstab
wenn ich den Befehl oben ausgeben, mount
wird sehr verwirrt, weil es nicht weiß, wo die Diskette montiert werden soll.
Sie können die Standard-Einhängepunkte in ändern /etc/fstab
Wenn Sie mit den Standardeinstellungen Ihrer Distribution nicht zufrieden sind. Stellen Sie einfach sicher, dass der Einhängepunkt ein Verzeichnis ist, das bereits auf Ihrem System vorhanden ist. Wenn nicht, erstellen Sie es einfach.
Einige Partitionen und Geräte werden auch automatisch geladen, wenn Ihr Linux-System hochfährt. Schauen Sie sich zum Beispiel das Beispiel an fstab
über. Es gibt Linien, die so aussehen:
/dev/hda2 / ext2 defaults 1 1
/dev/hdb1 /home ext2 defaults 1 2
Wie Sie gelernt haben, bedeuten diese Zeilen das /dev/hda2
wird an / und montiert /dev/hdb1
zu /home
. Dies geschieht automatisch, wenn Ihr Linux-System hochfährt. Andernfalls wäre es schwierig, Ihr cooles Linux-System zu verwenden, da sich alle von Ihnen verwendeten Programme in / befinden und Sie sie nicht ausführen könnten, wenn / wurde nicht montiert! Aber woher weiß das System, wo Sie mounten möchten? /dev/hda2
und /dev/hdb1
? Durch den Blick auf die /etc/fstab
Datei natürlich.
< 3rd-Spalte: Dateisystemtyp >
Die dritte Spalte in /etc/fstab
Gibt den Dateisystemtyp des Geräts oder der Partition an. Es werden viele verschiedene Dateisysteme unterstützt, aber wir werden uns nur die gängigsten ansehen.
ext2 und ext3 Sehr wahrscheinlich sind Ihre Linux-Partitionen Ext3. Ext2 war früher das Standard-Dateisystem für Linux, aber heutzutage sind Ext3 und ReiserFS normalerweise die Standard-Dateisysteme für fast jede neue Linux-Distribution. Ext3 ist ein neuerer Dateisystemtyp, der sich von Ext2 darin unterscheidet protokolliertDas heißt, wenn Sie den Computer ausschalten, ohne ihn ordnungsgemäß herunterzufahren, sollten Sie keine Daten verlieren und Ihr System sollte beim nächsten Start keine Zeit damit verbringen, Dateisystemprüfungen durchzuführen.
Reiserfs Ihre Linux-Partitionen können sehr gut als ReiserFS formatiert sein. ReiserFS ist wie Ext3 ein Journal-Dateisystem, aber viel weiter fortgeschritten als Ext3. Viele Linux-Distributionen (einschließlich SuSE) verwenden ReiserFS als Standarddateisystem für Linux-Partitionen.
tauschen Der Name des Dateisystems ist selbsterklärend. Der Dateisystemtyp "Swap" wird in Ihren Swap-Partitionen verwendet.
vfat und ntfs Ihr USB-Stick ist höchstwahrscheinlich als Vfat (besser bekannt als FAT32) formatiert. Ihre Windows-Partitionen sind wahrscheinlich entweder Vfat oder NTFS. Die 9x-Serie (95, 98, ME) verwendet alle Vfat, und die NT-Serie (NT, 2000, XP, Vista, 7) verwendet NTFS, kann jedoch auch als Vfat formatiert sein.
Auto Nein, dies ist kein Dateisystemtyp. 🙂 Die Option „auto“ bedeutet einfach, dass der Dateisystemtyp automatisch erkannt wird. Wenn Sie sich das Beispiel ansehen fstab
Oben sehen Sie, dass sowohl die Diskette als auch die CD-ROM "auto" als Dateisystemtyp haben. Warum? Ihr Dateisystemtyp kann variieren. Eine Diskette ist möglicherweise für Windows und die andere für Linux Ext2 formatiert. Aus diesem Grund ist es ratsam, das System den Dateityp des Dateityps wie Disketten und CD-ROMs automatisch erkennen zu lassen.
< 4th-Spalte: Mount-Optionen >
Die vierte Spalte in fstab
listet alle Mount-Optionen für das Gerät oder die Partition auf. Dies ist auch die verwirrendste Spalte in der fstab
Datei, aber zu wissen, was einige der häufigsten Optionen bedeuten, erspart Ihnen große Kopfschmerzen. Ja, es gibt viele Optionen, aber ich werde mir nur die am häufigsten verwendeten ansehen. Weitere Informationen finden Sie in der Manpage von mount
.
auto und noauto Mit der auto
Option wird das Gerät automatisch gemountet (beim Booten, genau wie ich es Ihnen schon früher gesagt habe) oder wenn Sie das Gerät ausgeben mount -a
Befehl). auto
ist die Standardoption. Wenn Sie nicht möchten, dass das Gerät automatisch gemountet wird, verwenden Sie die noauto
Option in /etc/fstab
. Mit noauto
Das Gerät kann nur explizit montiert werden.
Benutzer und Nouser Dies sind sehr nützliche Optionen. Das user
Mit dieser Option können normale Benutzer das Gerät einbinden nouser
lässt nur das Stammverzeichnis das Gerät einhängen. nouser
ist die Standardeinstellung, die für neue Linux-Benutzer eine Hauptursache für Kopfschmerzen darstellt. Wenn Sie Ihre CD-ROM, Diskette, Windows-Partition oder etwas anderes als normaler Benutzer nicht bereitstellen können, fügen Sie die hinzu user
Option in /etc/fstab
.
exec und noexec exec
können Sie Binärdateien ausführen, die sich auf dieser Partition befinden, während noexec
lässt dich das nicht tun. noexec
Dies kann nützlich sein für eine Partition, die Binärdateien enthält, die Sie nicht auf Ihrem System ausführen möchten oder die nicht einmal auf Ihrem System ausgeführt werden können. Dies kann bei einer Windows-Partition der Fall sein.
exec
ist die Standardoption, was eine gute Sache ist. Stellen Sie sich vor, was passieren würde, wenn Sie versehentlich den noexec
Option mit Ihrer Linux-Root-Partition…
ro Hängen Sie das Dateisystem schreibgeschützt ein.
rw Hängen Sie das Lese- und Schreibsystem des Dateisystems ein. Auch hier kann die Verwendung dieser Option die Kopfschmerzen vieler neuer Linux-Benutzer heilen, die sich die Haare abreißen, weil sie nicht auf ihre Disketten, Windows-Partitionen oder etwas anderes schreiben können.
synchronisieren und asynchron Wie die Eingabe und Ausgabe in das Dateisystem erfolgen soll. sync
bedeutet, dass es synchron gemacht wird. Wenn Sie sich das Beispiel ansehen fstab
werden Sie feststellen, dass dies die Option ist, die mit der Diskette verwendet wird. Im Klartext bedeutet dies, dass, wenn Sie beispielsweise eine Datei auf die Diskette kopieren, die Änderungen physisch auf die Diskette geschrieben werden Gleichzeitig Sie geben den Kopierbefehl aus.
Wenn Sie jedoch die haben async
Option in /etc/fstab
, Eingabe und Ausgabe erfolgen asynchron. Wenn Sie nun eine Datei auf die Diskette kopieren, werden die Änderungen möglicherweise lange Zeit physisch darauf geschrieben nachdem Ausgabe des Befehls. Dies ist nicht schlecht und kann manchmal günstig sein, kann jedoch einige schlimme Unfälle verursachen: Wenn Sie die Diskette nur entfernen, ohne sie zuvor auszuhängen, ist die kopierte Datei möglicherweise noch nicht physisch auf der Diskette vorhanden!
async
ist die Standardeinstellung. Es kann jedoch sinnvoll sein zu verwenden sync
mit der Diskette, insbesondere wenn Sie an die Vorgehensweise in Windows gewöhnt sind und dazu neigen, Disketten zu entfernen, bevor Sie sie zuerst aushängen.
defaults Verwendet die Standardoptionen "rw", "suid", "dev", "exec", "auto", "nouser" und "async".
< 5th- und 6th-Spalten: Dump- und fsck-Optionen >
Dump und äh, was Optionen? Nun, dump ist ein Sicherungsdienstprogramm und fsck ist ein Dienstprogramm zur Überprüfung des Dateisystems. Ich werde sie hier nicht ausführlich diskutieren (beide würden ihre eigene TuX-Datei benötigen), aber ich werde sie erwähnen, weil Sie sonst den Rest des Tages damit verbringen würden, sich zu fragen, was diese Dinge auf Gottes grüner Erde bedeuten.
Die 5th-Spalte in /etc/fstab
ist die Dump-Option. Dump überprüft es und verwendet die Nummer, um zu entscheiden, ob ein Dateisystem gesichert werden soll. Wenn es Null ist, ignoriert dump dieses Dateisystem. Wenn Sie sich das Beispiel ansehen fstab
werden Sie feststellen, dass die 5. Spalte in den meisten Fällen Null ist.
Die 6. Spalte ist eine fsck-Option. fsck überprüft die Nummer in der 6. Spalte, um festzustellen, in welcher Reihenfolge die Dateisysteme überprüft werden sollen. Wenn es Null ist, überprüft fsck das Dateisystem nicht.
< Beispieleinträge in / etc / fstab >
Als Beispiel sehen wir uns einige an fstab
Einträge, die für neue Linux-Benutzer eine Quelle endloser Frustration waren: Diskette und CD-ROM (obwohl Disketten heutzutage nicht mehr so wichtig sind).
/dev/fd0 /media/floppy auto rw,noauto,user,sync 0 0
Diese Zeile bedeutet, dass die Diskette eingehängt ist /media/floppy
Standardmäßig wird der Dateisystemtyp automatisch erkannt. Dies ist nützlich, da der Disketten-Typ möglicherweise abschreckend ist. Beachten Sie besonders die rw und BenutzerOptionen: Sie müssen vorhanden sein, wenn Sie als normaler Benutzer auf die Diskette mounten und schreiben können. Wenn Sie Probleme damit haben, überprüfen Sie Ihre fstab
Datei, um zu sehen, ob diese Optionen vorhanden sind. Beachten Sie auch die synchronisieren Möglichkeit. Es kann genauso gut asynchron sein, aber es ist aus Gründen, die etwas früher besprochen wurden, synchron.
/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0
Beachten Sie wieder die Benutzer Option, mit der Sie die CD als normaler Benutzer mounten können. Die CD-ROM verfügt über die Option ro, da es nicht sinnvoll ist, eine CD-ROM mit Lese- und Schreibzugriff zu mounten, da Sie ohnehin nicht darauf schreiben können. Beachten Sie auch die exec Möglichkeit. Dies ist besonders nützlich, wenn Sie etwas von Ihrer CD ausführen möchten.
Beachten Sie auch, dass die noauto Die Option wird mit der Diskette und der CD-ROM verwendet. Dies bedeutet, dass sie beim Hochfahren Ihres Linux-Systems nicht automatisch gemountet werden. Dies ist nützlich für Wechselmedien, da beim Hochfahren des Systems manchmal keine Diskette oder CD-ROM vorhanden ist. Es gibt also keinen Grund, etwas zu mounten, das noch nicht einmal vorhanden ist.