Dateisystem für ein SSD-Laufwerk


24

Ich habe immer gedacht, dass herkömmliche Dateisysteme für Nicht-SSD-Laufwerke ausgelegt und optimiert sind, bei denen beispielsweise die Datenlokalität wichtig und die Fragmentierung problematisch ist.

Gibt es ein Dateisystem, das heute für SSD-Laufwerke empfohlen wird? Bin ich besser dran mit ext4?

Antworten:


13

Wenn die SSD unabhängig von der Anzahl der Geräte Ihre einzige Festplattenplattform sein soll, besteht ein Missstand. So minimieren Sie Schreibvorgänge bei gleichzeitiger Wahrung von Zuverlässigkeit und Leistung.

Insbesondere werden ext4 und 3, NILFS und fast jedes andere moderne Dateisystem, ein Journal führen. In der Regel ist dies jedoch wünschenswert, wenn es sich um SSD-Geräte handelt, da dies die Schreibvorgänge für das Gerät erhöht und dadurch dessen Lebensdauer verringert. Eine Möglichkeit besteht darin, eine herkömmliche IDE, SATA oder ein anderes Gerät auszuwählen, auf das das Dateisystem sein Journal schreiben kann. Auf diese Weise können Sie die Vorteile von Journaling beibehalten, ohne die Lebensdauer der SSD-Geräte zu beeinträchtigen. Im Fall von ext4 kann dies erreicht werden , wie: mke2fs -O journal_dev /dev/external_devicedann zu dem spezifischen Dateisystem angebracht , wie: mkfs.ext4 -J journal=/dev/external_device. Weitere Informationen finden Sie in der Manpage .

Ein zusätzliches Merkmal von Dateisystemen, das beim Umgang mit SSD-Geräten berücksichtigt werden sollte, ist atime. Das Festlegen einer Zeit in einem Dateisystem kann die Anzahl der Schreibvorgänge auf einem bestimmten Gerät im Laufe der Zeit drastisch erhöhen. Zu den Optionen zum Ändern dieses Verhaltens gehören "relatime" und "noatime".

Da wir auf ext4 zu konzentrieren scheinen, ist die Kernel - Dokumentation auf dem Dateisystem, einschließlich den verfügbaren Optionen, als Referenz zur Verfügung hier .

Einige andere Optionen zu prüfen noload:, wie vorbote vorgeschlagen, und errors=remount-ro;


Was ist nodiratime?
Elazar Leibovich

@Elazar Leibovich - "Noatime" impliziert "Nodirtime". Wenn Ihre Frage sich auf den Wert des letzteren gegenüber dem ersteren bezog, ist es sicherlich besser als nichts, Verzeichnisse von Zeit zu Zeit auszuschließen, aber der Nutzen wird im Vergleich zum ersteren offensichtlich geringer sein.
Tok

1
Ich weiß nicht - das scheint eine Menge fortgesetzter FUD über "Write Endurance" zu sein. Sogar die meisten Konsumlaufwerke werden mindestens 6 Monate ununterbrochenes Schreiben großer Daten in Kauf nehmen (SSDs schreiben nur langsam kleine Änderungen). Wenn es sich also um einen Unternehmensdateiserver handelt, sollten Sie sich Sorgen machen (optimieren und eine gute SSD besorgen). Wenn es sich um einen Einzelplatz-PC handelt, sollten Sie Ihre SSD ohnehin in 5 Jahren ersetzen. Das heißt, das Ausschalten zu bestimmten Zeiten usw. erhöht Ihre Leistung (im Laufe der Zeit)
Stephen

7

Empfohlene Dateisysteme im Jahr 2014

Es sind wenige Jahre vergangen, seit diese Frage gestellt und die Antworten veröffentlicht wurden. Es ist Zeit, einige aktuelle Informationen zu diesem Thema zu veröffentlichen. Wenn etwas veraltet ist, schreibe bitte einen Kommentar.

Da diese Frage speziell lautete "Gibt es ein Dateisystem, das heute für SSD-Laufwerke empfohlen wird?" Ich werde mich darauf konzentrieren, diese Frage zu beantworten und Links zu anderen relevanten Informationen zu veröffentlichen.

Derzeit (Stand: 20. Dezember 2014) werden im Artikel zu Solid State Drives im Arch Linux- Wiki die folgenden Dateisysteme empfohlen:

Btrfs

Btrfs ist ein Copy-on-Write- Dateisystem für Linux, das unter der GPL veröffentlicht wurde. Die Entwicklung begann 2007 bei Oracle. Sie ist seit Linux 2.6.29 (März 2009) im Mainline enthalten. Derzeit ist das Format auf der Festplatte stabil und wird voraussichtlich nicht geändert.

ext4

ext4 (viertes erweitertes Dateisystem) ist ein Journaling-Dateisystem für Linux, das als eine Reihe abwärtskompatibler Erweiterungen von ext3 gestartet und später als Nachfolger von ext3 entwickelt wurde. Der offizielle Entwicklungsplan für ext4 wurde von Theodore Ts'o am Juni 2006 als Vorschlag und Plan für die zukünftige Entwicklung von ext2 / 3 veröffentlicht . Er ist seit Linux 2.6.19 (November 2006) in der Hauptlinie enthalten und seit Linux 2.6 als stabil markiert .28 (Dezember 2008).

XFS

XFS ist ein 64-Bit-Journaldateisystem, das 1993 von Silicon Graphics erstellt und seit 5.3 (1994) standardmäßig in IRIX verwendet wurde und 2001 auf Linux portiert wurde. Derzeit wird es von einigen Linux-Distributionen als Standarddateisystem verwendet. XFS bietet TRIM-Unterstützung für SSDs .

JFS

JFS ist ein 64-Bit-Journaldateisystem, das von IBM erstellt wurde. IBM führte JFS 1990 in AIX 3.1 ein. 1999 wurde es als Open Source veröffentlicht und die Portierung auf Linux begann. Die erste stabile Version von JFS für Linux wurde im Juni 2001 veröffentlicht. Sie war in Alan Cox Tree in 2.4.18pre9-ac4 und in Mainline in 2.5.6 (2002) enthalten. Im Jahr 2012 wurde TRIM Support zu JFS hinzugefügt.

2014 Benchmarks

Siehe auch


4

Wenn es in Ihrem Kernel verfügbar ist und Sie sich abenteuerlustig fühlen, sollten Sie NILFS in Betracht ziehen

Ansonsten verwenden ext4 aber Halterung mit noatime - siehe hier für weitere Tipps.


1
Klingt ähnlich wie btrfs.
Elazar Leibovich

4

Sie können ext4 mit der noloadder /etc/fstabDatei hinzugefügten Mount-Option verwenden. Dadurch verhält sich das Dateisystem auf Steroiden wie ext2. In der Tat, AFAIK ist dies, was Google in seinen Rechenzentren verwendet. Sie verlieren das Sicherheitsnetz, das die Datenaufzeichnung bietet, gewinnen jedoch an Geschwindigkeit und Lebensdauer für Ihre SSD.

Sie können es dauerhaft machen, indem Sie es tune2fs -O ^has_journalauf den nicht bereitgestellten Partitionen ausführen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.