In der Datei /etc/fstab werden die statischen Informationen zu den Dateisystemen des jeweiligen Rechners gespeichert. Das kann aber auch Dateisysteme auf entfernten Rechnern umfassen, auf die mittels eines Netzwerkdateisystems (NFS, Samba, Netware) zugegriffen wird. Während des Bootvorganges wird /etc/fstab ausgewertet und die Dateisysteme in der dort angegebenen Reihenfolge gemountet. Nach Änderungen kann man mit mount -a die Datei neu abarbeiten lassen. Dabei werden die einzelnen Partitionen oder Laufwerke den jeweiligen mount-points zugewiesen, es wird das Dateisystem fesgelegt und evtl. Rechte eingeschränkt.

Es ist wichtig, zu wissen, dass normale Benutzer verschiedene Geräte (CF-Kartenleser, USB-Sticks, Kameras etc.) nur exakt dann mounten dürfen, wenn diese Geräte in der fstab eingetragen sind. Dies kann man entweder manuell vornehmen (was allerdings das hotplugging stark einschränkt), oder aber per Script (so macht es SuSE).

Die Ziffer in der letzten Spalte wird von fsck(6) ausgewertet, um die Reihenfolge der Prüfung während eines Reboots festzulegen. Die Root-Partition sollte 1 erhalten, alle anderen echten Dateisysteme 2.

Die aktuellen Informationen über gemountete Dateisystem finden sich immer unter /proc/mounts oder auch in /etc/mtab (letzteres nur wenn das Root-Filesystem rw gemountet ist). Auf /etc/fstab wird immer nur lesend zugegriffen; sie muss deshalb manuell gepflegt werden.

Man kann die Partition auch mit einem Label markieren (siehe DateisystemLabel), dann braucht man keine "Absolutangaben".

Mini-Howto

Ein Beispiel:

# /etc/fstab: static file system information.
#
# Partition             wohin            Dateisystem  
# <file system>         <mount point>    <type>   <options>                    <dump>   <pass>
# root (/) immer als erstes 
/dev/sda2               /                ext3     rw                           0        1
proc                    /proc            proc     defaults                     0        0
# Aus Geschwindigkeitsgründen swap nach Möglichkeit auf eine andere Platte als die hauptsächlich benutzte
/dev/hda2               none             swap
/dev/sda3               none             swap
# Uncomment the following entry if you use a 2.2.x or newer kernel for
# UNIX98-style pty handling
none                    /dev/pts         devpts   gid=5,mode=620               0        0
/dev/fd0                /floppy          auto     defaults,user,noauto         0        0
/dev/sda1               /boot            ext2     rw                           0        2
/dev/hdd4               /usr/sap         ext3     rw                           0        2
/dev/hdc3               /usr/local/src   ext3     rw                           0        2
/dev/hdc2               /usr/local/mp3   ext3     rw                           0        2
# Captive NTFS: Dateien/Verzeichnisse erhalten als Besitzer 
# den User mit UID=1000 und als Gruppe users (GID=100):
/dev/hdd1 /mnt/hdd1 captive-ntfs noauto,gid=100,uid=1000,users,exec,rw,umask=000 0 2

# Folgende Partition ist mit einem Label markiert:
LABEL=part_opt          /opt             ext3     ro                           0        2
/dev/hda3               /home            ext3     rw                           0        2
/dev/cdroms/cdrom0      /brenner         iso9660  ro,noexec,user,noauto        0        0
#                                                    ^^^^
#                                   Programme sollen nicht direkt von CD laufen können (Sicherheit)
#                                                    !!!!  
/dev/cdroms/cdrom1      /cdrom           iso9660  ro,noexec,user,noauto        0        0
# Nur bei usb nötig
none                    /proc/bus/usb    usbdevfs defaults                     0        0
#für /tmp läßt sich das temporäre Dateisystem verwenden
tmpfs                   /tmp             tmpfs    defaults                     0        0
# USB-Stick mit FAT32
/dev/sda1               /mnt/usbstick    vfat     rw,user,noauto,umask=000     0        0
#  Ein Verzeichnis ueberladen: /var belegt dann den Platz auf /bigdisk/var
/bigdisk/var            /var              none     bind                         0        0

Frage: bei welchen Programmen bringt das /tmp mit tmpfs spürbar was?

Bei GNOME z.B.. Es legt hier sehr viele kleine Dateien an! Man spürt es aber nur, wenn viele Leute gleichzeitig mit Gnome-Anwendungen arbeiten. Speziell wenn viele Anwendungen gestartet/beendet werden. -- JanRoehrich 2002-11-14 17:51:43

Außerdem bei jackd. ce 2002-11-20 00:38:43

Vorsicht übrigens mit der Kombination exec, user: Das wird gemeinhin als Sicherheitslücke gesehen. Gefährlich ist es aber nur bei Mehrbenutzersystemen, in denen nicht alle Benutzer voll vertrauenswürdig sind. Dennoch sollte man CDs und vor allem Disketten nach Möglichkeit mit den Optionen noexec, nosuid, nodev mounten. Außerdem -- wer startet unter GNU/Linux schon direkt Programme von CD?

Wie binde ich Samba-Freigaben richtig ein?

s.a. Freigaben per fstab einbinden

fstab (zuletzt geändert am 2010-11-28 10:26:16 durch 213-21-108-144)