Unionfs vs Aufs vs Overlayfs vs mhddfs, welches verwende ich

14

Ich habe zufällig über das Union-Dateisystem gelesen, mit dem ein Benutzer mehrere Dateisysteme gleichzeitig übereinander mounten kann.

Ich habe jedoch Probleme bei der Entscheidung, welche ich verwenden soll (Unionfs vs Aufs vs Overlayfs vs mhddfs) und warum, da ich nirgendwo konkrete Informationen zu diesem Thema gefunden habe. Ich weiß zum Beispiel, dass OverlayFS im Mainstream-Linux-Kernel übernommen wurde, was bedeutet, dass es möglicherweise eine breitere Akzeptanz erhält. Würde mich freuen, wenn mir jemand eine Perspektive geben würde.

Außerdem kann ich keinen denkbaren Anwendungsfall für das Union-Dateisystem über etwas wie LVM (wie von Benutzern in separaten Fragen empfohlen ) oder RAID-Setup finden, außer in der Tatsache, dass LVM die Formatierung aller Laufwerke erfordert, was möglicherweise nicht wünschenswert ist, wenn Sie dies bereits tun haben wertvolle Daten auf den Laufwerken.

David Okwii
quelle
Generell warte ich immer noch auf eine Antwort auf unix.stackexchange.com/questions/282393/union-mount-on-linux
Gilles 'SO- hör auf böse zu sein'

Antworten:

3

Hier sind einige Gedanken - ich lerne das noch und werde es aktualisieren, wenn ich gehe.

So wählen Sie das Union-Dateisystem aus

Es gibt zwei Möglichkeiten, dies zu betrachten:

  • Wie vergleichen sich die Funktionen der einzelnen?
  • Welchen sollte ich für einige häufige Anwendungsfälle wählen?

Ich werde unionfs / unionfs-fuse / overlayfs / aufs / mergerfs vergleichen, wobei letzteres ein Ersatz für mhddfs ist.

Eigenschaften von jedem

Entwicklungsstatus

Distribution / Kernel-Unterstützung

Es gibt Dateisysteme im Kernelmodus und im Benutzersystemmodus, wobei letztere unter FUSE ausgeführt werden. Kernel-Modi haben weniger Overhead (es gibt Overhead, wenn Code zwischen User Space und Kernel Space wechselt), aber der einzige, der derzeit im Linux-Kernel unterstützt wird, sind Overlays . Dateisysteme im Benutzermodus sind für Distributionen einfacher zu verpacken.

  • unionfs und aufs benötigen kernel patches
  • unionfs wird nicht von Debian vertrieben (der Rest ist)
  • unionfs-fuse und mergerfs basieren auf FUSE, sodass keine zusätzlichen Module im Kernel erforderlich sind
  • overlayfs ist seit 3.18 Teil des Kernels (Debian Stretch)

Beim Schreiben kopieren

Dies bezieht sich auf den folgenden Anwendungsfall für Live-CDs:

  • mergerfs hat keine Kopie beim Schreiben
  • Die anderen tun es

Anwendungsfälle

Schreibgeschützter Root / Anwendungsfall der Live-CD

Die Idee ist, eine schreibgeschützte CD-ROM / Partition eines Linux-Systems zu haben. Das Union-Dateisystem lässt es für den Benutzer so aussehen, als wäre es ein Lese- / Schreibsystem, damit er Änderungen vornehmen kann. Es gibt ein Lese- / Schreib-Dateisystem (z. B. eine tmpfs-RAM-Disk), in dem das "Delta" aller vom Benutzer vorgenommenen Änderungen gespeichert ist, jedoch nicht der vollständige Snapshot.

Hier würde jedes der Union-Dateisysteme funktionieren.

Docker-Anwendungsfall

Ich bin mir bewusst, dass dies ein Hauptanwendungsfall ist, kenne aber die Details nicht - kann jemand eine Anleitung dazu geben?

Festplatten zusammenführen

Beispielsweise könnten Sie zwei Sätze von /homeVerzeichnissen auf verschiedenen Dateisystemen haben. Oder Sie aktualisieren Ihren Heimcomputer möglicherweise mit einer zweiten Festplatte und möchten ein einziges logisches Volume.

Hier möchten Sie eigentlich kein Copy-on-Write, daher ist mergerfs möglicherweise die beste Wahl.

Union-Dateisystem versus LVM für das Festplatten-Pooling

Ich werde einige Anwendungsfälle auflisten, die mit Union-Dateisystemen erreicht werden können, jedoch nicht mit LVM:

Wenn Sie ein vorhandenes System mit einer zweiten Festplatte aktualisieren, ist mergerfs möglicherweise besser, da Sie bei LVM die erste Festplatte neu formatieren müssen, um die Daten auf der Festplatte zu entfernen. Ein Union-Dateisystem würde diesen Schritt vermeiden.

LVM teilt eine Datei möglicherweise auf zwei physische Festplatten auf (unter der Annahme von RAID 0), sodass Sie sie verlieren, wenn eine Festplatte ausfällt.

Einige Benutzer möchten beispielsweise ihr /homeVerzeichnis auf einem USB-Stick aufbewahren, den sie mitnehmen können.

Im Anwendungsfall einer virtuellen Partition auf zwei physischen Festplatten müssen Sie sich mit LVM keine Gedanken darüber machen, ob Dateien auf der einen oder der anderen Festplatte gespeichert werden. Mit mergefs kann das System automatisch auswählen, welches für Sie verfügbar ist, je nachdem, wie viel freier Speicherplatz verfügbar ist.

Bob Mortimer
quelle