Wenn Sie Partitionen auf einem Linux-PC formatieren, werden Sie eine Vielzahl von Dateisystemoptionen sehen. Diese Optionen müssen nicht überwältigend sein. Wenn Sie nicht sicher sind, welches Linux-Dateisystem Sie verwenden sollen, gibt es eine einfache Antwort.
Die schnelle Antwort: Verwenden Sie Ext4, wenn Sie sich nicht sicher sind
Wir werden gleich ins Detail gehen und die Unterschiede zwischen den verschiedenen Dateisystemen erläutern, aber wenn Sie sich nicht sicher sind: Verwenden Sie Ext4.
Ext4 ist nicht ohne Grund das Standard-Dateisystem der meisten Linux-Distributionen. Es ist eine verbesserte Version des älteren Ext3-Dateisystems. Es ist nicht das modernste Dateisystem, aber das ist gut: Es bedeutet, dass Ext4 felsenfest und stabil ist.
In Zukunft werden die Linux-Distributionen allmählich auf BtrFS umsteigen. BtrFS befindet sich noch in der Entwicklung, daher sollten Sie es auf Produktionssystemen vermeiden. Das Risiko der Datenbeschädigung oder anderer Probleme ist die potenzielle Geschwindigkeitssteigerung nicht wert.
VERWEIST: Was ist der Unterschied zwischen FAT32, exFAT und NTFS?
Beachten Sie jedoch, dass dieser Ratschlag „Ext4 verwenden“ nur für Linux-Systempartitionen und andere Partitionen auf der Festplatte gilt, auf die nur Linux zugreifen kann. Wenn Sie ein externes Laufwerk formatieren, das Sie mit anderen Betriebssystemen gemeinsam nutzen möchten, sollten Sie nicht Ext4 verwenden, da Windows, macOS und andere Geräte keine Ext4-Dateisysteme lesen können. Sie sollten exFAT oder FAT32 verwenden, wenn Sie ein externes Laufwerk unter Linux formatieren.
Wenn Sie Partitionen auf Ihrem Haupt-Linux-Boot-Laufwerk einrichten, sollten Sie beim Einrichten dieser Partitionen auch eine Swap-Partition mit einer Größe von mindestens ein paar GB erstellen. Diese Partition wird für „Auslagerungsspeicher“ verwendet. Sie ist vergleichbar mit der Auslagerungsdatei unter Windows. Linux lagert Speicher in den Swap Space aus, wenn der Arbeitsspeicher voll ist. Diese Partition muss als „Swap“ und nicht mit einem bestimmten Dateisystem formatiert werden.
Was ist Journaling?
Eine Sache, die Sie bei der Auswahl zwischen Dateisystemen bemerken werden, ist, dass einige von ihnen als „Journaling“-Dateisystem gekennzeichnet sind und andere nicht. Das ist wichtig.
Das Journaling wurde entwickelt, um Datenbeschädigungen durch Abstürze und plötzliche Stromausfälle zu verhindern. Angenommen, Ihr System ist gerade dabei, eine Datei auf die Festplatte zu schreiben, und plötzlich fällt der Strom aus. Ohne ein Journal wüsste Ihr Computer nicht, ob die Datei vollständig auf die Festplatte geschrieben wurde. Mit einem Journal würde Ihr Computer im Journal vermerken, dass er eine bestimmte Datei auf die Festplatte schreiben wollte, diese Datei auf die Festplatte schreiben und dann diesen Auftrag aus dem Journal entfernen. Wenn der Strom während des Schreibens der Datei ausfiel, prüfte Linux beim Hochfahren das Journal des Dateisystems und setzte alle teilweise abgeschlossenen Aufträge fort. Dies verhindert Datenverluste und Dateibeschädigungen.
Das Journaling verlangsamt die Schreibgeschwindigkeit auf der Festplatte zwar ein wenig, aber auf einem Desktop oder Laptop ist es das wert. Der Overhead ist nicht so groß, wie Sie vielleicht denken. Es wird nicht die gesamte Datei in das Journal geschrieben. Stattdessen werden nur die Metadaten, der Inode oder der Speicherort der Datei im Journal aufgezeichnet, bevor sie auf die Festplatte geschrieben wird.
Jedes moderne Dateisystem unterstützt Journaling, und Sie sollten ein Dateisystem verwenden, das Journaling unterstützt, wenn Sie einen Desktop oder ein Notebook einrichten.
Dateisysteme, die kein Journaling bieten, können auf Hochleistungsservern und anderen Systemen eingesetzt werden, bei denen der Administrator zusätzliche Leistung herausholen möchte. Sie sind auch ideal für Flash-Wechsellaufwerke, bei denen man den höheren Overhead und die zusätzlichen Schreibvorgänge des Journaling nicht wünscht.
Was ist der Unterschied zwischen all diesen Linux-Dateisystemen?
Während Microsoft Windows entwickelt und Apple macOS kontrolliert, ist Linux ein Open-Source-Projekt, das von der Gemeinschaft entwickelt wird. Jeder (oder jedes Unternehmen) mit den nötigen Fähigkeiten und der nötigen Zeit kann ein neues Linux-Dateisystem entwickeln. Das ist ein Grund, warum es so viele Optionen gibt. Hier sind die Unterschiede:
- Ext steht für „Extended file system“ und war das erste, das speziell für Linux entwickelt wurde. Es hat vier große Überarbeitungen erlebt. „Ext“ ist die erste Version des Dateisystems, die 1992 eingeführt wurde. Es war eine große Verbesserung gegenüber dem damals verwendeten Minix-Dateisystem, dem jedoch wichtige Funktionen fehlten. Viele Linux-Distributionen unterstützen Ext nicht mehr.
- Ext2 ist kein Journaling-Dateisystem. Als es eingeführt wurde, war es das erste Dateisystem, das erweiterte Dateiattribute und 2-Terabyte-Laufwerke unterstützte. Da Ext2 kein Journal besitzt, schreibt es weniger auf die Festplatte, was es für Flash-Speicher wie USB-Laufwerke nützlich macht. Dateisysteme wie exFAT und FAT32 verwenden jedoch ebenfalls kein Journal und sind besser mit verschiedenen Betriebssystemen kompatibel, so dass wir empfehlen, Ext2 zu vermeiden, es sei denn, Sie wissen, dass Sie es aus irgendeinem Grund benötigen.
- Ext3 ist im Grunde nur Ext2 mit Journaling. Ext3 wurde entwickelt, um abwärtskompatibel zu Ext2 zu sein, so dass Partitionen zwischen Ext2 und Ext3 konvertiert werden können, ohne dass eine Formatierung erforderlich ist. Es gibt es schon länger als Ext4, aber Ext4 ist seit 2008 auf dem Markt und wird ausgiebig getestet. Zum jetzigen Zeitpunkt ist es besser, Ext4 zu verwenden.
- Ext4 wurde auch entwickelt, um abwärtskompatibel zu sein. Sie können ein Ext4-Dateisystem als Ext3 oder ein Ext2- oder Ext3-Dateisystem als Ext4 einbinden. Es enthält neuere Funktionen, die die Dateifragmentierung reduzieren, größere Volumes und Dateien ermöglichen und eine verzögerte Zuweisung verwenden, um die Lebensdauer des Flash-Speichers zu verbessern. Dies ist die modernste Version des Ext-Dateisystems und wird von den meisten Linux-Distributionen als Standard verwendet.
- BtrFS, ausgesprochen „Butter“ oder „Better“ FS, wurde ursprünglich von Oracle entwickelt. Es steht für „B-Tree File System“ und ermöglicht Laufwerkspooling, On-the-Fly-Snapshots, transparente Kompression und Online-Defragmentierung. Es enthält viele der gleichen Ideen wie ReiserFS, ein Dateisystem, das in einigen Linux-Distributionen standardmäßig verwendet wird. BtrFS soll einen klaren Bruch mit der Ext-Serie von Dateisystemen darstellen. Ted Ts’o, der Betreuer des Ext4-Dateisystems, hält Ext4 für eine kurzfristige Lösung und glaubt, dass BtrFS der Weg in die Zukunft ist. Es ist zu erwarten, dass BtrFS in den nächsten Jahren zum Standard in Linux-Distributionen für Unternehmensserver und Privatanwender wird, da es weiter getestet wird.
- ReiserFS war ein großer Sprung nach vorn für Linux-Dateisysteme, als es 2001 eingeführt wurde, und es enthielt viele neue Funktionen, die Ext niemals hätte implementieren können. ReiserFS wurde 2004 durch Reiser4 ersetzt, das viele der Funktionen, die in der ersten Version unvollständig waren oder fehlten, verbesserte. Die Entwicklung von Reiser4 kam jedoch ins Stocken, nachdem der Hauptentwickler, Hans Reiser, 2008 ins Gefängnis kam. Reiser4 ist noch immer nicht im Haupt-Linux-Kernel enthalten und es ist unwahrscheinlich, dass es dorthin gelangt. BtrFS ist langfristig die bessere Wahl.
VERWEIST: Wie man ZFS unter Ubuntu installiert und verwendet (und warum man das tun sollte)
- ZFS wurde von Sun Microsystems für Solaris entwickelt und ist jetzt im Besitz von Oracle. ZFS unterstützt viele fortschrittliche Funktionen wie Laufwerkspooling, Snapshots und dynamisches Disk-Striping – BtrFS wird viele dieser Funktionen standardmäßig in Linux einführen. Jede Datei hat eine Prüfsumme, so dass ZFS erkennen kann, ob eine Datei beschädigt ist oder nicht. Sun hat ZFS unter der Sun CDDL-Lizenz veröffentlicht, was bedeutet, dass es nicht in den Linux-Kernel aufgenommen werden kann. Sie können jedoch ZFS-Unterstützung in jeder Linux-Distribution installieren. Auch Ubuntu bietet nun ab Ubuntu 16.04 offizielle ZFS-Unterstützung. Ubuntu verwendet standardmäßig ZFS für Container.
- XFS wurde 1994 von Silicon Graphics für das Betriebssystem SGI IRX entwickelt und 2001 auf Linux portiert. Es ähnelt Ext4 in mancher Hinsicht, da es ebenfalls eine verzögerte Zuweisung verwendet, um bei der Dateifragmentierung zu helfen, und keine gemounteten Snapshots zulässt. Es kann im laufenden Betrieb vergrößert, aber nicht verkleinert werden. XFS hat eine gute Leistung beim Umgang mit großen Dateien, aber eine schlechtere Leistung als andere Dateisysteme, wenn es um viele kleine Dateien geht. Es kann für bestimmte Arten von Servern nützlich sein, die in erster Linie mit großen Dateien umgehen müssen.
- JFS, oder „Journaled File System“, wurde 1990 von IBM für das IBM-Betriebssystem AIX entwickelt und später auf Linux portiert. Es zeichnet sich durch eine niedrige CPU-Auslastung und eine gute Leistung sowohl für große als auch für kleine Dateien aus. JFS-Partitionen können dynamisch vergrößert, aber nicht verkleinert werden. Es war extrem gut geplant und wird von fast allen wichtigen Distributionen unterstützt, allerdings sind seine Produktionstests auf Linux-Servern nicht so umfangreich wie bei Ext, da es für AIX entwickelt wurde. Ext4 wird häufiger verwendet und ist besser getestet.
- Swap ist eine Option beim Formatieren eines Laufwerks, ist aber kein eigentliches Dateisystem. Er wird als virtueller Speicher verwendet und hat keine Dateisystemstruktur. Sie können ihn nicht mounten, um seinen Inhalt zu sehen. Swap wird vom Linux-Kernel als „Kratzerspeicher“ verwendet, um Daten vorübergehend zu speichern, die nicht in den RAM passen. Er wird auch für den Ruhezustand verwendet. Während Windows seine Auslagerungsdatei als Datei auf seiner Hauptsystempartition speichert, reserviert Linux einfach eine separate leere Partition für den Swap-Speicher.
VERWANDT: Was ist der Unterschied zwischen FAT32, exFAT und NTFS?
- FAT16, FAT32 und exFAT: Microsofts FAT-Dateisysteme sind oft eine Option beim Formatieren eines Laufwerks unter Linux. Diese Dateisysteme enthalten kein Journal und sind daher ideal für externe USB-Laufwerke. Sie sind ein De-facto-Standard, der von allen Betriebssystemen – Windows, macOS, Linux und anderen Geräten – gelesen werden kann. Das macht sie zum idealen Dateisystem, wenn Sie ein externes Laufwerk formatieren, das Sie mit anderen Betriebssystemen verwenden möchten. FAT32 ist älter. exFAT ist die ideale Option, da es im Gegensatz zu FAT32 Dateien mit einer Größe von mehr als 4 GB und Partitionen mit einer Größe von mehr als 8 TB unterstützt.
Es gibt auch andere Linux-Dateisysteme, einschließlich Dateisystemen, die speziell für Flash-Speicher in eingebetteten Geräten und auf SD-Karten entwickelt wurden. Aber dies sind die Optionen, die Sie bei der Verwendung von Linux am häufigsten sehen werden.