Eigentlich denke ich, Wikipedia erklärt es besser als die eigentlichen Dokumente. Hier ist der Text aus dem Artikel.
Der Linux-Kernel-Software-RAID-Treiber (md genannt, für "multiple device") kann zum Aufbau eines klassischen RAID 1 + 0-Arrays verwendet werden, aber auch (seit Version 2.6.9) als Single Level [4] mit einigen interessanten Erweiterungen [ 5]. Das standardmäßige "Near" -Layout, bei dem jeder Chunk n-mal in einem k-Way-Stripe-Array wiederholt wird, entspricht der standardmäßigen RAID-10-Anordnung, erfordert jedoch nicht, dass n k geteilt wird. Zum Beispiel würde ein n2-Layout auf 2, 3 und 4 Laufwerken so aussehen:
2 drives 3 drives 4 drives
-------- ---------- --------------
A1 A1 A1 A1 A2 A1 A1 A2 A2
A2 A2 A2 A3 A3 A3 A3 A4 A4
A3 A3 A4 A4 A5 A5 A5 A6 A6
A4 A4 A5 A6 A6 A7 A7 A8 A8
.. .. .. .. .. .. .. .. ..
Das Beispiel mit 4 Laufwerken ist mit einem Standard-RAID-1 + 0-Array identisch, während das Beispiel mit 3 Laufwerken eine Software-Implementierung von RAID-1E ist. Das Beispiel mit zwei Laufwerken entspricht RAID 1. Der Treiber unterstützt auch ein "Fern" -Layout, bei dem alle Laufwerke in f Abschnitte unterteilt sind. Alle Blöcke werden in jedem Abschnitt wiederholt, jedoch um ein Gerät versetzt. Beispiel: f2-Layouts auf Arrays mit 2 und 3 Laufwerken sehen folgendermaßen aus:
2 drives 3 drives
-------- --------------
A1 A2 A1 A2 A3
A3 A4 A4 A5 A6
A5 A6 A7 A8 A9
.. .. .. .. ..
A2 A1 A3 A1 A2
A4 A3 A6 A4 A5
A6 A5 A9 A7 A8
.. .. .. .. ..
Dies ist für die Striping-Leistung eines gespiegelten Arrays ausgelegt. Sequentielle Lesevorgänge können gestreift werden, wie bei RAID-0, zufällige Lesevorgänge sind etwas schneller (möglicherweise 10-20% aufgrund der Verwendung der schnelleren äußeren Sektoren der Datenträger und geringerer durchschnittlicher Suchzeiten), und sequentielle und zufällige Schreibvorgänge sind ungefähr gleich leistungsfähig zu anderen gespiegelten Überfällen. Das Layout eignet sich gut für Systeme, bei denen häufiger gelesen wird als geschrieben, was auf vielen Systemen sehr häufig der Fall ist. Das erste 1 / f jedes Laufwerks ist ein Standard-RAID-0-Array. Auf diese Weise erhalten Sie Striping-Leistung auf einem gespiegelten Satz von nur 2 Laufwerken. Die Optionen nah und fern können gleichzeitig verwendet werden. Die Blöcke in jedem Abschnitt sind um n Geräte versetzt. Zum Beispiel speichert n2 f2 layout 2 × 2 = 4 Kopien von jedem Sektor, benötigt also mindestens 4 Laufwerke:
A1 A1 A2 A2 A1 A1 A2 A2 A3
A3 A3 A4 A4 A3 A4 A4 A5 A5
A5 A5 A6 A6 A6 A6 A7 A7 A8
A7 A7 A8 A8 A8 A9 A9 A10 A10
.. .. .. .. .. .. .. .. ..
A2 A2 A1 A1 A2 A3 A1 A1 A2
A4 A4 A3 A3 A5 A5 A3 A4 A4
A6 A6 A5 A5 A7 A8 A6 A6 A7
A8 A8 A7 A7 A10 A10 A8 A9 A9
.. .. .. .. .. .. .. .. ..
Ab Linux 2.6.18 unterstützt der Treiber auch ein Offset-Layout, bei dem jeder Streifen mehrmals wiederholt wird. Beispiel: o2-Layouts auf Arrays mit 2 und 3 Laufwerken sind wie folgt angeordnet:
2 drives 3 drives
-------- --------
A1 A2 A1 A2 A3
A2 A1 A3 A1 A2
A3 A4 A4 A5 A6
A4 A3 A6 A4 A5
A5 A6 A7 A8 A9
A6 A5 A9 A7 A8
.. .. .. .. ..
Hinweis: k ist die Anzahl der Laufwerke, n #, f # und o # sind Parameter in der Option mdadm --layout. Linux kann mit dem md-Treiber (0, 1, 4, 5, 6) auch andere Standard-RAID-Konfigurationen erstellen.