RAID verwendet Festplattenspiegelung oder Festplatten-Striping-Methoden, eine Spiegelung auf mehr als einem Laufwerk würde ähnliche Daten kopieren. Partition Striping ermöglicht die Verteilung von Daten auf viele Laufwerke. Die Speicherkapazität jedes Laufwerks ist in Einheiten unterteilt, die von einem Sektor (512 Byte) bis zu mehreren Megabyte reichen. RAID-Stufen über RAID 0 bieten Schutz vor nicht behebbaren Lesefehlern im Feld und vor einem vollständigen Ausfall des physischen Laufwerks.
Die RAID-Geräte werden über den Anwendungstreiber md bereitgestellt. Das Linux-Software-RAID-Array unterstützt derzeit RAID 0 (Strip), RAID 1 (Spiegel), RAID 4, RAID 5, RAID 6 und RAID 10. Mdadm ist ein Linux-Dienstprogramm zum Steuern und Verwalten von RAID-Geräten für Anwendungen. Mehrere Kernbetriebsarten von mdadm sind kompiliert, erstellt, erstellt, verfolgt, überwacht, wächst, inkrementell und automatisch erkannt. Der Name leitet sich von den Knoten der mehreren Geräte (md) ab, die es steuert oder verwaltet. Sehen wir uns an, wie Sie mit mdadm verschiedene Arten von Raid-Arrays erstellen.
So erstellen Sie ein RAID 0-Array:
RAID 0 ist der Mechanismus, durch den Daten in Blöcke unterteilt werden, und diese Blöcke sind über verschiedene Speichergeräte wie Festplatten verteilt. Bedeutet, dass jede Disk einen Teil der Daten enthält und dass beim Zugriff auf diese Daten mehrere Disks referenziert werden. In Raid 0 ist die Leistung ausgezeichnet, da Blöcke entfernt werden, aber aufgrund des Fehlens einer Spiegelungsstrategie würde ein einziger Ausfall des Geräts alle Daten zerstören.
Um zu beginnen, müssen Sie zuerst die Komponentengeräte mit dem folgenden Befehl identifizieren:
[E-Mail-geschützt]:~ $ lsblk -Ö NAME, GRÖSSE, TYP
Wir haben zwei Discs ohne Dateisystem, jede 50 GB, wie wir im Screenshot sehen können. In diesem Fall wurden diesen Geräten für diese Sitzung die IDs /dev/ch1 und /dev/ch2 zugewiesen. Dies sind Rohkomponenten, die wir verwenden werden, um das Array zu erstellen.
Um diese Komponenten zum Erstellen eines RAID 0-Arrays zu verwenden, geben Sie sie im Befehl –create an. Sie müssen den Systemnamen definieren, den Sie erstellen möchten (in unserem Fall / dev / mch0), den RAID-Level, also 0, und die Anzahl der Geräte:
[E-Mail-geschützt]:~ $ sudo mdadm –create –verbose /developer/mch0 –Level=0–raid devices=2 /developer/ch1 /developer/ch2
Durch Testen des /proc/mdstat-Protokolls können wir garantieren, dass das RAID erfolgreich erstellt wurde:
[E-Mail-geschützt]:~ $ cat /proc/mdstat
Das /dev/mch0-System wurde mit den Geräten /dev/ch2 und /dev/ch1 im RAID 0-Setup erstellt. Mounten Sie nun das Dateisystem auf diesem Array mit dem folgenden Befehl:
[E-Mail-geschützt]:~ $ sudo mkfs.ext4 -F /developer/mch0Erstellen Sie nun einen Einhängepunkt und hängen Sie das Dateisystem mit den folgenden Befehlen ein:
[E-Mail-geschützt]:~ $ sudo mkdir -P /mnt/mch0[E-Mail-geschützt]:~ $ sudo Assemble /developer/mch0 /mnt/mch0
Überprüfen Sie, ob neuer Speicherplatz verfügbar ist oder nicht:
[E-Mail-geschützt]:~ $ df -H -x devtmpfs -x tmpfs
Jetzt müssen wir die Datei /etc/mdadm/mdadm.conf ändern, um sicherzustellen, dass die Liste beim Booten automatisch neu zusammengestellt wird. Sie durchsuchen automatisch das aktuelle Array, verbinden die Datei und aktualisieren das anfängliche RAM-Dateisystem mit der folgenden Befehlsfolge:
[E-Mail-geschützt]:~ $ sudo mdadm –Detail –Scan | sudo tea -a /Etc/mdadm/mdadm.conf[email protected]:~ $ sudo update-initramfs -u
Um beim Booten automatisch zu mounten, fügen Sie neue Dateisystem-Mount-Optionen in der Datei etc / fstab hinzu, die verfügbar sind:
Bei jedem Bootvorgang kann Ihr RAID 0-Array jetzt automatisch hinzugefügt und gemountet werden.
Erstellen eines RAID 5-Arrays:
Raid-5-Arrays werden erstellt, indem die Daten mit verschiedenen Geräten zusammengestrippt werden. Ein gemessener Paritätsblock ist Teil jedes Streifens. Der Paritätsblock und die restlichen Blöcke werden verwendet, um die fehlenden Daten zu identifizieren, falls das Gerät ausfällt. Das System, das den Paritätsblock empfängt, wird rotiert, so dass für jedes Gerät eine ausgeglichene Summe von Paritätsinformationen vorhanden ist. Beim Teilen von Informationen zur Parität kann der Speicherwert einer Disc für die Parität verwendet werden. In einem beschädigten Zustand erleidet RAID 5 sehr schlechte Ergebnisse.
Um das RAID 5-Array zu erstellen, müssen wir zuerst die Komponentengeräte identifizieren, die wir in RAID 0 identifiziert haben. Aber in RAID 5 sollten wir mindestens 3 Speichergeräte haben. Finden Sie die Kennungen für diese Geräte mit dem folgenden Befehl:
[E-Mail-geschützt]:~ $ lsblk -Ö NAME, GRÖSSE, TYP
Verwenden Sie den Befehl –create, um ein RAID 5-Array zu erstellen, aber verwenden Sie in diesem Fall den Wert 5 für level.
[E-Mail-geschützt]:~ $ sudo mdadm –create –verbose /developer/md0 –Level=5–raid devices=3 /developer/sda /developer/sdb /developer/sdc
Dies kann einige Zeit dauern, auch während dieser Zeit kann das Array verwendet werden. Sie können den Build-Fortschritt sehen, indem Sie das /proc/mdstat-Protokoll testen:
[E-Mail-geschützt]:~ $ cat /proc/mdstat
Erstellen Sie nun das Dateisystem und hängen Sie es auf dem Array ein, indem Sie die folgende Befehlsfolge ausführen:
[E-Mail-geschützt]:~ $ sudo mkfs.ext4 -F /developer/md0[E-Mail-geschützt]:~ $ sudo mkdir -P /mnt/md0
[E-Mail-geschützt]:~ $ sudo assemblieren / Entwickler/md0 /mnt/md0
Nachdem Sie diese gemountet haben, können Sie prüfen, ob sie zugänglich ist oder nicht:
[E-Mail-geschützt]:~ $ df -H -x devtmpfs -x tmpfsUm RAID 5-Arrays bei jedem Start automatisch zusammenzustellen und zu mounten, müssen Sie das initramfs anpassen und das kürzlich erstellte Dateisystem zur fstab-Datei hinzufügen, indem Sie die folgenden Befehle ausführen:
Diplom:
RAID bietet Effizienz und Stabilität durch die Kombination mehrerer Festplatten. Dadurch erhält das System eine Festplatte mit großer Kapazität und viel höherer Geschwindigkeit als normale partitionierte Laufwerke. Andererseits werden Redundanz und Fehlertoleranz nicht unterstützt, und wenn ein Laufwerk ausfällt, gehen alle Daten verloren.