Die fstab Datei ist eine der wichtigsten Dateien eines jeden Systems,
sie beinhaltet die Konfiguration der gesamten Laufwerke eines PCs.
- Link zu einem Script (von Ubuntu) zum automatischen Hinzufügen
von NTFS / FAT / HFS+ Platten hinzugefügt, kleine Korrekturen.
Wenn man sich die Datei fstab per cat anschaut, so wird man zunächst folgendes Schema als Kommentar finden:
# <file system> <mount point>
<type> <options>
<dump> <pass>
1) File System
File System entspricht dabei einer Angabe im Linux Devices Format, also
zum Beispiel /dev/hda1 für die erste Partition auf der ersten IDE
Platte.
2) Mount Point
Mount Point gibt das Verzeichnis an, in welchem das Laufwerk eingebunden werden soll - hier können schon erste Fehler auftreten.
Wenn ein Nutzer zum Beispiel eine gemountete Festplatte nutzen möchte,
so braucht das Mountverzeichnis entsprechende Rechte.
Beispiel: 2 Festplatte, 1 Partition soll gemountet werden.
Wo? -- Im neuen Verzeichnis /mnt/hdb1
Man loggt sich dann als root in einer Konsole ein:
(Alt+F2, konsole, su)
Anschliessend legt man mit mkdir ein neues Verzeichnis in /mnt an:
mkdir /mnt/hdb1
Da das Verzeichnis vom Nutzer root erstellt wurde, ist es auch nur für root lesbar!
Anzeige der Rechte in Konsole: ls -la /mnt/hdb1:
"
ls -la /mnt/hdb1
insgesamt 8
drwxr-xr-x 2 root root 4096 2005-03-25 19:19 . -- Eigentümer: root, Gruppe:root
drwxr-xr-x 4 root root 4096 2005-03-25 19:19 ..
"
Der normale User ist aber nicht in der Gruppe root, daher könnte er das Verzeichnis nicht lesen!
Um eine neue Gruppe zu setzen, nutzt man chgrp.
Jeder normale Nutzer sollte in der Gruppe users sein, wir ändern daher
die Gruppe des Verzeichnisses /mnt/hdb1 von root auf users.
chgrp users /mnt/hdb1
Damit kann jeder Nutzer auf das Verzeichnis zugreifen.
Näheres zu Rechten: siehe hier
3) Type
Type gibt das Dateisystem als Kernelmodul an. Daher muss bevor etwas
gemountet werden kann, der Treiber für das Dateisystem sich im Kernel
als zum Beispiel Modul befinden.
Ist der Treiber nicht vorhanden, so gibt mount eine Fehlermeldung aus.
Folgende Typen gibt es:
-
ext2 -- Ext2 Dateisystem
-
ext3 -- Neues ext2 Dateisystem mit Journalling Unterstützung
- ntfs -- NTFS Support (nur lesen)
- reiserfs -- Reiserfs V3 Support
- xfs -- XFS Journalling Filesystem Support
- vfat -- FAT 16/32 Support
- reiser4 -- Reiser V4 Support (wird nicht von allen Distris auto. unterstützt)
- auto -- Dateisystem ist automatisch, wird bei Wechseldatenträgern eingesetzt
4) options
Die Optionen sind für jedes Dateisystem unterschiedlich, wenn es auch ein paar generelle gibt:
-
ro -- readonly, also nur lesbar, für CDs
- rw -- readwrite, beschreibbar für Datenträger
-
gid -- group id, diese beschreibt eine Gruppe (s. /etc/group, users ist normalerweise 100)
-
uid -- user id, diese beschreibt einen Nutzer (s. /etc/users,
normalerweise ist 1000 der erste angelegte Nutzer, 1001 der zweite usw)
-
user / nouser -- user lässt jeden Benutzer das Gerät mounten, Standard ist aber nouser, welches dies verhindert
-
auto / noauto -- auto setzt, dass das Gerät bei jedem Start des System
eingebunden wird, noauto verhindert dies (bei Wechseldatenträgern ein muss!)
-
exec / noexec -- noexec verhindert
dass binäre Dateien auf einem Datenträger ausgeführt werden, um zum
Beispiel bei einer Windows Partition zu verhindern, dass exe Dateien,
die Linux nicht verarbeiten kann, genutzt werden
- umask -- setzt Rechte für Dateien/Ordner, das ganze wie bei chmod im oktalen System (
Näheres zu Rechten: siehe hier), seit Kernel 2.5.43 wurde das ganze dann noch zusätzlich aufgesplittet in :
- fmask -- Nur Rechte für Dateien
- dmask -- Nur Rechte für Verzeichnisse
5) Dump & Pass
-
dump ist ein Backuptool, hier kann gesetzt werden ob dump für dieses Laufwerk erlaubt ist oder nicht ( 0 - nein, 1 ja)
-
pass bezieht sich auf fsck, das man als das "chkdsk/scandisk" für Linux
bezeichnen kann, und ob fsck diese automatisch prüfen soll beim Start
(0=nein, 1=ja)
6) Beispiele
1) CD-ROM:
/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0
- /dev/cdrom ist bei den meisten aktuellen Distributionen ein Verweis auf die richtige Gerätedatei
- /media/cdrom - Verzeichnis
- auto : Da eine CD Rom unterschiedliche Dateisystem haben kann, ist es
con Vorteil auto zu nutzen, damit das Dateisystem automatisch
festgestellt wird
- ro : die CD wird nur lesbar gemountet
- noauto : sie wird
nicht beim Starten des Betriebssystem eingebunden
- user : lässt einen
normalen Nutzer die CD Rom mounten
- exec : sorgt dafür dass binäre
Dateien ausgeführt werden
- 0 0 : CD Rom wird weder für dump verfügbar gemacht noch mit fsck geprüft
2) Floppy/Diskette:
/dev/fd0 /media/floppy0 auto rw,noauto,user,sync 0 0
- /dev/fd0 : Dies ist immer das erste Floppy Laufwerk, /dev/fd1 wäre das zweite
-
/media/floppy0 : Verzeichnis, in das die Diskette eingebunden wird
- auto : Wie bei CD Rom, ein Wechseldatenträger, der unterschiedliche Dateisysteme enthalten kann
- Der grösste Teil ist wie bei CD-Rom,
lediglich sync ist neu.
- sync sorgt dafür dass das Lesen/Schreiben auf
das Diskettenlaufwerk synchron geschieht
3) Windows Partitionen
FAT
/dev/hdb1 /mnt/hdb1 vfat users,gid=users,umask=0002,iocharset=iso8859-15,quiet 0 0
- /dev/hdb1 : 2 Festplatte, erste Partition
- /mnt/hdb1 : Verzeichnis
- vfat : Für Fat16/Fat32 Dateisysteme
- users - vom Nutzer
mountbar
- gid=users - das gemountete Verzeichnis ist vom Nutzer
lesbar/schreibbar
- iocharset=iso8859-15 - Zeichentabelle, die
alle möglichen Buchstaben und Zeichen enthält,in dem Falle alle
deutschen inklusive Sonderzeichen wie €
-
quiet - unterdrückt chmod Warnungen, da chmod auf fat Dateisystemen nicht funktioniert
- rw - schreibbar
- 0 0: wie bei Floppy/CD-Rom
NTFS
NTFS ist in dem Sinne nur lesbar, als dass Schreiben nur minimal
funktioniert, und diese minimalistischen Funktionen auch noch
experimentell sind.
Captive,
ermöglicht zwar das Schreiben auf NTFS, indem es einen Windows Treiber
einbindet, aber es benötigt ebenfalls einige zusätzliche Kernelmodule,
deren Arbeit mittlerweile eingestellt wurden, und daher teilweise
extreme Schwierigkeiten machen.
/dev/hda1 /media/daten ntfs ro,user,fmask=0111,dmask=0000
- /dev/hdb1 -- erste Festplatte, erste Partition
- /media/daten -- Verzeichnis
- ntfs -- NTFS
- ro -- nur lesbar (siehe oben)
- user -- vom Nutzer mountbar
- fmask -- 0111 -> schreiben, ausführen und lesen für alle Nutzer/root
- dmask -- das gleiche für Verzeichnisse
Es gibt ein Skript dass NTFS/FAT/HFS+(Mac) automatisch einbindet -
http://www.ubuntulinux.nl/files/winmac_fstab
Um das ganze auszuführen, folgendes tuen:
Konsole öffnen
wget http://www.ubuntulinux.nl/files/winmac_fstab
sudo bash winmac_fstab
Dann die Fragen beantworten.
|