So richten Sie RAID1 unter Linux ein
- 753
- 233
- Aileen Dylus
RAID steht für redundante Array von kostengünstigen Festplatten; Abhängig von der von uns eingerichteten RAID -Ebene können wir Datenreplikation und/oder Datenverteilung erreichen. Ein RAID -Setup kann über dedizierte Hardware oder über Software erreicht werden. In diesem Tutorial sehen wir, wie Sie eine RAID1 (MILROR) über Software unter Linux implementieren können
Die mdadm Dienstprogramm.
In diesem Tutorial lernen Sie:
- Die Besonderheiten der am häufigsten verwendeten RAID -Werte
- So installieren Sie MDADM auf den Hauptlinux -Verteilungen
- So konfigurieren Sie einen RAID1 mit zwei Scheiben
- So ersetzen Sie eine Festplatte im RAID -Array
Softwareanforderungen und Konventionen verwendet
Kategorie | Anforderungen, Konventionen oder Softwareversion verwendet |
---|---|
System | Verteilung unabhängig |
Software | mdadm |
Andere | Wurzelberechtigungen |
Konventionen | # - Erfordert, dass gegebene Linux -Commands mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mithilfe von verwendet werden können sudo BefehlUS |
Ein kurzer Überblick über die am häufigsten verwendeten RAID -Werte
Bevor wir mit unserem Tutorial beginnen und sehen, wie ein Software -RAID1 -Setup unter Linux implementiert wird mdadm, Es ist eine gute Idee, eine kurze Zusammenfassung der am häufigsten verwendeten RAID -Levels zu machen und zu sehen, was ihre Besonderheiten sind.
Raid0
Das Hauptziel ist es, die Leistung zu verbessern. In dieser Ebene oder in dieser Ebene haben wir zwei oder mehr Scheiben, die gleich groß sein sollten. Die Daten werden alternativ auf den Scheiben (Streifen) verteilt, und dies verringert die Les- und Schreibzeiten.
RAID0 -Diagramm
Raid1
RAID1 (Spiegelung) ist das, was wir in diesem Tutorial implementieren werden: In dieser RAID.
RAID1 -Diagramm
Raid5
Um ein Setup mit dieser RAID-Ebene zu erstellen, sind mindestens drei Festplatten erforderlich, und N-1-Scheiben können Daten enthalten. Dieses Setup kann das Ausfall einer Festplatte ohne Datenverlust bewältigen. Genau wie RAID0 in diesen Setup -Daten gestreift und auf mehreren Festplatten verteilt sind. Der Hauptunterschied ist das auch Datenparitätsinformationen existieren und wird auch gestreift. Was sind Datenparitätsinformationen? Grundsätzlich alle Scheiben
enthalten im RAID -Array Informationen zum Datenstatus. Solche Informationen ermöglichen den Wiederaufbau der Daten, wenn einer der Festplatten fehlschlägt.
RAID5 -Diagramm
Raid6
RAID6 funktioniert ähnlich wie RAID5; Der Hauptunterschied besteht darin, dass dieses Setup das Vorhandensein von beinhaltet zwei Paritätsdisks, so dass es mit dieser RAID. Mindestens vier Festplatten sind erforderlich, um diese Konfiguration zu erreichen.
Raid6 -Diagramm
Installieren von MDADM
MDADM ist das Dienstprogramm, das Software -RAID unter Linux verwaltet. Es ist in allen wichtigen Verteilungen erhältlich. Auf Debian und seinen Ableitungen können es mit dem folgenden Befehl installiert werden:
$ sudo apt-Get Update && sudo apt-Get Installieren Sie MDADM
Auf der Red Hat -Familie der Verteilungen können wir die verwenden DNF
Paket-Manager:
$ sudo dnf install mdadm
Auf Archlinux können wir das Paket mit dem installieren Pacman
Paket-Manager:
$ sudo pacman -sy mdadm
Sobald die Software installiert ist, können wir fortfahren und unser RAID1 -Setup erstellen.
Erstellen des RAID
Für dieses Tutorial werde ich in einer virtuellen Umgebung mit einem Debian „Buster“ -System und zwei zuvor erstellten virtuellen Festplatten arbeiten, die Teil des RAID1 -Setups sein werden. Solche Festplatten werden als anerkannt als VDB
Und VDC
, Wie Sie aus der Ausgabe der Ausgabe sehen können LSBLK
Befehl:
SR0 11: 0 1 1024m 0 ROM VDA 254: 0 0 7G 0 Festplatte ├─vda1 254: 1 0 6g 0 Teil / ├─vda2 254: 2 0 1k 0 Teil └─vda5 254: 5 0 1021m 0 Teil [Swap] VDB 254: 16 0 1G 0 Festplatte VDC 254: 32 0 1G 0 Festplatte
Verteilung der Scheiben
Obwohl es möglich ist, den RAID mit Rohscheiben direkt zu erstellen. Um eine solche Aufgabe auszuführen, werden wir verwenden geteilt
. Das erste, was wir tun möchten, ist, eine Partitionstabelle zu erstellen. Für dieses Beispiel werden wir verwenden mbr
Trenntabelle, aber gpt
Einen werden in realen Szenarien benötigt, wenn sie Scheiben von 2 TB oder größer verwenden. Um eine Festplatte zu initialisieren, können wir den folgenden Befehl ausführen:
$ sudo parted -s /dev /vdb mklabel msdos
Jetzt können wir eine Partition erstellen, die den gesamten verfügbaren Platz nimmt:
$ sudo parted -s /dev /vdb mkPart primär 1mib 100%
Wir können jetzt die RAID fd
- "Linux Raid Autodetekte"):
$ sudo trennte -s /dev /vdb set 1 raid auf
In diesem Fall haben wir an der gearbeitet /dev/vdb
Geräte sollten wir natürlich auch die gleichen Operationen auch auf der /dev/vdc
Scheibe.
RAID1 einrichten1
Sobald wir die Festplatten initialisiert und verteilt haben, die wir verwenden können mdadm
So erstellen Sie das eigentliche Setup. Wir müssen nur den folgenden Befehl ausführen:
$ sudo mdadm \ --verbose \ --create /dev /md0 \-Level = 1 \-RAID-DEVICES = 2 \ /dev /vdb1 /dev /vdc1
Lassen Sie uns den obigen Befehl analysieren. Zunächst benutzten wir die --ausführlich
Option, um den Befehl auszugeben weitere Informationen zu den durchgeführten Vorgängen.
Wir verwendeten mdadm
In "Create -Modus" haben das die Grundlage des Grundes bestanden --erstellen
Option, die den Namen des Geräts bereitstellt, das erstellt werden sollte (/dev/md0
in diesem Fall). Wir haben als angegeben, auf welchem Niveau für den RAID mit verwendet werden soll --eben
, und die Anzahl der Geräte, die ein Teil davon sein sollten --Raid-Geräte
. Schließlich haben wir den Weg der Geräte zur Verfügung gestellt, die verwendet werden sollten.
Sobald wir den Befehl ausgeführt haben, sollten wir die folgende Ausgabe visualisieren:
MDADM: Hinweis: Dieses Array hat Metadaten zu Beginn und ist möglicherweise nicht als Startgerät geeignet. Wenn Sie planen, '/Boot' auf diesem Gerät zu speichern.x metadaten oder verwenden -metadata = 0.90 MDADM: Größe auf 1046528K Setzen Sie weiter Array erstellen? y
In diesem Fall können wir die Frage positiv beantworten und das Array weiter erstellen:
MDADM: Versäumnis von Version 1.2 Metadaten Mdadm: Array /Dev /MD0 gestartet.
Um Informationen und den Status des erstellten RAID -Setups zu visualisieren, können wir ausführen mdadm
mit dem --Detail
Option, übergeben Sie den Namen des Geräts, das wir überprüfen möchten. In diesem Fall ist die Ausgabe die folgende:
$ sudo mdadm -detail /dev /md0 /dev /md0: Version: 1.2 Erstellungszeit: Fr 23. April 11:16:44 2021 RAID Level: RAID1 Array Größe: 1046528 (1022.00 MIB 1071.64 MB) Gebrauchte Entwicklungsgröße: 1046528 (1022.00 MIB 1071.64 MB) RAID -Geräte: 2 Gesamtgeräte: 2 Persistenz: Superblock ist persistente Aktualisierungszeit: Fr 23. April 11:17:04 2021 Zustand: Saubere aktive Geräte: 2 Arbeitsgeräte: 2 Fehlgeschlagene Geräte: 0 Ersatzgeräte: 0 Konsistenzrichtlinie: Resync -Name: Debian: 0 (lokal, um Debian zu hosten) UUID: 4721f921: BB82187C: 487DEFB8: E960508A Ereignisse: 17 Hauptfach kleiner Raiddevice -Zustand 0 254 17 0 Active Sync /Dev /VDB1 1 254 33 1 Active Sync /Dev /VDC1
Mit dem --Detail
Option können wir Informationen über den Überfall als Ganzes sammeln. Wenn wir Informationen über jede einzelne Festplatte wünschen, die Mitglied des Setups ist, können wir verwenden --prüfen
Stattdessen und bestehen Sie die Geräte als Argument. In diesem Fall würden wir zum Beispiel rennen:
$ sudo mdadm -examine /dev /vdb1 /dev /vdc1
Der Befehl würde eine ähnliche Ausgabe erzeugen, die dem folgenden ähnlich ist:
/dev/vdb1: Magie: A92B4EFC Version: 1.2 Feature Map: 0x0 Array UUID: 4721f921: BB82187C: 487DEFB8: E960508A Name: Debian: 0 (lokal zu Host Debian) Erstellungszeit: Fr. 2093056 (1022.00 MIB 1071.64 MB) Arraygröße: 1046528 (1022.00 MIB 1071.64 MB) Datenversatz: 2048 Sektoren Super -Offset: 8 Sektoren Unbenutzt Raum: Vor = 1968 Sektoren, After = 0 Sektoren Status: Clean Device UUID: A9575594: 40C0784B: 394490E8: 6EB7E9A3 UPDATE: Fri 23.33. Schlechtes Blockprotokoll: 512 Einträge, die bei Offset 16 Sektoren verfügbar sind: 51AFC54D - Richtige Ereignisse: 17 Geräterolle: Active Device 0 Array Status: AA ('A' == Active, '.'== fehlt,' R '== Ersetzen) /dev /vdc1: Magic: A92B4EFC Version: 1.2 Feature Map: 0x0 Array UUID: 4721f921: BB82187C: 487DEFB8: E960508A Name: Debian: 0 (lokal zu Host Debian) Erstellungszeit: Fr. 2093056 (1022.00 MIB 1071.64 MB) Arraygröße: 1046528 (1022.00 MIB 1071.64 MB) Datenversatz: 2048 Sektoren Super -Offset: 8 Sektoren Unbenutztes Raum: Vor = 1968 Sektoren, After = 0 Sektoren Status: Clean Device UUID: B0CF8735: 5FE765C0: 6C269C2F: 3777D11D Update Zeit: Fri 23.33. Schlechtes Blockprotokoll: 512 Einträge, die bei Offset 16 Sektoren verfügbar sind: 28C3066F - Richtige Ereignisse: 17 Geräterolle: Active Device 1 Array Status: AA ('A' == Active, '.'== fehlt,' R '== Ersetzen)
Verwenden des RAID -Geräts
Im vorherigen Abschnitt haben wir ein RAID1 -Setup mit zwei (virtuellen) Festplatten erstellt:/dev/vdb
Und /dev/vdc
. Das von uns erstellte RAID -Gerät heißt /dev/md0
. Um es verwenden zu können, sollten wir ein Dateisystem darauf erstellen. Um die zu verwenden ext4
, Dateisystem zum Beispiel würden wir ausführen:
$ sudo mkfs.ext4 /dev /md0
Sobald das Dateisystem erstellt wurde, sollten wir es irgendwo montieren und es als normales Blockgerät verwenden, um es zu verwenden. Damit das System das Gerät beim Start automatisch montiert, sollten wir einen Eintrag dafür in der Datei /etc /fstab erstellen. Dabei sollten wir uns auf das RAID -Gerät beziehen Uuid, Da sich sein Weg beim Neustart ändern kann. Um die UUID des Geräts zu finden, können wir die verwenden LSBLK
Befehl:
$ LSBLK -O UUID /DEV /MD0 UUID 58FF8624-E122-419E-8538-D948439A8C07
Ersetzen einer Festplatte im Array
Stellen Sie sich nun vor, eines der Festplatten im Array scheitert. Wie sollen wir vorgehen? Wie wir sehen werden, können wir es aus dem Array entfernen, ohne Daten zu verlieren. Angenommen, die gescheiterte Festplatte ist /dev/vdc
, Wir können den folgenden Befehl ausgeben, um ihn als solches zu markieren:
$ sudo mdadm -Manager /dev /md0 - -fail /dev /vdc1
Die Ausgabe des obigen Befehls ist:
mdadm: set /dev /vdc1 fehlerhaft in /dev /md0
Wir können den Status des RAID überprüfen, um zu bestätigen, dass das Gerät als fehlerhaft markiert wurde:
$ sudo mdadm -detail /dev /md0 /dev /md0: Version: 1.2 Erstellungszeit: Fr 23. April 11:16:44 2021 RAID Level: RAID1 Array Größe: 1046528 (1022.00 MIB 1071.64 MB) Gebrauchte Entwicklungsgröße: 1046528 (1022.00 MIB 1071.64 MB) RAID -Geräte: 2 Gesamtgeräte: 2 Persistenz: Superblock ist beharrliche Updatezeit: Fr 23. April 15:01:36 2021 Zustand: sauber, verschlechtert aktiv Richtlinie: Resync Name: Debian: 0 (lokal, um Debian zu hosten) UUID: 4721f921: BB82187C: 487DEFB8: E960508A Ereignisse: 19 Number Major Minor Moll RaidDevice State 0 254 17 0 Active Sync /Dev /VDB1 - 0 0 1 entfernt 1 254 33 - 33 - fehlerhaft /dev /vdc1
Haben Sie sehen, dass es jetzt nur noch einen gibt? aktives Gerät, Und /dev/vdc1
Zustand
Ist: Defekt. Um nun die Festplatte aus dem Array zu entfernen, können wir ausführen:
$ sudo mdadm -Manmanage /dev /md0 -remove /dev /vdc1
Durch Passieren --verwalten
Wir arbeiten mit mdadm
im Modus "verwalten"; In diesem Modus können wir Aktionen wie das Entfernen fehlerhafter Festplatten oder das Hinzufügen neuer. Wenn alles wie erwartet läuft, sollte das Gerät „heiß aufgerichtet“ werden:
MDADM: Hot entfernt /dev /vdc1 von /dev /md0
Wir sollten jetzt die neue Festplatte formatieren, die wir verwenden werden, um die fehlerhafte zu ersetzen, wie wir es zu Beginn dieses Tutorials für die anderen beiden getan haben. Wir könnten auch eine Verknüpfung verwenden, die in der Verwendung des sfdisk
Befehl. Wenn wir diesen Befehl mit dem ausführen -D
Option (kurz für --entsorgen
), es wird Informationen über die Partitionen eines Geräts, das wir als Argument verabschieden. Solche Informationen können als Sicherung verwendet werden und das Setup replizieren. Wir können die Ausgabe in eine Datei umleiten oder sie direkt in einer Pipeline verwenden. Angenommen, die neue Festplatte ist /dev/vdd
, Wir würden rennen:
$ sudo sfdisk -d /dev /vdb | sudo sfdisk /dev /vdd
Sobald die neue Festplatte verteilt und bereit ist, können wir sie mit dem folgenden Befehl zu unserem RAID1 -Array hinzufügen:
$ sudo mdadm -Manager /dev /md0 --add /dev /vdd1
Wenn wir jetzt den Status des RAID -Geräts überprüfen, können wir feststellen, dass es auf dem von uns hinzugefügten Ersatzgerät „umgebaut“ wird:
$ sudo mdadm -detail /dev /md0 /dev /md0: Version: 1.2 Erstellungszeit: Fr 23. April 11:16:44 2021 RAID Level: RAID1 Array Größe: 1046528 (1022.00 MIB 1071.64 MB) Gebrauchte Entwicklungsgröße: 1046528 (1022.00 MIB 1071.64 MB) RAID -Geräte: 2 Gesamtgeräte: 2 Persistenz: Superblock ist persistente Updatezeit: Fr 23. April 15:29:45 2021 Zustand: sauber, verschlechtert, aktive Geräte wiederherstellen: 1 Arbeitsgeräte: 2 Fehlgeschlagene Geräte: 0 Ersatzgeräte: 0 Ersatzgeräte: 1 Konsistenzpolitik: Resync -Wiederaufbaustatus: 19% Vollständiger Name: Debian: 0 (lokal für Host Debian) UUID: 4721f921: BB82187C: 487DEFB8: E960508A Ereignisse: 26 Nummer Major Moll RaidDevice State 0 254 17 0 Active Sync /Dev /VDB1 2 2 254 49 1 Ersatzaufbau /dev /vdd1
Aus der Ausgabe des Befehls können wir sehen, dass der Staat als „sauber, verschlechtert, wiederhergestellt“ und der gemeldet wird /dev/vdd1
Die Partition wird als „Ersatzaufbau“ gemeldet. Sobald der Wiederaufbauprozess abgeschlossen ist, wird er in "aktive Synchronisierung" verwandelt.
Schlussfolgerungen
In diesem Tutorial haben wir einen kurzen Überblick über die am häufigsten verwendeten RAID -Levels gesehen, wie man eine Software -RAID1 mit zwei Scheiben mit dem erstellt mdadm
Dienstprogramm, wie Sie den Status des RAID -Geräts und jeder einzelnen Festplatten im Array überprüfen. Wir haben auch gesehen, wie man eine fehlerhafte Festplatte entfernen und ersetzt. Denken Sie immer daran, dass RAID1 uns die Datenreduktion erreichen, aber nicht als Backup betrachtet werden dürfen!
Verwandte Linux -Tutorials:
- Ubuntu Spiegel
- Dinge zu installieren auf Ubuntu 20.04
- Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
- Eine Einführung in Linux -Automatisierung, Tools und Techniken
- Dinge zu tun nach der Installation Ubuntu 22.04 Jammy Quallen…
- Verschachtelte Schleifen in Bash -Skripten
- Linux -Konfigurationsdateien: Top 30 am wichtigsten
- Linux -Download
- Mint 20: Besser als Ubuntu und Microsoft Windows?
- Kann Linux Viren bekommen?? Erforschung der Verwundbarkeit von Linux…
- « So generieren und unterstützen Sie einen GPG -Tastatur unter Linux
- So synchronisieren Sie Dateien und Verzeichnisse über verschiedene Geräte mit Syncthing unter Linux »