AA_evolution_ajith-achuthan_123rf_11398904.jpg

© Ajith Achuthan, 123RF

Stationen des Ext-Dateisystems im Überblick

Langsame Entwicklung

Das Standard-Filesystem hat sich in den letzten zwei Jahrzehnten stetig weiterentwickelt. Heute dient es auf unzähligen Systemen als robuster Unterbau.

Als Linus Torvalds 1991 die ersten frühen Versionen von Linux entwickelte, verwendete er das Minix-Dateisystem von Andrew S. Tanenbaum. Dies gehörte zum Inventar des Unix-Klons Minix [1], das Tanenbaum eigens für Lehrzwecke erschaffen hatte. Einige Einschränkungen, wie etwa maximal 14 Zeichen lange Dateinamen oder die Grenze von 64 MByte für die Größe von Dateien, weckten den Bedarf nach einem eigens für Linux entwickelten Dateisystem – so schlug die Geburtsstunde des Extended File System oder kurz Ext.

1992 veröffentlichte der französische Software-Entwickler Rémy Card eine erste Version, die es ermöglichte, unter Linux erstmals Dateien mit einer Größe von bis zu 2 GByte abzuspeichern. Die zulässige Länge für Dateinamen stieg auf 255 Zeichen. Obwohl Ext in der ersten Version bereits vieles richtig machte, genügte es professionellen Ansprüchen kaum: Je nach Einsatz fragmentierte es stark; zudem war es nicht möglich, verschiedene Zeitstempel für den Zugriff sowie Modifikationen von Inode und Datei abzuspeichern.

Nachfolger Ext2

Beim Design von Ext2 übernahmen die Entwickler viele bewährte Methoden und Prinzipien vom damals unter Unix verbreiteten Berkeley Fast File System [2]: Demnach unterteilt ein Ext2-Dateisystem das Speichermedium aus logischer Sicht in Blöcke, die es aneinanderreiht. Deren Standardgröße beträgt 4 KByte.

Die Blöcke sollten in der Regel mindestens so groß ausfallen wie die Sektoren einer Festplatte. Seinerzeit waren das meist 512 Byte, womit ein Block aus logischer Sicht acht Sektoren beherbergte. Seit einigen Jahren gibt es jedoch Festplatten mit 4 KByte großen Sektoren, sodass ein entsprechender Block direkt einen Sektor abbildet.

Ext2 fügt zudem Blöcke zu Blockgruppen zusammen, wobei bei einer Blockgröße von 4 KByte typischerweise 32 768 Blöcke (entsprechend etwa 128 MByte) eine Gruppe bilden. Damit finden sich auf einer heutigen Festplatte mit einem Volumen von 2 TByte Abertausende an Blöcken und immerhin rund 16 000 Blockgruppen.

Das Unterteilen in Blöcke und Blockgruppen hilft bei der logischen Organisation des Speichers sowie beim Optimieren von Zugriffen beim Lesen und Schreiben. Dateien schreibt das System in der Regel innerhalb der gleichen Blockgruppe, um das Fragmentieren und die Zugriffszeiten auf das Speichermedium zu minimieren. Schreibt das System eine Datei, die größer ausfällt als die konfigurierte Blockgröße, umfasst sie dementsprechend mehrere Blöcke.

Das Unterteilen in feste Blockgrößen birgt aber einen entscheidenen Nachteil: Nutzt eine Datei die Blockgröße von 4096 Bytes (4 KByte) nicht aus, verschwendet das Speicherplatz. Eine 96 Byte große Datei belegt einen kompletten 4-KByte-Block, eine 5092 Byte große Datei bereits zwei. In beiden Fällen gehen 4000 Bytes quasi verloren.

Inodes

Ein Ext-Dateisystem speichert die Dateien ohne Metadaten auf der Festplatte – es benötigt also noch einen Weg, um die Größe der Files, deren Eigentümer und die Zugriffsrechte zu verwalten. Zusätzlich braucht es Platz für den genauen Speicherort auf der Festplatte, damit das System die Datei schnell wiederfindet.

Die Entwickler von Ext2 verwenden dafür sogenannte Inodes: Jede Datei und jedes Verzeichnis ist durch einen Inode repräsentiert, der die oben genannten Informationen enthält. Die Bezeichnung steht für den Begriff "index node" (Index-Knoten), weshalb in den frühen Jahren von Ext2 häufiger das Kürzel "I-Node" auftauchte. Ein Inode belegt unter Ext2 standardmäßig 128 Bytes.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 7 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Dateisysteme aufsetzen, konfigurieren und warten mit Bordmitteln
    Mit ein paar einfachen Shell-Befehlen legen Sie die Grundlage für jede moderne Linux-Distribution: das Dateisystem.
  • Clever schachteln
    Btrfs bringt alles mit, was die großen Spieler im Linux-Business von einem Dateisystem erwarten: Es ist schnell, erweiterbar und flexibel. Dieser Artikel stellt Ihnen das neue Linux-Dateisystem vor.
  • Festplatten und Dateisysteme
    Wer heute mit einem handelsüblichen Computer arbeitet, verwendet automatisch auch eine Festplatte. Wie die Dateien dort gespeichert werden und welche Möglichkeiten dabei geboten werden, weiß hingegen kaum jemand. Dieser Artikel will etwas Licht ins Dunkel bringen.
  • Inode in Not
    Mit den richtigen Werkzeugen fühlen Sie Ihrem Dateisystem auf den Zahn, beseitigen Inkonsistenzen und restaurieren beschädigte Dateien.
  • Umstieg auf das Ext3-Dateisystem
    Dateisysteme mit Journal erleichtern den Umgang mit Linux: Stürzt der Rechner ab, muss man beim Neustart nicht die langwierige Überprüfung der Dateisysteme mit "fsck" abwarten. Wir helfen bei der Umstellung auf Ext3fs und zeigen auch den Weg zurück.
Kommentare

Infos zur Publikation

LU 07/2017: VIDEOSCHNITT

Digitale Ausgabe: Preis € 0,00
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Irgend ein Notebook mit Linux Mint - vllt der Dell Latitude 3480???
Universit Freiburg, 26.06.2017 13:51, 0 Antworten
Hey Leute, bin am Verzweifeln weil ich super gerne auf Linux umsteigen würde aber kein Noteboo...
scannen mit LINUXMINT 18.0 - Brother DCP - 195 C
Christoph-J. Walter, 21.06.2017 08:47, 4 Antworten
Seit LM 18.0 kann ich nicht mehr direkt scannen. Obwohl ich die notwendigen Tools von der Brothe...
Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 2 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 4 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...
Grub2 reparieren
Brain Stuff, 26.04.2017 02:04, 7 Antworten
Ein Windows Update hat mir Grub zerschossen ... der Computer startet nicht mehr mit Grub, sondern...