Bevor NFS beschrieben wird, sollte man den Ausdruck Dateisystem
verstehen. Ein Dateisystem ist ein Weg, um Daten auf einem
Medium zu speichern, der Weg, wie es organisiert und verwaltet
wird. Es gibt viele davon, einige sind weit verbreitet, andere
sind eher selten anzutreffen. Bekannte Dateisysteme sind etwa
das New Technology FileSystem ( NTFS von Windows),
High Performance FileSystem (HPFS, OS/2), FAT 12/16/32, VFAT,
Macintosh Hierarchical Filesystem (HFS), ISO 9660 (für CD-ROM),
extended file systems (Ext, Ext2, Ext3), und viele andere.
Man kann jedes physikalische Medium für Daten (z. B. eine
Festplatte) als Feld von kleinen Einheiten betrachten, die
Informationen speichern: Man redet hier über Blöcke. Jedes Dateisystem
verwaltet diese Blöcke auf verschiedene Weise. Zum Beispiel versuchen
wir in der folgenden Abbildung eine Datei einzufügen, die zwei Blöcke
benutzt. Auf der oberen Illustration wurde die Datei hinter den
letzten belegten Block gesetzt, wobei leere Stellen am Anfang
auftreten. Im unteren Teil des Bildes (ein anderes Dateisystem)
wurde es an die erste freie Stelle gesetzt. Diese Politik hat
Einfluss darauf, wie stark eine Platte fragmentiert wird. Einige
Dateisysteme vermeiden Fragmentierung automatisch, während
andere manuell defragmentiert werden müssen.
 |
Das bekannteste Dateisystem unter Linux ist ext2fs (extended 2 file
system). Jede Datei wird durch einen sogenannten Inode dargestellt.
Inodes sind Datenstrukturen, die Informationen über die Objekte eines
Dateisystemes speichern, wie z. B. Dateien oder Verzeichnisse.
Verzeichnisse speichern die Dateiliste, und der Zugriff geschieht
durch Operationen wie Lesen und Schreiben auf besondere Dateien.
Die Aufgabe eines NFS Servers ist es, den Clients die Inodes zu geben,
auf die sie zugreifen möchten. Allerdings würde ein Client nur allein
mit den Datei-Inodes nicht sehr gut arbeiten. Ein NFS Server ist eine
zusätzliche Netzschicht, die es remote-Rechnern erlaubt, Inodes zu
handhaben.
|