Welches UNIX-Dateisystem verwenden und empfehlen Sie für Server?


7

Unter Windows World ist NTFS der König, aber in der UNIX-Welt gibt es heute viele Möglichkeiten: HFS +, ext3, ext4, zfs (vielleicht), reiserfs, reiser4 usw.

Was empfehlen Sie, warum und was sind Ihre Anmerkungen dazu?


1
Ich denke, die reiser-Dateisysteme sind jetzt ziemlich tot (kein Wortspiel beabsichtigt), weil sie schlecht mit ihrem Schöpfer und Namensvetter verbunden sind. (Mit anderen Worten, aus politischen, nicht technischen Gründen.)
Evan

"Ich denke, die reiser-Dateisysteme sind jetzt ziemlich tot" - ja, das ist es. Es war fantastisch für kleine Dateien ...
SCdF

Antworten:


10

Für Linux verwende ich ext3 zusätzlich zu LVM. Die Verwendung von LVM erleichtert das spätere Erweitern einer Partition, wenn ich mehr Speicherplatz benötige. Es gibt mehr Auswahlmöglichkeiten, aber meine Bedürfnisse waren noch nie so extrem, dass ich einen Leistungstest durchführen musste, um herauszufinden, was für meine Umstände am besten war.

Ein Grund für meine Überlegungen, an ext3 festzuhalten, ist, dass es als Standarddateisystem für viele Linux-Varianten eines der am gründlichsten getesteten in verschiedenen Situationen sein wird.

Jemand mit besonderen Anforderungen - zum Beispiel ein Hochleistungsserver oder ein Dateisystem, das eine ungewöhnlich große Anzahl von Dateien oder meist sehr kleine oder meist große Dateien enthalten muss - sollte ein paar verschiedene Dateisysteme ausprobieren, um herauszufinden, was seinen Anforderungen besser entspricht .


3
Stellen Sie sicher, dass Sie die Einstellung "Barriere" untersuchen, wenn Sie ein aufgezeichnetes Dateisystem wie ext3 über LVM verwenden. Ältere Kernelversionen hatten ein Problem, das (theoretisch) aufgrund von Problemen mit dem Ausschreiben des Journals zu einer Beschädigung des Dateisystems führen konnte. (mehr unter diesem Link en.wikipedia.org/wiki/Ext3#No_checksumming_in_journal )
Avery Payne

6

Wenn Sie eine USV verwenden und sehr sicher sind, dass es nicht zu plötzlichen Stromausfällen oder anderen Bedingungen kommt, die den Computer zum Herunterfahren zwingen, würde ich XFS in vielen Situationen empfehlen. Es ist für die meisten Anwendungen schnell, weist jedoch einige Schwachstellen bei der gleichzeitigen Verarbeitung vieler kleiner Dateien auf. Bei einem unkontrollierten Herunterfahren gehen jedoch häufig Daten verloren. Dieses Dateisystem ist unter Linux und IRIX verfügbar.

Ext3 ist die "stabilste" Wahl, da es seit vielen Jahren unter Linux läuft und über einen längeren Zeitraum praktisch keine Fehler mehr aufweist. Es leidet unter einigen Leistungs- und Raumeffizienzeinbußen, hauptsächlich aufgrund der Blockierung und nicht der Ausdehnung. Dieses Dateisystem ist unter Linux verfügbar.

ReiserFS (3) ist das, was ich persönlich benutze, da es bei unkontrollierten Abschaltungen (von denen mein Laptop viel sieht) ziemlich stabil ist sowie platzsparend und schnell. Wenn es jedoch zu Problemen kommt, kann sich der Inhalt mehrerer Dateien vermischen - ein mögliches Sicherheitsproblem. (Im Vergleich dazu setzt XFS beschädigte Dateien auf Null. Dies erschwert die Wiederherstellung, ist jedoch sicherer.) Dieses Dateisystem ist unter Linux verfügbar.

Ich empfehle Reiser4 zu vermeiden. Obwohl es schnell ist, ist es instabil (und ist es auch geworden), was teilweise darauf zurückzuführen ist, dass es vom offiziellen Kernel abgelehnt und außerhalb des Baums gehalten wird.

ZFS ist das neue Kind auf dem Block. Es ist performant und funktionsreich, aber relativ ungetestet. Es hat viele nützliche Aspekte, einer der größten ist das Schnappschießen. Dies kann verwendet werden, um eine Momentaufnahme des Dateisystems zu erstellen, die konsistent bleibt, während beispielsweise ein Sicherungsprogramm seine Daten archiviert. Dieses Dateisystem ist in Solaris und (bis zu einem gewissen Grad) in NetBSD verfügbar.

Auch wenn es sich nicht um ein Dateisystem handelt, würde ich für alle Linux-basierten Server empfehlen, alle Dateisysteme auf LVM, den logischen Volume-Manager, zu legen. Dies erleichtert die Datenträgerverwaltung erheblich. EVMS (das LVM intern verwendet) ist ebenfalls eine Option und etwas einfacher zu verwenden, wird jedoch seit einiger Zeit größtenteils nicht mehr gewartet.


1
XFS (IMHO, da ich auch LVM verwende) hat einen großen Nachteil - es kann nicht verkleinert werden.
Sonniger

Ja, das ist ein Grund, warum ich normalerweise Reiser3 benutze. Server sollten jedoch wahrscheinlich ziemlich stabil sein, was Hardware / Partitionierung im Laufe ihrer Lebensdauer betrifft (mit gelegentlichem Wachstum), im Gegensatz zu Desktop-Computern, die mehr Experimenten unterzogen werden.
eternaleye

In 8 Jahren habe ich noch nie Daten über XFS verloren, wie Sie es beschreiben (unkontrolliertes Herunterfahren). Ich habe diesen Mythos von vielen Menschen propagiert gesehen, von denen die meisten es besser wissen sollten (dh zuerst testen, später angeben) Natürlich hatten Daten eine Beschädigung, wenn Apps eine bestimmte Datei schrieben, aber nicht mehr, als wenn ein Dateisystem (oder ein Betriebssystem) unter den gleichen Bedingungen verwendet wurde. Das Ausschließen von Fehlern im Dateisystemtreiber als solches XFS ist nicht mehr und nicht weniger belastbar als die Hardware, auf der es ausgeführt wird.
Mihai Limbăşan

Zusätzlicher Hinweis: Ich habe dies mehrmals unter simulierten Workloads getestet, die vom Mediendateiserver (stabile Übertragungen mit hoher Bandbreite) bis zum ausgelasteten Mailserver (viele, viele, viele kleine Dateien) reichen, indem ich den großen roten Knopf gedrückt habe. XFS und EXT3 haben ungefähr die gleiche Datenmenge verloren. EXT3 wurde mit noatime data = order, XFS mit noatime, attr2, logbufs = 8, logbsize = 256k gemountet.
Mihai Limbăşan

Ich habe. Ich habe JFS auf meinem Laptop verwendet, als ich anfing, Linux zu verwenden. Das wurde mit XFS neu installiert, nachdem die Festplatte einen (nicht verwandten) Tod erlitten hatte. Ich hatte den katastrophalen Datenverlust, den ich zweimal beschrieben habe, als mein Laptop die Stromversorgung verlor, und bin schließlich zu Reiser3 gewechselt. Ich hatte verschiedene Probleme mit ReiserFS (einschließlich gelegentlich, dass Dateien nur von root gelesen werden können, aber verschiedene Berechtigungen haben, einschließlich a + rw).
eternaleye

6

Wenn zfs unter Solaris verfügbar ist, ist es der klare Gewinner.

Wenn xfs unter Linux nicht leicht verfügbar ist (z. B. RedHat Enterprise / CentOS), ist ext3 der klare Gewinner.

Wenn xfs unter Linux verfügbar ist, ist es der klare Gewinner.

Reiserfs war nie reif genug für einen ernsthaften Gebrauch und wird es jetzt nie sein. Das einzige in der Entwicklung befindliche Dateisystem, das versucht, seiner Funktionalität nahe zu kommen, ist btrfs.


1
+1 für die Erwähnung, dass RHEL kein xfs hat.
Cristian Ciupitu

4

Wirklich, ich würde für den Moment mit ext3 arbeiten, es ist für fast alles "in Ordnung", und wenn es nicht gut genug ist, möchten Sie wahrscheinlich detailliertere Nachforschungen anstellen, die sich auf Ihre spezifischen Bedürfnisse konzentrieren.

Wie auch immer, kurz gesagt:

  • ext3 = am meisten unterstützt, am häufigsten verwendet
  • ext4 = neuer, abwärtskompatibel mit ext3 (meistens), führt jedoch Datei-Commits auf eine bestimmte, möglicherweise nicht sichere Weise durch
  • xfs = ältestes (iirc), das noch verwendet wird, sehr stabil, sehr gut, nicht hoch verwendet, hat auch ein ähnliches Problem mit Datei-Commits wie ext4
  • reiserfs = etwas tot nach ... ahh, ja. Abgesehen von schlechten Witzen war es gut für viele kleine Dateien, aber nicht für viel anderes.
  • zfs = neu, lecker, verrückt stabil, verrückt belastbar. IMO ist wirklich nur für große Datenmengen nützlich, bei denen Sie wirklich wissen, was Sie tun, und bietet keine so großartige Linux-Unterstützung (nur FUSE).
  • jfs = eigentlich weiß ich nichts darüber.

Das Problem mit ext4, xfs und anderen besteht darin, wie sie Daten auf das Laufwerk übertragen und wann sie "leeren" ( die Daten tatsächlich festschreiben, anstatt das Festschreiben später zwischenzuspeichern). Sie können mehr darüber nachlesen, aber das Wesentliche ist, dass sie mit Ihren Daten wohl weniger sicher sind, aber schneller. Dies kann natürlich alles konfiguriert werden usw.


ext4 hat derzeit noch Fehler, die aufgespürt werden, daher würde ich es für eine Weile für einen stabilen Server belassen. Sagen Sie bis 2010, um sicherzugehen, dass es stabil und weit verbreitet ist.
Hamish Downer

2

Was ist die geplante Verwendung (und das Betriebssystem? Für ein Boot-Laufwerk oder für die Dateispeicherung?

Wenn Sie beispielsweise einen Mac ausführen, müssen Sie HFS + oder UFS für ein bootfähiges Laufwerk verwenden.

ZFS bietet Ihnen einen Leistungseinbruch, erhöht jedoch die Datenintegrität, bietet RAID-ähnliche Funktionen und ermöglicht das Erstellen eines einzelnen Volumes auf Festplatten unterschiedlicher Größe.


Ich glaube nicht, dass ZFS für Linux verfügbar (oder zumindest nicht "produktionsbereit") ist, nur für (offenes) SunOS, denke ich. Anscheinend gibt es einige Lizenzprobleme mit dem Code ...
Evan

Evan, ich denke, Sie haben vielleicht Solaris gemeint. <tongue-in-cheek> SunOS ist seit einiger Zeit veraltet. </ Zunge -in-cheek> Es ist jedoch erwähnenswert, dass NetBSD auch eine Implementierung hat und OSX einen schreibgeschützten ZFS-Treiber in Leopard hat.
eternaleye

Ja, ich meinte Solaris, danke. Ich glaube, es gibt eine (veraltete) FUSE-Implementierung von ZFS für Linux, die ebenfalls im Umlauf ist, aber für diese Diskussion nicht geeignet ist. Schade, ZFS klingt so, als ob es die Küchensynchronisation und alles beinhaltet ...
Evan

Evan, vielleicht möchten Sie BtrFS nachschlagen. Es zielt darauf ab, das meiste zu tun, was ZFS tut, und es befindet sich seit 2.6.29 im Kernel (allerdings noch nicht ganz fertig).
eternaleye

1

Halten Sie sich einfach von XFS fern, es sei denn, Sie haben eine USV. Ich habe viele, viele Dateien aufgrund von Stromausfällen oder erzwungenen Neustarts beschädigt. Wenn die Datei noch geöffnet ist, wird sie häufig beschädigt. Ein echtes Ärgernis, wenn es sich um eine kritische Systemkonfigurationsdatei handelt.

Ich würde im Allgemeinen mit EXT3 für Linux und HFS für Mac gehen.


1

Wenn Sie Enterprise Grade wollen und nicht unter Linux arbeiten, waren zfs und vxfs für mich absolut solide.

Für Linux würde ich ext3 oder xfs sagen. Wie immer sollten Sie Ihre Arbeitsbelastung und Anforderungen testen.


1

Beruflich verwende ich VxFS (Veritas Filesystem), da es mit HP-UX nativ ist, ebenso wie LVM. Die Verwendung von VxVM bietet einige Vorteile und andere Funktionen, ist aber auch gut.

Meine Vorliebe für Linux ist, mit XFS oder ext3 und möglicherweise LVM zu arbeiten. Ich sage möglicherweise, weil private und persönliche Systeme kleiner als Server sind und es nicht erforderlich ist, nicht die gesamte Festplatte zu verwenden oder das Laufwerk in ein Dutzend Partitionen zu partitionieren. LVM bietet in einer solchen Umgebung nichts. Wenn Sie jedoch über Terabyte-Laufwerke verfügen, kann dies hilfreich sein.

Wenn Sie Solaris verwenden, ist ZFS unschlagbar: Es ist wohl das fortschrittlichste Dateisystem unserer Zeit. Wenn es nur auf anderen Systemen verfügbar wäre ...


0

Wie andere gesagt haben, ist ZFS ganz nett. Wenn Sie nicht an der Verwendung einer Solaris-Version interessiert sind, gibt es mehrere Alternativen:

  • Linux
    • ZFS über FUSE
    • schlechteste Leistung
    • Die wenigsten Funktionen sind implementiert
  • BSD
    • FreeBSD & NetBSD haben ZFS geschützt
    • anständige Leistung
    • viele Funktionen implementiert
  • Nexenta
    • verwendet OpenSolaris Kernel + Debian / Ubuntu Userland
    • beste Leistung
    • Die meisten Funktionen sind im Wesentlichen nativ
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.