Second-Extended-Filesystem

Das Second Extended Filesystem (ext2) ist ein weitverbreitetes Standarddateisystem für Linux-Distributionen.  Ext2 kann mehrere primäre Partitionen verwalten und die Zugriffsrechte steuern. Dateinamen bis zu 255 Zeichen sind möglich. Die maximale Dateigrösse lag ursprünglich bei 2 Gigabyte. Inzwischen kann diese  theoretisch 2 Tebibyte betragen. 

Die maximale Partitionsgrösse beträgt 4 Terabyte. Das Dateisystem kann theoretisch bis zu 16 Tebibyte an Speicherplatz belegen. Die maximale Anzahl von Dateien beträgt 10 ^ 18.  Ext2 verfügt über mehrere Konzepte des Unix-Dateisystemes: Inodes und Blöcke. Es ist erweiterbar um Zugriffskontrollisten, Fragmente, Wiederherstellungsfunktionen und der Möglichkeit der Datenkompression.  Ext2 arbeitet mit der Little-Endian-First Byte Order. Das Dateisystem kann somit in verschiedene Betriebssystem-Architekturen eingebunden werden, bei Beibehaltung der Leserichtung.

Blöcke, Blockgruppen, Superblock 
Ext2 Dateisysteme belegen den Speicherplatz auf der Festplatte bzw. innerhalb des Dateisystemes mit Blöcken von einer Grösse zwischen  1 KB, 2 KB oder 4 KB. Die Blockgrösse kann vor der Installation festgelegt werden. Blöcke werden zu Blockgruppen zusammengefasst. Damit wird einer Fragmentierung vorgebeugt. 

Die Informationen über jede Blockgruppe werden in einer Deskriptor-Tabelle gespeichert. Die Deskriptor-Tabelle liegt direkt hinter dem sog. Superblock.  Im Superblock sind alle Informationen über die Konfiguration des Dateisystems gespeichert.

Inodes, Hard Links 
Bei ext2 werden alle Objekte im Dateisystem durch einen Inode dargestellt. Der Inode (Indexeintrag, Informationsknoten) enthält Informationen über Zeiger und Metadaten über Objekte wie Zugriffsrechte, Besitzer, Typ, Grösse, berechtigte Gruppe oder  Flags.    Ein Verzeichnis unter ext2 ist ein Objekt des Dateisystems und verfügt wie jedes Objekt über einen Inode. Es handelt sich um eine spezielle Datei, die jeden Dateinamen im Verzeichnis mit einem bestimmten Indode verbindet.  Solche Verbindungen nennt man auch Hard Link (Harter Link). Bei einem Hard Link handelt es sich um einen Verzeichniseintrag in einem Dateisystem. Mit dem Hard Link werden Dateien und Verzeichnisse über die Inodes (Dateideskriptor)  bestimmt. Im Gegensatz zu symbolischen Links verweisen die Hard Links nicht auf einen Inode sondern auf einen Verzeichniseintrag.

Symbolische Verknüpfungen 
Die Symbolischen Verknüpfungen (Symlinks) können über Dateisystemgrenzen benutzt werden und stellen ebenfalls Dateisystemobjekte mit Inodes dar.  Ext2 ist kein Journaling-Dateisystem. Dieser Missstand wurde durch ext3 behoben. 

ext2 und Google
Google verwendet auf seinen Servern ext2, da Google mit Linux arbeitet und aus damaligen Performance- und Handlingüberlegungen. 2010 hat Google den Chefentwickler von ext4 angeheuert, um sein Dateisystem auf ext4 umzustellen.                     
Siehe auch:    Third-Extended-Filesystem   Fourth-Extended-Filesystem   Kernel   Reiser-File-System   Inode   Harter-Link   ZFS   XFS   Google-Server