Mdadm: Unterschied zwischen den Versionen
K Textersetzung - „Category:Linuxbefehle“ durch „“ |
K Textersetzung - „Kurzbeschreibung“ durch „Beschreibung“ |
||
(60 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{DISPLAYTITLE:mdadm}} | |||
[[ | '''mdadm''' ('''m'''ulti '''d'''isk '''adm'''inistration) ist das Administrator-Werkzeug für alle Arbeiten an Software-RAIDs. | ||
=mdadm= | |||
*Durch die Angabe eines Schlüsselwortes wird ein bestimmter Modus eingeleitet, der für die ordnungsgemäße Verarbeitung der weiteren Optionen entscheidend ist. | |||
*Eine komplette Beschreibung zu Modi und Optionen befindet sich in der [https://linux.die.net/man/8/mdadm Manpage zu mdadm]. | |||
===Installation=== | |||
*Folgendes Paket muss installiert werden, um ein Software-RAID erstellen zu können: | |||
** mdadm | |||
== Modi == | |||
{|class="wikitable" | |||
|+ Syntax-Übersicht der Modi | |||
|Nr. || Syntax|| Modus|| Beschreibung | |||
|- | |||
| 1|| '''--assemble''' MD-DEVICE OPTIONS DEVICES|| Assemble|| Startet ein bestimmtes Array mit den angegebenen Festplatten/Partitionen. | |||
|- | |||
| 1.1|| '''--assemble --scan''' MD-DEVICE OPTIONS|| Assemble|| Startet das angegebene Array; sucht dazu automatisch nach Superblöcken auf allen angeschlossenen Festplatten/Partitionen und verwendet diese, sofern der Array-Name in den gefundenen Metadaten übereinstimmt. | |||
|- | |||
| 1.2|| '''--assemble --scan''' OPTIONS|| Assemble|| Durchsucht alle angeschlossenen Festplatten/Partitionen nach Superblöcken und startet die gefundenen Arrays. | |||
|- | |||
| 2.|| '''--create''' MD-DEVICE OPTIONS DEVICES|| Create|| Anlegen/Definieren eines neues Arrays. | |||
|- | |||
| 3.|| '''--grow''' MD-DEVICE OPTIONS|| Grow|| Vergrößern/Verkleinern eines bestehenden Arrays. | |||
|- | |||
| 4.|| '''--monitor''' MD-DEVICE OPTIONS DEVICES|| Monitor|| Monitoring von einem oder allen md-devices, inkl. Reaktion auf Status-Veränderungen. | |||
|- | |||
| 5.|| MD-DEVICE OPTIONS DEVICES|| Manage|| Verwaltung eines RAIDs. | |||
|- | |||
| 6.|| OPTIONS DEVICES|| Misc|| Sonstige Aufgaben | |||
|} | |||
* MD-DEVICES sind die RAID-Arrays. | |||
* DEVICES sind die am Array teilnehmenden Festplatten/Partitionen. | |||
== Optionen == | |||
* Neben dem einzelnen Modus gibt es eine ganze Reihe von Optionen, die unterschiedliche Funktionen bei den einzelnen Modi haben. | |||
* Eine komplette Beschreibung zu Modus und Optionen befindet sich in der [https://linux.die.net/man/8/mdadm Manpage zu mdadm]. | |||
* Auswahl einiger Optionen mit dem zugeordneten Modus, wie er in den Beispielen angewandt wird. | |||
{|class="wikitable" | |||
|+ | |||
| Option|| Beschreibung|| gültig bei Modi | |||
|- | |||
| --add|| Hinzufügen weiterer Festplatten/Partitionen|| 1, 6 | |||
|- | |||
| --backup-file=...|| Erzeugt eine Backup-Datei - darf nicht im Array liegen|| 1, 3 | |||
|- | |||
| --detail|| Details zu den Arrays ausgeben|| 6 | |||
|- | |||
| --fail|| Status eines Array verändern|| 5 | |||
|- | |||
| --force|| Erzwinge die Ausführung, auch wenn es unsinnig erscheint|| 1, 2, 6 | |||
|- | |||
| --help|| Ausgabe eines generellen Hilfetextes - hinter eine Option gestellt = spezielle Optionshilfe|| 1, 2, 3, 4, 5, 6 | |||
|- | |||
| --level=...|| Bezeichnet den RAID-Typ|| 1, 2, 3 | |||
|- | |||
| --query|| Überprüfen, ob das angegebene Device ein md-Device ist bzw. zu einem Array gehört(e)|| 6 | |||
|- | |||
| --raid-device=...|| Anzahl der aktiven am Array teilnehmenden Festplatten/Partitionen|| 1, 2 | |||
|- | |||
| --remove|| Festplatten/Partitionen die aus dem Array entnommen werden sollen|| 5 | |||
|- | |||
| --stop|| Stoppen eines Arrays|| 4, 5, 6 | |||
|- | |||
| --spare-device=...|| Anzahl der inaktiven (Ersatz-) Festplatten/Partitionen eines Arrays|| 2, 3 | |||
|- | |||
| --test|| Testen der angegebenen Optionen|| 5, 6 | |||
|- | |||
| --uuid=...|| Die UUID des Arrays|| 1 | |||
|- | |||
| --verbose|| Mehr Ausgabe-Informationen erzeugen - kann 2x gesetzt werden|| 4, 5, 6 | |||
|- | |||
| --zero-superblock|| Löschen des RAID-Superblocks|| 6 | |||
|} | |||
=mdadm.conf= | |||
*Alle Informationen zum RAID werden auf jeder verwendeten Partition in den sog. [[Linux/Software-RAID#RAID Superblock|Superblock]] geschrieben (auch Metadaten genannt). | |||
*Der Kernel sucht beim Starten automatisch nach diesen Superblöcken und startet alle voll funktionsfähigen RAIDs, ohne dass eine Konfigurationsdatei nötig ist. | |||
*Trotzdem kann es sinnvoll sein, eine Konfigurationsdatei zu erstellen, z. B. wenn man über Ausfälle am RAID per E-Mail benachrichtigt werden möchte. | |||
*Über die Konfigurationsdatei können sehr viele Details der RAIDs angepasst werden. | |||
*Generell gilt bei neu aufgesetzten RAIDs allerdings: Je weniger, desto besser. | |||
*Mehr Info: [https://linux.die.net/man/5/mdadm.conf Manpage von mdadm.conf]. | |||
=Anwendung= | |||
== RAID anlegen== | |||
# mdadm --create /Pfad_zum_RAID/Name_des_RAIDs --auto md --level=Angabe_des_RAID-Levels --raid-devices=Anzahl_der_Festplatten Angabe_der_Partitionen | |||
=== RAID 1 === | |||
* Hier sda1 und sdc1. | |||
# mdadm --create /dev/md0 --auto md --level=1 --raid-devices=4 /dev/sda1 /dev/sdc1 | |||
=== RAID 6 === | |||
* Hier sda1, sdb1, sdc1 und sdd1. | |||
# mdadm --create /dev/md0 --auto md --level=6 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 | |||
* Die Parameter nochmals im Einzelnen: | |||
** '''--create /dev/md0''' - Erzeugt ein neues Verbundgerät unter der Bezeichnung md0. Falls bereits Verbundgeräte vorhanden sind, muss ein anderer freier Bezeichner gewählt werden (md1,md2, etc.). | |||
** '''--auto md''' - Erzeugt ein "klassisches" Verbundgerät ohne Vor-Partitionierung (diese können bei Bedarf ab Kernelversion 2.6.28 trotzdem partitioniert werden). | |||
** '''--level=''' - Die Art des RAID-Verbundes. RAID 1 im ersten Beispiel, im zweiten RAID 5. Eine Übersicht über die möglichen RAID-Level gibt die Tabelle RAID-Level | |||
** '''--raid-devices''' - Die Anzahl der Einzelgeräte, aus denen das RAID bestehen soll. | |||
** '''/dev/sde1 /dev/sde2 ...''' - Die einzelnen Geräte, die zusammengefasst werden sollen. | |||
* Die Reihenfolge der Bezeichner, bzw. idealerweise die der entsprechenden physischen Geräte sollte man sich aufschreiben, falls im Notfall das RAID von Hand neu zusammengesetzt werden muss. | |||
* Die nötigen Initialisierungsmaßnahmen laufen nun selbstständig im Hintergrund ab. | |||
* Das neu erstellte Blockgerät md0 kann jedoch sofort benutzt werden und das System darf auch währenddessen normal heruntergefahren oder neu gestartet werden. | |||
==Erstellen der mdadm.conf== | |||
*Die Konfigurationsdatei kann bequem mit einem Skript von mdadm erstellt werden und enthält dann direkt alle Definitionen aller momentan aktiven RAIDs: | |||
# su -c "/usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf" | |||
== Alarmierung == | |||
Über Ausfälle am RAID per E-Mail benachrichtigen | |||
* In der mdadm.conf muss dafür in der Zeile... | |||
'''MAILADDR root''' | |||
* ...root durch die gewünschte E-Mail-Adresse ersetzt werden. | |||
'''MAILADDR xzy@abc.org''' | |||
* Dafür muss der E-Mail-Versand durch das System eingerichtet sein, z. B. via Postfix als Satellitensystem. | |||
= Links = | |||
== Interne Links == | |||
# TODO | |||
== Externe Links == | |||
# [https://linux.die.net/man/8/mdadm https://linux.die.net/man/8/mdadm] | |||
# [https://wiki.ubuntuusers.de/Software-RAID/ https://wiki.ubuntuusers.de/Software-RAID/] | |||
[[Kategorie:Linux/Storage]] | |||
[[Kategorie:Linux/Befehl]] | |||
{{DEFAULTSORT:mdadm}} |
Aktuelle Version vom 19. Oktober 2024, 13:33 Uhr
mdadm (multi disk administration) ist das Administrator-Werkzeug für alle Arbeiten an Software-RAIDs.
mdadm
- Durch die Angabe eines Schlüsselwortes wird ein bestimmter Modus eingeleitet, der für die ordnungsgemäße Verarbeitung der weiteren Optionen entscheidend ist.
- Eine komplette Beschreibung zu Modi und Optionen befindet sich in der Manpage zu mdadm.
Installation
- Folgendes Paket muss installiert werden, um ein Software-RAID erstellen zu können:
- mdadm
Modi
Nr. | Syntax | Modus | Beschreibung |
1 | --assemble MD-DEVICE OPTIONS DEVICES | Assemble | Startet ein bestimmtes Array mit den angegebenen Festplatten/Partitionen. |
1.1 | --assemble --scan MD-DEVICE OPTIONS | Assemble | Startet das angegebene Array; sucht dazu automatisch nach Superblöcken auf allen angeschlossenen Festplatten/Partitionen und verwendet diese, sofern der Array-Name in den gefundenen Metadaten übereinstimmt. |
1.2 | --assemble --scan OPTIONS | Assemble | Durchsucht alle angeschlossenen Festplatten/Partitionen nach Superblöcken und startet die gefundenen Arrays. |
2. | --create MD-DEVICE OPTIONS DEVICES | Create | Anlegen/Definieren eines neues Arrays. |
3. | --grow MD-DEVICE OPTIONS | Grow | Vergrößern/Verkleinern eines bestehenden Arrays. |
4. | --monitor MD-DEVICE OPTIONS DEVICES | Monitor | Monitoring von einem oder allen md-devices, inkl. Reaktion auf Status-Veränderungen. |
5. | MD-DEVICE OPTIONS DEVICES | Manage | Verwaltung eines RAIDs. |
6. | OPTIONS DEVICES | Misc | Sonstige Aufgaben |
- MD-DEVICES sind die RAID-Arrays.
- DEVICES sind die am Array teilnehmenden Festplatten/Partitionen.
Optionen
- Neben dem einzelnen Modus gibt es eine ganze Reihe von Optionen, die unterschiedliche Funktionen bei den einzelnen Modi haben.
- Eine komplette Beschreibung zu Modus und Optionen befindet sich in der Manpage zu mdadm.
- Auswahl einiger Optionen mit dem zugeordneten Modus, wie er in den Beispielen angewandt wird.
Option | Beschreibung | gültig bei Modi |
--add | Hinzufügen weiterer Festplatten/Partitionen | 1, 6 |
--backup-file=... | Erzeugt eine Backup-Datei - darf nicht im Array liegen | 1, 3 |
--detail | Details zu den Arrays ausgeben | 6 |
--fail | Status eines Array verändern | 5 |
--force | Erzwinge die Ausführung, auch wenn es unsinnig erscheint | 1, 2, 6 |
--help | Ausgabe eines generellen Hilfetextes - hinter eine Option gestellt = spezielle Optionshilfe | 1, 2, 3, 4, 5, 6 |
--level=... | Bezeichnet den RAID-Typ | 1, 2, 3 |
--query | Überprüfen, ob das angegebene Device ein md-Device ist bzw. zu einem Array gehört(e) | 6 |
--raid-device=... | Anzahl der aktiven am Array teilnehmenden Festplatten/Partitionen | 1, 2 |
--remove | Festplatten/Partitionen die aus dem Array entnommen werden sollen | 5 |
--stop | Stoppen eines Arrays | 4, 5, 6 |
--spare-device=... | Anzahl der inaktiven (Ersatz-) Festplatten/Partitionen eines Arrays | 2, 3 |
--test | Testen der angegebenen Optionen | 5, 6 |
--uuid=... | Die UUID des Arrays | 1 |
--verbose | Mehr Ausgabe-Informationen erzeugen - kann 2x gesetzt werden | 4, 5, 6 |
--zero-superblock | Löschen des RAID-Superblocks | 6 |
mdadm.conf
- Alle Informationen zum RAID werden auf jeder verwendeten Partition in den sog. Superblock geschrieben (auch Metadaten genannt).
- Der Kernel sucht beim Starten automatisch nach diesen Superblöcken und startet alle voll funktionsfähigen RAIDs, ohne dass eine Konfigurationsdatei nötig ist.
- Trotzdem kann es sinnvoll sein, eine Konfigurationsdatei zu erstellen, z. B. wenn man über Ausfälle am RAID per E-Mail benachrichtigt werden möchte.
- Über die Konfigurationsdatei können sehr viele Details der RAIDs angepasst werden.
- Generell gilt bei neu aufgesetzten RAIDs allerdings: Je weniger, desto besser.
- Mehr Info: Manpage von mdadm.conf.
Anwendung
RAID anlegen
# mdadm --create /Pfad_zum_RAID/Name_des_RAIDs --auto md --level=Angabe_des_RAID-Levels --raid-devices=Anzahl_der_Festplatten Angabe_der_Partitionen
RAID 1
- Hier sda1 und sdc1.
# mdadm --create /dev/md0 --auto md --level=1 --raid-devices=4 /dev/sda1 /dev/sdc1
RAID 6
- Hier sda1, sdb1, sdc1 und sdd1.
# mdadm --create /dev/md0 --auto md --level=6 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
- Die Parameter nochmals im Einzelnen:
- --create /dev/md0 - Erzeugt ein neues Verbundgerät unter der Bezeichnung md0. Falls bereits Verbundgeräte vorhanden sind, muss ein anderer freier Bezeichner gewählt werden (md1,md2, etc.).
- --auto md - Erzeugt ein "klassisches" Verbundgerät ohne Vor-Partitionierung (diese können bei Bedarf ab Kernelversion 2.6.28 trotzdem partitioniert werden).
- --level= - Die Art des RAID-Verbundes. RAID 1 im ersten Beispiel, im zweiten RAID 5. Eine Übersicht über die möglichen RAID-Level gibt die Tabelle RAID-Level
- --raid-devices - Die Anzahl der Einzelgeräte, aus denen das RAID bestehen soll.
- /dev/sde1 /dev/sde2 ... - Die einzelnen Geräte, die zusammengefasst werden sollen.
- Die Reihenfolge der Bezeichner, bzw. idealerweise die der entsprechenden physischen Geräte sollte man sich aufschreiben, falls im Notfall das RAID von Hand neu zusammengesetzt werden muss.
- Die nötigen Initialisierungsmaßnahmen laufen nun selbstständig im Hintergrund ab.
- Das neu erstellte Blockgerät md0 kann jedoch sofort benutzt werden und das System darf auch währenddessen normal heruntergefahren oder neu gestartet werden.
Erstellen der mdadm.conf
- Die Konfigurationsdatei kann bequem mit einem Skript von mdadm erstellt werden und enthält dann direkt alle Definitionen aller momentan aktiven RAIDs:
# su -c "/usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf"
Alarmierung
Über Ausfälle am RAID per E-Mail benachrichtigen
- In der mdadm.conf muss dafür in der Zeile...
MAILADDR root
- ...root durch die gewünschte E-Mail-Adresse ersetzt werden.
MAILADDR xzy@abc.org
- Dafür muss der E-Mail-Versand durch das System eingerichtet sein, z. B. via Postfix als Satellitensystem.
Links
Interne Links
- TODO