Zum Inhalt springen

Mdadm: Unterschied zwischen den Versionen

Aus Foxwiki
PatrickHunecke (Diskussion | Beiträge)
K PatrickHunecke verschob die Seite Linuxbefehl:mdadm nach Linux:Befehl:mdadm: Textersetzung - „Linuxbefehl:“ durch „Linux:Befehl:“
K Textersetzung - „line>“ durch „line copy>“
 
(126 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Category:Storage]]
'''mdadm''' - Werkzeug für Arbeiten am [[Linux/Software-RAID]]
[[Category:Linuxbefehle]]
 
[[Category:LPIC]]
== Beschreibung ==
'''mdadm''' - ('''m'''ulti '''d'''isk '''adm'''inistration)
 
; Administrator-Werkzeug für alle Arbeiten an Software-RAIDs
Durch die Angabe eines Schlüsselwortes wird ein bestimmter Modus eingeleitet, der für die ordnungsgemäße Verarbeitung der weiteren Optionen entscheidend ist
 
== Installation ==
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo apt install mdadm
</syntaxhighlight>
 
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1" line copy>
</syntaxhighlight>
 
=== Modi ===
; Syntax-Übersicht der Modi
{| class="wikitable options gnu"
! Modus !! Befehl !! Parameter !! Beschreibung
|-
| Assemble || --assemble || MD&#8209;DEVICE</br>OPTIONS</br>DEVICES || Startet ein bestimmtes Array mit den angegebenen Festplatten/Partitionen
|-
| Assemble || --assemble --scan || MD&#8209;DEVICE</br>OPTIONS || 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
|-
| Assemble || --assemble --scan  || OPTIONS || Durchsucht alle angeschlossenen Festplatten/Partitionen nach Superblöcken und startet die gefundenen Arrays
|-
| Create || --create || MD&#8209;DEVICE</br>OPTIONS</br>DEVICES || Anlegen/Definieren eines neues Arrays
|-
| Grow || --grow || MD&#8209;DEVICE</br>OPTIONS || Vergrößern/Verkleinern eines bestehenden Arrays
|-
| Monitor || --monitor || MD&#8209;DEVICE</br>OPTIONS</br>DEVICES|| Monitoring von einem oder allen md-devices, inkl.&nbsp;Reaktion auf Status-Veränderungen
|-
| Manage || ||  MD&#8209;DEVICE</br>OPTIONS</br>DEVICES|| Verwaltung eines RAIDs
|-
| Misc || || OPTIONS</br>DEVICES|| Sonstige Aufgaben
|}
 
; Hinweis
<blockquote>
* MD-DEVICES sind die RAID-Arrays
* DEVICES sind die am Array teilnehmenden Festplatten/Partitionen
</blockquote>
 
=== 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 sortable options gnu"
|-
! Unix !! GNU !! Parameter !! Beschreibung
|-
| || || ||
|-
|}
 
{|class="wikitable options"
! 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.&nbsp;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
|}
 
=== Parameter ===
 
=== Umgebungsvariablen ===
 
=== Exit-Status ===
 
== Anwendung ==
<syntaxhighlight lang="bash" highlight="1" line copy>
</syntaxhighlight>
 
=== 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 sd[ac]1
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm --create /dev/md0 --auto md --level=1 --raid-devices=4 /dev/sda1 /dev/sdc1
</syntaxhighlight>
 
==== RAID 6 ====
Hier sd[a-d]1
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm \
--create /dev/md0 \
--auto md \
--level=6 \
--raid-devices=4 \
/dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
</syntaxhighlight>
 
; Parameter
# sudo mdadm
# '''--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, und weitere)
# '''--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.&nbsp;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
<syntaxhighlight lang="bash" highlight="1" line copy>
/usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf
</syntaxhighlight>
 
=== 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, beispielsweise via Postfix als Satellitensystem
 
=== Problembehebung ===
 
== Konfiguration ==
 
=== Dateien ===
{| class="wikitable options"
|-
! Datei !! Beschreibung
|-
| [[/etc/mdadm.conf]] ||
|}
 
<noinclude>
 
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
 
=== Dokumentation ===
; Man-Page
# [[Mdadm/man]]
 
; Info-Pages
 
=== Links ===
==== Projekt ====
 
==== Weblinks ====
# https://linux.die.net/man/8/mdadm
# https://wiki.ubuntuusers.de/Software-RAID
 
{{DEFAULTSORT:mdadm}}
{{DISPLAYTITLE:mdadm}}
 
[[Kategorie:Linux/RAID/Tools]]
[[Kategorie:Linux/Befehl]]
 
</noinclude>

Aktuelle Version vom 11. Mai 2025, 13:47 Uhr

mdadm - Werkzeug für Arbeiten am Linux/Software-RAID

Beschreibung

mdadm - (multi disk administration)

Administrator-Werkzeug für alle Arbeiten an Software-RAIDs

Durch die Angabe eines Schlüsselwortes wird ein bestimmter Modus eingeleitet, der für die ordnungsgemäße Verarbeitung der weiteren Optionen entscheidend ist

Installation

sudo apt install mdadm

Aufruf

Modi

Syntax-Übersicht der Modi
Modus Befehl Parameter Beschreibung
Assemble --assemble MD‑DEVICE
OPTIONS
DEVICES
Startet ein bestimmtes Array mit den angegebenen Festplatten/Partitionen
Assemble --assemble --scan MD‑DEVICE
OPTIONS
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
Assemble --assemble --scan OPTIONS Durchsucht alle angeschlossenen Festplatten/Partitionen nach Superblöcken und startet die gefundenen Arrays
Create --create MD‑DEVICE
OPTIONS
DEVICES
Anlegen/Definieren eines neues Arrays
Grow --grow MD‑DEVICE
OPTIONS
Vergrößern/Verkleinern eines bestehenden Arrays
Monitor --monitor MD‑DEVICE
OPTIONS
DEVICES
Monitoring von einem oder allen md-devices, inkl. Reaktion auf Status-Veränderungen
Manage MD‑DEVICE
OPTIONS
DEVICES
Verwaltung eines RAIDs
Misc OPTIONS
DEVICES
Sonstige Aufgaben
Hinweis
  • 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
Unix GNU Parameter Beschreibung
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

Parameter

Umgebungsvariablen

Exit-Status

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 sd[ac]1

sudo mdadm --create /dev/md0 --auto md --level=1 --raid-devices=4 /dev/sda1 /dev/sdc1

RAID 6

Hier sd[a-d]1

sudo mdadm \
--create /dev/md0 \
--auto md \
--level=6 \
--raid-devices=4 \
/dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
Parameter
  1. sudo mdadm
  2. --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, und weitere)
  3. --auto md - Erzeugt ein "klassisches" Verbundgerät ohne Vor-Partitionierung (diese können bei Bedarf ab Kernelversion 2.6.28 trotzdem partitioniert werden)
  4. --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
  5. --raid-devices - Die Anzahl der Einzelgeräte, aus denen das RAID bestehen soll
  6. /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

/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, beispielsweise via Postfix als Satellitensystem

Problembehebung

Konfiguration

Dateien

Datei Beschreibung
/etc/mdadm.conf


Anhang

Siehe auch

Dokumentation

Man-Page
  1. Mdadm/man
Info-Pages

Links

Projekt

Weblinks

  1. https://linux.die.net/man/8/mdadm
  2. https://wiki.ubuntuusers.de/Software-RAID