Fstab: Unterschied zwischen den Versionen
Greg (Diskussion | Beiträge) ntfs-3g |
Tuxnix (Diskussion | Beiträge) Kategorie:Konfiguration |
||
(8 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Bild:Vi_fstab.png|thumb|250px|Anzeige einer umfangreichen fstab in [[Vim]]]] | |||
In der Datei {{ic|/etc/fstab}} werden dauerhafte [[Mounten|Mounts]] definiert. Die Datei wird während der Installation von Arch Linux angelegt, und beinhaltet mindestens die Definition der Rootpartition, gemountet unter {{ic|/}}. | |||
== | == Syntax == | ||
Die Definitionen werden je Zeile angelegt, und durch Leer- oder Tabulatorzeichen in sechs Abschnitte unterteilt. Folgende Beispiele zeigen die Verwendung. Die einzelnen Abschnitte werden nachfolgend erklärt. | |||
# | # Verwendung eines Labels | ||
/ | LABEL=root / ext4 defaults 0 1 | ||
/ | |||
# Verwendung der UUID | |||
/dev/ | UUID=7399c368-7e05-424d-abf6-d3d3021d936f / ext4 defaults 0 1 | ||
# Verwendung der Gerätedatei | |||
none | /dev/sda1 / ext4 defaults 0 1 | ||
# Verwendung eines definierten Stichwortes | |||
none /proc/bus/usb usbfs defaults 0 0 | |||
# Angabe von Useraccount und Server bei Verwendung von SSHFS | |||
user@example.com: /media/server fuse.sshfs defaults 0 0 | |||
In den Beispielen wurde jeweils {{ic|defaults}} als Option verwendet, für weitere Informationen siehe [[#Optionen|Optionen]]. | |||
=== Dateisystem === | |||
Das Dateisystem ist entweder ein ''Label'', die ''UUID'', die [[Gerätedatei]], oder ein weiteres definiertes Stichwort. | |||
Die UUID | Das Label des Dateisystems kann beim Erstellen, oder nachträglich mit entsprechenden Tools gesetzt werden. Für ext-Dateisysteme (ext2/3/4) zum Beispiel ist dies {{paket|e2fsprogs|e2label}}. Die UUID wird beim Erstellen automatisch generiert, und ist über das Programm {{paket|util-linux|blkid}} abrufbar. | ||
blkid | |||
Die Gerätedatei für die jeweilige Partition kann sich unter gewissen Umständen ändern. Eine Partition, die unter {{ic|/dev/sdb1}} erreichbar ist, könnte nach einem Start zum Beispiel unter {{ic|/dev/sdc1}} verfügbar sein. Dies passiert für gewöhnlich allerdings nur, wenn man Partitionen (neu) einrichtet, alte Hardware um-, oder neue Hardware einbaut, sich die Zugriffs-Routinen ändern, oder der verbaute Controller diesbezüglich ein merkwürdiges Verhalten zeigt. | |||
Es ist immer ratsam, UUIDs oder Labels zu verwenden, weil man damit einfach „auf der sicheren Seite“ ist. | |||
=== Mountpunkt === | === Mountpunkt === | ||
Der Mountpunkt bestimmt, an welcher Stelle im Verzeichnisbaum das Dateisystem eingebunden werden soll. Hierbei stehen dem User praktisch alle Optionen offen, es hat sich aber ein gewisser Konsens basierend auf dem ''Filesystem Hierarchy Standard'' gebildet. | |||
Dateisysteme, die nur temporär eingebunden werden, werden direkt unter {{ic|/mnt}} abgelegt. Auch wenn zeitweise propagiert wurde, in {{ic|/mnt}} Unterverzeichnisse für dauerhafte Mounts zu erstellen, widerspricht das doch der länger bestehenden Verwendung direkt von {{ic|/mnt}} als temporäres Ziel für Mounts. | |||
Auch, wenn {{ic|/media}} laut FHS Unterverzeichnisse für Wechseldatenträger beinhaltet, ist dort ein dauerhaftes Mounten von zusätzlichen Festplatten immer noch besser aufgehoben, als in {{ic|/mnt}}. | |||
Darüber hinaus besteht natürlich die Möglichkeit, im eigenen home-Verzeichnis Unterverzeichnisse als Mountpunkte zu erstellen und weitere Festplatten dort zu nutzen. Gängig ist, {{ic|/}} und {{ic|/home}} als getrennte Dateisysteme zu verwenden, und entsprechend in der fstab diese beiden auch so zu definieren. | |||
=== Typ === | |||
Zum Mounten eines Dateisystems muss man dessen Typ angeben. Es besteht zudem die Möglichkeit der automatischen Erkennung. Durch die Verwendung von ''FUSE'' (zum Beispiel [[Sshfs|SSHFS]]) können weitere Optionen verfügbar werden. Hierzu ist die Dokumentation des jeweiligen FUSE-Moduls konsultieren. | |||
= | {| {{prettytable}} class="sortable" | ||
|- | |||
! Typ | |||
! Verwendung/Bezeichnung | |||
! Info | |||
|- | |||
| {{ic|auto}} | |||
| Standardwerte setzen | |||
| Automatische Erkennung des Dateisystems | |||
|- | |||
| {{ic|ext2/3/4}} | |||
| ext-Dateisysteme | |||
| Bei Verwendung von ext2, ext3, oder ext4 | |||
|- | |||
| {{ic|iso9660}} | |||
| CDs und DVDs | |||
| Dateisysteme nach ISO 9660-Level 2 und 3 | |||
|- | |||
| {{ic|udf}} | |||
| Hauptsächlich DVDs | |||
| Ablösung von ISO 9660 | |||
|- | |||
| {{ic|jfs}} | |||
| Journaled File System | |||
| Vor allem für LVM interessant | |||
|- | |||
| {{ic|nfs}} | |||
| NFS-Shares einbinden | |||
| Verwendung für das [[Network File System]] | |||
|- | |||
| {{ic|ntfs}}/{{ic|ntfs-3g}} | |||
| Microsoft NTFS | |||
| {{ic|ntfs-3g}} bietet [[Schreibzugriff mit ntfs-3g|Schreibzugriff]] | |||
|- | |||
| {{ic|reiserfs}} | |||
| Reiser FS | |||
| Für das Einbinden von Reiser FS 1 bis 3 | |||
|- | |||
| {{ic|swap}} | |||
| Swap-Partitionen | |||
| Kein direkter Dateizugriff möglich, nur Swap | |||
|- | |||
| {{ic|ramfs}} | |||
| [[Ramdisk]]s | |||
| Sicherheitshinweise im Ramdisk-Artikel beachten | |||
|- | |||
| {{ic|tmpfs}} | |||
| Ramdisks | |||
| nutzt im Gegensatz zu {{ic|ramfs}} auch den Swap-Platz | |||
|- | |||
| {{ic|vfat}} | |||
| FAT 12/16/32 | |||
| Meist auf USB-Sticks verwendet | |||
|- | |||
| {{ic|xfs}} | |||
| XFS | |||
| Häufig in NAS-Lösungen oder HDD-Recordern zu finden | |||
|- | |||
| {{ic|btrfs}} | |||
| B-tree FS | |||
| Noch in der Entwicklung/im Betastadium | |||
|} | |||
Der Typ {{ic|auto}} sollte nur bei Wechseldatenträgern zur Verwendung kommen, bei denen man nicht sicher sein kann, welches Dateisystem verwendet wird. | |||
=== Optionen === | === Optionen === | ||
Über die Optionen wird der Zugriff auf das jeweilige Dateisystem gesteuert. Mehrere Optionen werden durch Kommata ohne Leerzeichen getrennt. | |||
{| {{prettytable}} class="sortable" | |||
|- | |||
! Option | |||
! Gegenteil | |||
! Auswirkung | |||
|- | |||
| {{ic|defaults}} | |||
| n/a | |||
| Setzt {{ic|rw}}, {{ic|suid}}, {{ic|dev}}, {{ic|exec}}, {{ic|auto}}, {{ic|nouser}} und {{ic|async}} | |||
|- | |||
| {{ic|dev}} | |||
| {{ic|nodev}} | |||
| Gerätedateien auf dem Dateisystem werden interpretiert | |||
|- | |||
| {{ic|exec}} | |||
| {{ic|noexec}} | |||
| Das Ausführen von Dateien wird erlaubt | |||
|- | |||
| {{ic|gid}} | |||
| n/a | |||
| Definition der Gruppen-ID mittels {{ic|1=gid=users}} | |||
|- | |||
| {{ic|uid}} | |||
| n/a | |||
| Definition der User-ID mittels {{ic|1=uid=benutzername}} | |||
|- | |||
| {{ic|suid}} | |||
| {{ic|nosuid}} | |||
| Das SUID-Bit wird berücksichtigt | |||
|- | |||
| {{ic|auto}} | |||
| {{ic|noauto}} | |||
| Der Datenträger wird automatisch beim Booten eingehängt (siehe unten) | |||
|- | |||
| {{ic|ro}} | |||
| {{ic|rw}} | |||
| Nur Lesezugriff möglich (Gegenteil: Lese- und Schreibzugriff möglich) | |||
|- | |||
| {{ic|sw}} | |||
| n/a | |||
| Verwendung als [[Swap]]-Dateisystem | |||
|- | |||
| {{ic|sync}} | |||
| {{ic|async}} | |||
| Es wird alles direkt auf den Datenträger geschrieben, anstatt den Cache zu nutzen. {{ic|sync}} ist bei USB-Datenträgern sinnvoll, wohingegen {{ic|async}} vor allem bei hohem Datenaufkommen schneller ist. | |||
|- | |||
| {{ic|user}} | |||
| {{ic|nouser}} | |||
| Jeder Benutzer darf das Gerät einhängen. Aushängen darf nur der Benutzer, der das Gerät gemountet hat | |||
|- | |||
| {{ic|users}} | |||
| n/a | |||
| Jeder Benutzer darf das Gerät einhängen und aushängen | |||
|- | |||
| {{ic|1=user,rw,umask=000}} | |||
| n/a | |||
| Spezialfall bei FAT-Dateisystemen. Jeder Benutzer darf auf der Partition lesen und schreiben | |||
|- | |||
| {{ic|noatime}} | |||
| {{ic|atime}} | |||
| Keine Zugriffszeiten für Dateien und Verzeichnisse ({{ic|nodiratime}} wird durch {{ic|noatime}} impliziert und muss nicht zusätzlich gesetzt werden) in der Inodetabelle speichern. Dies reduziert die Datenträger-Schreibzugriffe und wird für SSDs empfohlen sowie, falls Snapshots genutzt werden sollen, für Btrfs. | |||
|- | |||
| {{ic|nodiratime}} | |||
| {{ic|diratime}} | |||
| Keine Zugriffszeiten für Verzeichnisse in der Inodetabelle speichern. Dies reduziert die Datenträgerzugriffe. | |||
|- | |||
| {{ic|1=errors=remount-ro}} | |||
| n/a | |||
| Bei auftretenden Fehler im Betrieb wird das Dateisystem im Nur-Lese-Modus neu eingebunden. | |||
|- | |||
| {{ic|noauto,x-systemd.automount}} | |||
| n/a | |||
| Automatisches Einbinden durch systemd beim ersten Zugriff. Optimal bei Dateisystemen, die das Booten sehr verzögern können (SSHFS, NFS, etc.) | |||
|- | |||
| {{ic|nofail}} | |||
| n/a | |||
| Gibt keine Fehlermeldung aus und bootet auch dann wenn das Laufwerk nicht angeschlossen ist. | |||
|- | |||
| {{ic|discard}} | |||
| n/a | |||
| Bei Verwendung von SSDs um [[:en:Solid_State_Drives#TRIM|TRIM]] zu verwenden | |||
|} | |||
=== Dump === | |||
Die Dump-Anweisung steht heutzutage üblicher Weise auf 0 und wurde ursprünglich zu Backup-Zwecken verwendet. Es mag vereinzelt noch Anwendungsbereiche geben, in denen mittels {{ic|dump}} Backups erstellt werden, auf aktuellen Systemen gibt es allerdings zuverlässigere und schnellere Datensicherungsmethoden, so dass dieser Wert auf 0 belassen werden sollte. | |||
=== Pass === | |||
Die Pass-Anweisung wird vom Dateisystem-Test ausgewertet und definiert, in welcher Reihenfolge die Dateisysteme geprüft werden sollen. 0 = Keine Überprüfung, 1 = wird zuerst überprüft, 2 = wird überprüft nachdem alle mit 1 markierten Dateisysteme überprüft wurden. | |||
Wenn man mehrere Datenträger verwendet, und diese alle überprüfen lassen möchte, kann man bei all diesen Datenträgern Pass auf 1 stellen. Diese Datenträger werden dann parallel überprüft. Dies spart einiges an Zeit. Die häufig anzutreffende Empfehlung „Systempartition auf 1, alles andere auf 2“ stammt noch aus der Zeit, als nach einem fsck der Systempartition ein Reboot nötig war, und gilt inzwischen als überholt. | |||
Wenn mehrere Dateisysteme auf demselben Datenträger mit 1 markiert wurden, werden diese nacheinander geordnet nach ihrer Position auf dem Datenträger abgearbeitet. Hier empfiehlt sich rein aus logischen Gründen, z.B zuerst das root-Dateisystem ({{ic|/}}) überprüfen zu lassen, und dann das home-Dateisystem, um sicher zu sein, dass {{ic|/home}} nur dann überprüft wird, wenn {{ic|/}} in Ordnung ist. | |||
== | == Siehe auch == | ||
* [[Mounten]] – Mehr zum Einbinden von Dateisystemen | |||
* [[Network File System]] – NFS-Server und -Client einrichten | |||
* [[ISO-Image mounten]] – Einbinden von Dateisystemabbildern | |||
* [[Schreibzugriff mit ntfs-3g]] – Vollzugriff auf NTFS ohne Windows | |||
* [[Laufwerk als User mounten]] – Mit [[sudo]] als User mounten | |||
== Weblinks == | |||
* | * [http://www.pathname.com/fhs/ Der Filesystem Hierarchy Standard im Original] {{sprache|en}} | ||
* | * [http://www.ibm.com/developerworks/linux/library/l-linux-filesystem/ „Anatomy of the Linux file system“] {{sprache|en}} | ||
[[Kategorie:Konfiguration]] | [[Kategorie:Konfiguration]] | ||
[[Kategorie:Grundlagen]] | |||
[[en:fstab]] | [[en:fstab]] |
Aktuelle Version vom 28. März 2021, 19:03 Uhr
In der Datei /etc/fstab
werden dauerhafte Mounts definiert. Die Datei wird während der Installation von Arch Linux angelegt, und beinhaltet mindestens die Definition der Rootpartition, gemountet unter /
.
Syntax
Die Definitionen werden je Zeile angelegt, und durch Leer- oder Tabulatorzeichen in sechs Abschnitte unterteilt. Folgende Beispiele zeigen die Verwendung. Die einzelnen Abschnitte werden nachfolgend erklärt.
# Verwendung eines Labels LABEL=root / ext4 defaults 0 1 # Verwendung der UUID UUID=7399c368-7e05-424d-abf6-d3d3021d936f / ext4 defaults 0 1 # Verwendung der Gerätedatei /dev/sda1 / ext4 defaults 0 1 # Verwendung eines definierten Stichwortes none /proc/bus/usb usbfs defaults 0 0 # Angabe von Useraccount und Server bei Verwendung von SSHFS user@example.com: /media/server fuse.sshfs defaults 0 0
In den Beispielen wurde jeweils defaults
als Option verwendet, für weitere Informationen siehe Optionen.
Dateisystem
Das Dateisystem ist entweder ein Label, die UUID, die Gerätedatei, oder ein weiteres definiertes Stichwort.
Das Label des Dateisystems kann beim Erstellen, oder nachträglich mit entsprechenden Tools gesetzt werden. Für ext-Dateisysteme (ext2/3/4) zum Beispiel ist dies e2label. Die UUID wird beim Erstellen automatisch generiert, und ist über das Programm blkid abrufbar.
Die Gerätedatei für die jeweilige Partition kann sich unter gewissen Umständen ändern. Eine Partition, die unter /dev/sdb1
erreichbar ist, könnte nach einem Start zum Beispiel unter /dev/sdc1
verfügbar sein. Dies passiert für gewöhnlich allerdings nur, wenn man Partitionen (neu) einrichtet, alte Hardware um-, oder neue Hardware einbaut, sich die Zugriffs-Routinen ändern, oder der verbaute Controller diesbezüglich ein merkwürdiges Verhalten zeigt.
Es ist immer ratsam, UUIDs oder Labels zu verwenden, weil man damit einfach „auf der sicheren Seite“ ist.
Mountpunkt
Der Mountpunkt bestimmt, an welcher Stelle im Verzeichnisbaum das Dateisystem eingebunden werden soll. Hierbei stehen dem User praktisch alle Optionen offen, es hat sich aber ein gewisser Konsens basierend auf dem Filesystem Hierarchy Standard gebildet.
Dateisysteme, die nur temporär eingebunden werden, werden direkt unter /mnt
abgelegt. Auch wenn zeitweise propagiert wurde, in /mnt
Unterverzeichnisse für dauerhafte Mounts zu erstellen, widerspricht das doch der länger bestehenden Verwendung direkt von /mnt
als temporäres Ziel für Mounts.
Auch, wenn /media
laut FHS Unterverzeichnisse für Wechseldatenträger beinhaltet, ist dort ein dauerhaftes Mounten von zusätzlichen Festplatten immer noch besser aufgehoben, als in /mnt
.
Darüber hinaus besteht natürlich die Möglichkeit, im eigenen home-Verzeichnis Unterverzeichnisse als Mountpunkte zu erstellen und weitere Festplatten dort zu nutzen. Gängig ist, /
und /home
als getrennte Dateisysteme zu verwenden, und entsprechend in der fstab diese beiden auch so zu definieren.
Typ
Zum Mounten eines Dateisystems muss man dessen Typ angeben. Es besteht zudem die Möglichkeit der automatischen Erkennung. Durch die Verwendung von FUSE (zum Beispiel SSHFS) können weitere Optionen verfügbar werden. Hierzu ist die Dokumentation des jeweiligen FUSE-Moduls konsultieren.
Typ | Verwendung/Bezeichnung | Info |
---|---|---|
auto
|
Standardwerte setzen | Automatische Erkennung des Dateisystems |
ext2/3/4
|
ext-Dateisysteme | Bei Verwendung von ext2, ext3, oder ext4 |
iso9660
|
CDs und DVDs | Dateisysteme nach ISO 9660-Level 2 und 3 |
udf
|
Hauptsächlich DVDs | Ablösung von ISO 9660 |
jfs
|
Journaled File System | Vor allem für LVM interessant |
nfs
|
NFS-Shares einbinden | Verwendung für das Network File System |
ntfs /ntfs-3g
|
Microsoft NTFS | ntfs-3g bietet Schreibzugriff
|
reiserfs
|
Reiser FS | Für das Einbinden von Reiser FS 1 bis 3 |
swap
|
Swap-Partitionen | Kein direkter Dateizugriff möglich, nur Swap |
ramfs
|
Ramdisks | Sicherheitshinweise im Ramdisk-Artikel beachten |
tmpfs
|
Ramdisks | nutzt im Gegensatz zu ramfs auch den Swap-Platz
|
vfat
|
FAT 12/16/32 | Meist auf USB-Sticks verwendet |
xfs
|
XFS | Häufig in NAS-Lösungen oder HDD-Recordern zu finden |
btrfs
|
B-tree FS | Noch in der Entwicklung/im Betastadium |
Der Typ auto
sollte nur bei Wechseldatenträgern zur Verwendung kommen, bei denen man nicht sicher sein kann, welches Dateisystem verwendet wird.
Optionen
Über die Optionen wird der Zugriff auf das jeweilige Dateisystem gesteuert. Mehrere Optionen werden durch Kommata ohne Leerzeichen getrennt.
Option | Gegenteil | Auswirkung |
---|---|---|
defaults
|
n/a | Setzt rw , suid , dev , exec , auto , nouser und async
|
dev
|
nodev
|
Gerätedateien auf dem Dateisystem werden interpretiert |
exec
|
noexec
|
Das Ausführen von Dateien wird erlaubt |
gid
|
n/a | Definition der Gruppen-ID mittels gid=users
|
uid
|
n/a | Definition der User-ID mittels uid=benutzername
|
suid
|
nosuid
|
Das SUID-Bit wird berücksichtigt |
auto
|
noauto
|
Der Datenträger wird automatisch beim Booten eingehängt (siehe unten) |
ro
|
rw
|
Nur Lesezugriff möglich (Gegenteil: Lese- und Schreibzugriff möglich) |
sw
|
n/a | Verwendung als Swap-Dateisystem |
sync
|
async
|
Es wird alles direkt auf den Datenträger geschrieben, anstatt den Cache zu nutzen. sync ist bei USB-Datenträgern sinnvoll, wohingegen async vor allem bei hohem Datenaufkommen schneller ist.
|
user
|
nouser
|
Jeder Benutzer darf das Gerät einhängen. Aushängen darf nur der Benutzer, der das Gerät gemountet hat |
users
|
n/a | Jeder Benutzer darf das Gerät einhängen und aushängen |
user,rw,umask=000
|
n/a | Spezialfall bei FAT-Dateisystemen. Jeder Benutzer darf auf der Partition lesen und schreiben |
noatime
|
atime
|
Keine Zugriffszeiten für Dateien und Verzeichnisse (nodiratime wird durch noatime impliziert und muss nicht zusätzlich gesetzt werden) in der Inodetabelle speichern. Dies reduziert die Datenträger-Schreibzugriffe und wird für SSDs empfohlen sowie, falls Snapshots genutzt werden sollen, für Btrfs.
|
nodiratime
|
diratime
|
Keine Zugriffszeiten für Verzeichnisse in der Inodetabelle speichern. Dies reduziert die Datenträgerzugriffe. |
errors=remount-ro
|
n/a | Bei auftretenden Fehler im Betrieb wird das Dateisystem im Nur-Lese-Modus neu eingebunden. |
noauto,x-systemd.automount
|
n/a | Automatisches Einbinden durch systemd beim ersten Zugriff. Optimal bei Dateisystemen, die das Booten sehr verzögern können (SSHFS, NFS, etc.) |
nofail
|
n/a | Gibt keine Fehlermeldung aus und bootet auch dann wenn das Laufwerk nicht angeschlossen ist. |
discard
|
n/a | Bei Verwendung von SSDs um TRIM zu verwenden |
Dump
Die Dump-Anweisung steht heutzutage üblicher Weise auf 0 und wurde ursprünglich zu Backup-Zwecken verwendet. Es mag vereinzelt noch Anwendungsbereiche geben, in denen mittels dump
Backups erstellt werden, auf aktuellen Systemen gibt es allerdings zuverlässigere und schnellere Datensicherungsmethoden, so dass dieser Wert auf 0 belassen werden sollte.
Pass
Die Pass-Anweisung wird vom Dateisystem-Test ausgewertet und definiert, in welcher Reihenfolge die Dateisysteme geprüft werden sollen. 0 = Keine Überprüfung, 1 = wird zuerst überprüft, 2 = wird überprüft nachdem alle mit 1 markierten Dateisysteme überprüft wurden.
Wenn man mehrere Datenträger verwendet, und diese alle überprüfen lassen möchte, kann man bei all diesen Datenträgern Pass auf 1 stellen. Diese Datenträger werden dann parallel überprüft. Dies spart einiges an Zeit. Die häufig anzutreffende Empfehlung „Systempartition auf 1, alles andere auf 2“ stammt noch aus der Zeit, als nach einem fsck der Systempartition ein Reboot nötig war, und gilt inzwischen als überholt.
Wenn mehrere Dateisysteme auf demselben Datenträger mit 1 markiert wurden, werden diese nacheinander geordnet nach ihrer Position auf dem Datenträger abgearbeitet. Hier empfiehlt sich rein aus logischen Gründen, z.B zuerst das root-Dateisystem (/
) überprüfen zu lassen, und dann das home-Dateisystem, um sicher zu sein, dass /home
nur dann überprüft wird, wenn /
in Ordnung ist.
Siehe auch
- Mounten – Mehr zum Einbinden von Dateisystemen
- Network File System – NFS-Server und -Client einrichten
- ISO-Image mounten – Einbinden von Dateisystemabbildern
- Schreibzugriff mit ntfs-3g – Vollzugriff auf NTFS ohne Windows
- Laufwerk als User mounten – Mit sudo als User mounten