/etc/fstab
Zweck
Die Datei /etc/fstab (file system table) legt fest, welche Dateisysteme beim Booten automatisch eingehängt werden, an welchem Mountpunkt und mit welchen Optionen. Sie ist außerdem die Vorlage für unvollständige mount-Aufrufe: steht ein Gerät oder Mountpunkt in der fstab, genügt mount /mnt/docs und der Rest wird ergänzt.
Aufbau
Jede Zeile beschreibt ein Dateisystem mit sechs durch Leerzeichen getrennten Feldern. Kommentare beginnen mit #.
# Gerät Mountpunkt Typ Optionen Dump Check UUID=581cc4b6-... / ext4 errors=remount-ro 0 1 UUID=5b8ed1c7-... none swap sw 0 0 /dev/sdb1 /mnt/docs ext4 defaults 0 2 /dev/sr0 /media/cdrom udf,iso9660 user,noauto,exec 0 0 192.168.240.1:/export/share /export nfs defaults 0 0
| Feld | Name | Bedeutung |
|---|---|---|
| 1 | Gerät | Gerätedatei, UUID, Label oder Netzwerkfreigabe. UUID ist am robustesten, weil sie sich beim Umstecken nicht ändert – Gerätenamen wie /dev/sdb1 können wandern.
|
| 2 | Mountpunkt | Verzeichnis, auf das eingehängt wird. Bei Swap steht hier none oder swap.
|
| 3 | Typ | Dateisystemtyp: ext4, xfs, btrfs, swap, nfs. auto lässt den Kernel raten.
|
| 4 | Optionen | Kommagetrennte Mount-Optionen, dieselben wie bei mount -o (siehe Linux mount und umount).
|
| 5 | Dump | Markierung für das alte Backup-Programm dump. Heute praktisch bedeutungslos – steht fast immer auf 0.
|
| 6 | Check | Reihenfolge der fsck-Prüfung beim Booten. |
Das Check-Feld richtig setzen
1– nur für das Root-Dateisystem. Es wird zuerst und allein geprüft.2– für alle anderen ext-Dateisysteme. Sie werden nach Root und untereinander parallel geprüft.0– keine Prüfung beim Booten. Für btrfs und xfs immer 0, denn diese bringen keinfsckbeim Start mit; auch Swap und Netzlaufwerke stehen auf 0.
Die UUID herausfinden
Der Gerätename in Feld 1 sollte eine UUID sein. Beide Werkzeuge zeigen sie:
- blkid /dev/sdb1
- lsblk -f
Nach dem Ändern: testen, nicht raten
Ein fehlerhafter fstab-Eintrag kann das Booten verhindern – das System bleibt dann im Notfall-Prompt hängen. Deshalb vor dem Neustart prüfen, ob alle Einträge sauber einhängen:
- mount -a
Kommt keine Fehlermeldung, sind die Einträge in Ordnung. Erst dann neu starten.
Auf systemd-Systemen (Debian 12, Rocky) liest der Automounter die Datei nicht sofort neu. Nach einer Änderung einlesen lassen:
- systemctl daemon-reload
Einen Eintrag entschärfen
Soll ein Dateisystem vorerst nicht automatisch gemountet werden, aber der Eintrag bleiben, hilft die Option noauto in Feld 4. Dann wird es beim Booten übersprungen und lässt sich später von Hand über den Mountpunkt einhängen.
/dev/sdb3 /mnt/video ext4 noauto 0 0
Aufgaben
Vorbereitung: eine leere Datenplatte /dev/sdc. /dev/sda bleibt unberührt.
- Erstellen Sie auf /dev/sdc vier Partitionen (mit fdisk oder gdisk).
- Formatieren Sie die vier Partitionen mit ext4 in Standardeinstellungen.
- Legen Sie die Mountpunkte /mnt/media, /mnt/misc, /mnt/video und /mnt/docs an.
- Ermitteln Sie die UUIDs der vier Partitionen.
- Tragen Sie die 1. Partition (media) so ein, dass kein Ausführen erlaubt ist und ACLs aktiv sind.
- Tragen Sie die 2. Partition (misc) so ein: kein SUID, kein dev, nur lesend.
- Tragen Sie die 3. Partition (video) so ein, dass sie nicht automatisch gemountet wird.
- Tragen Sie die 4. Partition (docs) so ein: automatisches Mounten, normale Nutzer dürfen mounten.
- Testen Sie alle Einträge, ohne neu zu starten.
- Prüfen Sie mit findmnt, ob media wirklich noexec und misc wirklich ro gemountet ist.
Fleißaufgabe: Datei als Dateisystem (Loop)
Statt einer echten Partition lässt sich auch eine Datei als Dateisystem einhängen – über ein Loop-Gerät.
- Erstellen Sie eine leere Datei von 2 GB.
- Formatieren Sie die Datei mit ext4.
- Legen Sie den Mountpunkt /mnt/share an und tragen Sie die Datei mit der Option loop in die /etc/fstab ein.
- Testen Sie den Eintrag.