Welches Linux-Dateisystem sollten Sie verwenden?

Veröffentlicht: 2022-01-29

Beim Formatieren von Partitionen auf einem Linux-PC sehen Sie eine Vielzahl von Dateisystemoptionen. Diese Optionen müssen nicht überwältigend sein. Wenn Sie sich 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 Gras gehen und den Unterschied zwischen den verschiedenen Dateisystemen aufschlüsseln, aber wenn Sie sich nicht sicher sind: Verwenden Sie Ext4.

Ext4 ist aus einem bestimmten Grund das Standarddateisystem auf den 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.

Künftig werden sich Linux-Distributionen sukzessive in Richtung BtrFS verlagern. BtrFS ist immer noch auf dem neuesten Stand und wird stark weiterentwickelt, daher sollten Sie es auf Produktionssystemen vermeiden. Das Risiko von Datenbeschädigungen oder anderen Problemen ist die potenzielle Geschwindigkeitsverbesserung nicht wert.

VERWANDT: 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 zugreift. Wenn Sie ein externes Laufwerk formatieren, das Sie mit anderen Betriebssystemen teilen möchten, sollten Sie Ext4 nicht verwenden, da Windows, macOS und andere Geräte Ext4-Dateisysteme nicht lesen können. Sie sollten exFAT oder FAT32 verwenden, wenn Sie ein externes Laufwerk unter Linux formatieren.

Anzeige

Wenn Sie Partitionen auf Ihrem Haupt-Linux-Startlaufwerk einrichten, sollten Sie beim Einrichten dieser Partitionen auch eine Auslagerungspartition mit einer Größe von mindestens einigen GB erstellen. Diese Partition wird als „Swap Space“ verwendet. Es ähnelt der Auslagerungsdatei unter Windows. Linux lagert Speicher in den Auslagerungsbereich aus, wenn sein RAM voll ist. Diese Partition muss als „Swap“ statt mit einem bestimmten Dateisystem formatiert werden.

Was ist Journaling?

Eine Sache, die Ihnen bei der Auswahl zwischen Dateisystemen auffallen wird, ist, dass einige von ihnen als „Journaling“-Dateisystem gekennzeichnet sind und andere nicht. Das ist wichtig.

Das Journaling soll verhindern, dass Daten durch Abstürze und plötzliche Stromausfälle beschädigt werden. Angenommen, Ihr System ist gerade dabei, eine Datei auf die Festplatte zu schreiben, und es verliert plötzlich die Stromversorgung. Ohne ein Journal hätte Ihr Computer keine Ahnung, ob die Datei vollständig auf die Festplatte geschrieben wurde. Die Datei würde dort auf der Festplatte beschädigt bleiben.

Bei einem Journal würde Ihr Computer bemerken, dass er eine bestimmte Datei auf die Festplatte im Journal schreiben würde, diese Datei auf die Festplatte schreiben und dann diesen Job aus dem Journal entfernen würde. Wenn der Strom während des Schreibens der Datei ausfiel, überprüfte Linux beim Hochfahren das Journal des Dateisystems und setzte alle teilweise abgeschlossenen Jobs fort. Dies verhindert Datenverlust und Dateibeschädigung.

Journaling verlangsamt die Schreibleistung der Festplatte ein wenig, aber es lohnt sich auf einem Desktop oder Laptop. Es ist nicht so viel Overhead, wie Sie vielleicht denken. Die vollständige Datei wird nicht in das Journal geschrieben. Stattdessen werden nur die Metadaten der Datei, der Inode oder der Speicherort auf der Festplatte im Journal aufgezeichnet, bevor sie auf die Festplatte geschrieben werden.

Jedes moderne Dateisystem unterstützt Journaling, und Sie sollten ein Dateisystem verwenden, das Journaling unterstützt, wenn Sie einen Desktop oder Laptop einrichten.

Anzeige

Dateisysteme, die kein Journaling bieten, sind für die Verwendung auf Hochleistungsservern und anderen derartigen Systemen verfügbar, bei denen der Administrator zusätzliche Leistung herausquetschen möchte. Sie sind auch ideal für austauschbare Flash-Laufwerke, bei denen Sie den höheren Overhead und die zusätzlichen Schreibvorgänge des Journalings vermeiden möchten.

Was ist der Unterschied zwischen all diesen Linux-Dateisystemen?

Während Microsoft Windows entwickelt und Apple macOS steuert, ist Linux ein von der Community entwickeltes Open-Source-Projekt. Jeder (oder jedes Unternehmen) mit den Fähigkeiten und der Zeit kann ein neues Linux-Dateisystem erstellen. Das ist ein Grund, warum es so viele Möglichkeiten gibt. Hier sind die Unterschiede:

  • Ext steht für „Extended File System“ und wurde als erstes speziell für Linux erstellt. Es hatte vier große Überarbeitungen. „Ext“ ist die erste Version des Dateisystems, die 1992 eingeführt wurde. Es war ein größeres Upgrade des damals verwendeten Minix-Dateisystems, aber es fehlen wichtige Funktionen. Viele Linux-Distributionen unterstützen Ext nicht mehr.
  • Ext2 ist kein Journaling-Dateisystem. Bei seiner Einführung war es das erste Dateisystem, das erweiterte Dateiattribute und 2-Terabyte-Laufwerke unterstützte. Da Ext2 kein Journal hat, 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 auch kein Journaling und sind besser mit verschiedenen Betriebssystemen kompatibel, daher empfehlen wir Ihnen, 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 mit Ext2 abwärtskompatibel zu sein, sodass 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 gibt es seit 2008 und es wurde umfassend getestet. An dieser Stelle ist es besser, Ext4 zu verwenden.
  • Ext4 wurde auch so konzipiert, dass es abwärtskompatibel ist. Sie können ein Ext4-Dateisystem als Ext3 mounten oder ein Ext2- oder Ext3-Dateisystem als Ext4 mounten. Es enthält neuere Funktionen, die die Dateifragmentierung reduzieren, größere Volumes und Dateien ermöglichen und eine verzögerte Zuordnung verwenden, um die Lebensdauer des Flash-Speichers zu verlängern. Dies ist die modernste Version des Ext-Dateisystems und die Standardeinstellung bei den meisten Linux-Distributionen.

  • 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 Komprimierung und Online-Defragmentierung. Es teilt eine Reihe der gleichen Ideen wie in ReiserFS, einem Dateisystem, das einige Linux-Distributionen standardmäßig verwenden. BtrFS wurde entwickelt, um eine saubere Abkehr von der Ext-Reihe von Dateisystemen zu sein. 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. Erwarten Sie, dass BtrFS in den nächsten Jahren zum Standard sowohl in Enterprise-Server- als auch in Consumer-Desktop-Linux-Distributionen wird, wenn es weiter getestet wird.
  • ReiserFS war ein großer Sprung nach vorne für Linux-Dateisysteme, als es 2001 eingeführt wurde, und es enthielt viele neue Funktionen, die Ext niemals implementieren könnte. ReiserFS wurde 2004 durch Reiser4 ersetzt, das viele der Funktionen verbesserte, die in der ursprünglichen Version unvollständig waren oder fehlten. Die Entwicklung von Reiser4 kam jedoch zum Stillstand, nachdem der Hauptentwickler Hans Reiser 2008 ins Gefängnis geschickt wurde. Reiser4 ist es immer noch nicht im Haupt-Linux-Kernel und wird dort wahrscheinlich nicht hinkommen. BtrFS ist langfristig die bessere Wahl.

    VERWANDT: So installieren und verwenden Sie ZFS unter Ubuntu (und warum Sie das möchten)

  • ZFS wurde von Sun Microsystems für Solaris entwickelt und gehört jetzt Oracle. ZFS unterstützt viele erweiterte Funktionen, darunter Laufwerkspooling, Snapshots und dynamisches Disk-Striping – BtrFS bringt viele dieser Funktionen standardmäßig nach Linux. Jede Datei hat eine Prüfsumme, sodass ZFS erkennen kann, ob eine Datei beschädigt ist oder nicht. Sun hat ZFS als Open Source unter der Sun CDDL-Lizenz bereitgestellt, was bedeutet, dass es nicht in den Linux-Kernel aufgenommen werden kann. Sie können die ZFS-Unterstützung jedoch auf jeder Linux-Distribution installieren. Ubuntu bietet jetzt auch ab Ubuntu 16.04 offiziellen ZFS-Support. 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 in gewisser Weise Ext4, da es auch eine verzögerte Zuordnung verwendet, um die Dateifragmentierung zu unterstützen, 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 beim Umgang mit vielen kleinen Dateien. Es kann für bestimmte Servertypen nützlich sein, die hauptsächlich mit großen Dateien umgehen müssen.
  • JFS oder „Journaled File System“ wurde 1990 von IBM für das Betriebssystem IBM AIX entwickelt und später auf Linux portiert. Es zeichnet sich durch eine geringe CPU-Auslastung und eine gute Leistung für große und kleine Dateien aus. JFS-Partitionen können dynamisch in der Größe geändert, aber nicht verkleinert werden. Es war extrem gut geplant und wird von fast allen wichtigen Distributionen unterstützt, aber seine Produktionstests auf Linux-Servern sind nicht so umfangreich wie Ext, da es für AIX entwickelt wurde. Ext4 wird häufiger verwendet und umfassender getestet.
  • Swap ist eine Option beim Formatieren eines Laufwerks, aber kein eigentliches Dateisystem. Es wird als virtueller Speicher verwendet und hat keine Dateisystemstruktur. Sie können es nicht mounten, um seinen Inhalt anzuzeigen. Swap wird vom Linux-Kernel als „Scratch Space“ verwendet, um Daten, die nicht in den Arbeitsspeicher passen, vorübergehend zu speichern. Es wird auch zum Überwintern verwendet. Während Windows seine Auslagerungsdatei als Datei auf seiner Hauptsystempartition speichert, reserviert Linux nur eine separate leere Partition für den Auslagerungsbereich.

VERWANDT: Was ist der Unterschied zwischen FAT32, exFAT und NTFS?

  • FAT16 , FAT32 und exFAT : Die FAT-Dateisysteme von Microsoft 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, den jedes Betriebssystem – Windows, macOS, Linux und andere Geräte – lesen kann. Dies 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 über 4 GB und Partitionen mit einer Größe von über 8 TB unterstützt.

Es gibt auch andere Linux-Dateisysteme, darunter Dateisysteme, die speziell für Flash-Speicher in eingebetteten Geräten und auf SD-Karten entwickelt wurden. Dies sind jedoch die Optionen, die Sie am häufigsten sehen werden, wenn Sie Linux verwenden.

RELATED: Beste Linux-Laptops für Entwickler und Enthusiasten