Zum Inhalt springen

Linux/RAID/Fehlerbehebung: Unterschied zwischen den Versionen

Aus Foxwiki
Die 5 zuletzt angesehenen Seiten:  IPv6 » Use-Case » IPv6/Header » systemctl » Linux/RAID/Fehlerbehebung
Robertquies (Diskussion | Beiträge)
K Textersetzung - „line>“ durch „line copy>“
 
(40 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Datenträgerausfall=
'''Linux/RAID/Fehlerbehebung'''
 
==Details ermitteln==
 
*Dieses Beispiel zeigt eine ausgefallene Platte in einem RAID 6.


== Beschreibung ==
== Datenträgerausfall ==
=== Details ermitteln ===
Ausgefallene Platte in einem RAID 6
<syntaxhighlight lang="bash" highlight="1" line copy>
  Personalities : [raid6] [raid5] [raid4] [raid1] [linear] [multipath] [raid0] [raid10]
  Personalities : [raid6] [raid5] [raid4] [raid1] [linear] [multipath] [raid0] [raid10]
  md2 : active raid6 sdj1[7] sdi1[6] sdh1[5] sdg1[4] sdd1[3] sda1[0] sdb1[1] sdc1[2]
  md2 : active raid6 sdj1[7] sdi1[6] sdh1[5] sdg1[4] sdd1[3] sda1[0] sdb1[1] sdc1[2]
      3418688000 blocks super 1.2 level 6, 512k chunk, algorithm 2 [9/8] [UUUUUUUU_]
3418688000 blocks super 1.2 level 6, 512k chunk, algorithm 2 [9/8] [UUUUUUUU_]


  unused devices: <none>
  unused devices: <none>
</syntaxhighlight>


*In diesem Fall wurde das fehlerhafte Gerät bereits automatisch entfernt.
In diesem Fall wurde das fehlerhafte Gerät bereits automatisch entfernt
 
*Genauere Details, u.a. den Namen des defekten Geräts kann mit mdadm ermittelt werden:
 
# mdadm --detail /dev/md2
 
==Datenträger wechseln==
 
Achtung!
Bei einem RAID 0 äußert sich der Ausfall einer Platte im Totalausfall des gesamten RAID- Verbunds.
Das RAID 0 kann daher nicht mit den folgenden Anweisungen repariert werden, sondern muss neu aufgesetzt werden und die hoffentlich vorhandene Datensicherung eingespielt werden.
 
*Ist das defekte Gerät (hier im Beispiel /dev/sdk1) ermittelt, kann die entsprechende Datenträger ausgetauscht werden:
 
*Falls der Kernel das Gerät noch nicht aus dem Verbund entfernt hat (d.h. es wird beim Befehl mdadm --detail noch aufgeführt), muss es zunächst aus dem Verbund entfernt werden:
 
# mdadm /dev/md2 --remove /dev/sdk1
 
*Nun kann die entsprechende Platte gewechselt werden.
 
*Ist eine entsprechende Austauschplatte eingebaut, muss diese zunächst partitioniert werden.
 
*Die neue Partition muss mindestens die gleiche Anzahl an Sektoren aufweisen, wie die bereits genutzten Partitionen.
 
*Von einer bestehenden Platte erhält man die Sektorenzahl der Partitionen (hier am Beispiel von /dev/sda) mittels:
 
# parted /dev/sda u s print 
 
 
*Ist die neue Platte entsprechend partitioniert, wird die neue Partition zum RAID-Verbund hinzugefügt (hier am Beispielaustausch von /dev/sdk1 in /dev/md2):


# mdadm /dev/md2 --add /dev/sdk1
Genauere Details, u.a. den Namen des defekten Geräts, können mit mdadm ermittelt werden
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm --detail /dev/md2
</syntaxhighlight>


*Im Hintergrund beginnt nun ein Rebuild, aus den noch vorhandenen Partitionen wird also der Inhalt für die neue Partition berechnet und geschrieben.
=== Datenträger wechseln ===
; Achtung
<blockquote>
Bei einem RAID 0 äußert sich der Ausfall einer Platte im Totalausfall des gesamten RAID- Verbunds. Das RAID 0 kann daher nicht mit den folgenden Anweisungen repariert werden, sondern muss neu aufgesetzt werden und die hoffentlich vorhandene Datensicherung eingespielt werden
</blockquote>


*Je nach RAID-Level und Größe dauert ein Rebuild mehrere Stunden bis Tage.
Ist das defekte Gerät (hier im Beispiel /dev/sdk1) ermittelt, kann die entsprechende Datenträger ausgetauscht werden


*Das System darf währenddessen neu gestartet oder heruntergefahren werden.
Falls der Kernel das Gerät noch nicht aus dem Verbund entfernt hat (d.h. es wird beim Befehl mdadm --detail noch aufgeführt), muss es zunächst aus dem Verbund entfernt werden
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm /dev/md2 --remove /dev/sdk1
</syntaxhighlight>


*Ein Systemabsturz kann jedoch zu Datenverlust führen. Manchmal lässt sich der Vorgang beschleunigen.
Nun kann die entsprechende Platte gewechselt werden
* Ist eine entsprechende Austauschplatte eingebaut, muss diese zunächst partitioniert werden
* Die neue Partition muss mindestens die gleiche Anzahl an Sektoren aufweisen, wie die bereits genutzten Partitionen


Hinweis:
Von einer bestehenden Platte erhält man die Sektorenzahl der Partitionen (hier am Beispiel von /dev/sda) mittels
Wurden Partitionen einer Platte von verschiedenen RAIDs genutzt, dann kann es vorkommen, dass eine verwendete Datenträger teilweise defekt ist und sich z.B. die Partition von md0 im Status [U_] befindet, während alle anderen im Status [UU] sind.
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo parted /dev/sda u s print
</syntaxhighlight>


*In diesem Fall müssen diese mit dem Befehl...
Ist die neue Platte entsprechend partitioniert, wird die neue Partition zum RAID-Verbund hinzugefügt (hier am Beispielaustausch von /dev/sdk1 in /dev/md2)
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm /dev/md2 --add /dev/sdk1
</syntaxhighlight>


# mdadm /dev/mdX --fail /dev/sdXY
Im Hintergrund beginnt nun ein Rebuild, aus den noch vorhandenen Partitionen wird also der Inhalt für die neue Partition berechnet und geschrieben
* Je nach RAID-Level und Größe dauert ein Rebuild mehrere Stunden bis Tage
* Das System darf währenddessen neu gestartet oder heruntergefahren werden
* Ein Systemabsturz kann jedoch zu Datenverlust führen. Manchmal lässt sich der Vorgang beschleunigen


*...alle einzeln in den Modus [U_] versetzt werden.
; Hinweis
<blockquote>
Wurden Partitionen einer Platte von verschiedenen RAIDs genutzt, dann kann es vorkommen, dass eine verwendete Datenträger teilweise defekt ist und sich beispielsweise die Partition von md0 im Status [U_] befindet, während alle anderen im Status [UU] sind
</blockquote>


=Bootprobleme=
In diesem Fall müssen diese mit dem Befehl..
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm /dev/mdX --fail /dev/sdXY
</syntaxhighlight>


GRUB 2: unknown Filesystem
...alle einzeln in den Modus [U_] versetzt werden


*Falls das System nicht bootet, nachdem man es auf ein RAID 1 kopiert, die /etc/fstab angepasst, die grub.cfg und die mdadm.conf korrekt erscheinen sowie das initramfs aktualisiert wurde, kann es helfen, GRUB 2 erneut zu installieren.
== Bootprobleme ==
*Dabei muss auf die Art der Partitionstabelle geachtet werden.
<syntaxhighlight lang="bash" highlight="1" line copy>
*Die obige Anleitung nutzt GPT-Partitionstabellen.
GRUB 2: unknown Filesystem
</syntaxhighlight>


=RAID startet nicht=
Falls das System nicht bootet, nachdem man es auf ein RAID 1 kopiert, die /etc/fstab angepasst, die grub.cfg und die mdadm.conf korrekt erscheinen sowie das initramfs aktualisiert wurde, kann es helfen, GRUB 2 erneut zu installieren
* Dabei muss auf die Art der Partitionstabelle geachtet werden
* Die obige Anleitung nutzt GPT-Partitionstabellen


mdadm: Cannot open /dev/sdXY: Device or resource busy
== RAID startet nicht ==
<syntaxhighlight lang="bash" highlight="1" line copy>
mdadm: Cannot open /dev/sdXY: Device or resource busy
</syntaxhighlight>


*Falls beim Erstellen eines RAIDs diese Meldung erscheint und mit den Partitionen bereits einmal ein RAID erstellt wurde, muss zunächst der alte Verbund aufgelöst werden.
Falls beim Erstellen eines RAIDs diese Meldung erscheint und mit den Partitionen bereits einmal ein RAID erstellt wurde, muss zunächst der alte Verbund aufgelöst werden
 
=Fehler beim Update des Kernels nach Datenträgertausch=


== Fehler beim Update des Kernels nach Datenträgertausch ==
<syntaxhighlight lang="bash" highlight="1" line copy>
  Grub-Konfigurationsdatei wird generiert …
  Grub-Konfigurationsdatei wird generiert …
  grub-probe: Warnung: Physischer Datenträger »(null)« konnte nicht gefunden werden.
  grub-probe: Warnung: Physischer Datenträger ''(null)'' konnte nicht gefunden werden
  Einige Module könnten im Core-Abbild fehlen..
  Einige Module könnten im Core-Abbild fehlen.
  /usr/sbin/grub-probe: Warnung: Physischer Datenträger »(null)« konnte nicht gefunden werden. Einige Module könnten im Core-Abbild fehlen..
  /usr/sbin/grub-probe: Warnung: Physischer Datenträger ''(null)'' konnte nicht gefunden werden. Einige Module könnten im Core-Abbild fehlen.
</syntaxhighlight>


*Treten nach dem Tausch einer Datenträger diese Fehler auf muss die Device Map von Grub neu geschrieben werden.
Treten nach dem Tausch einer Datenträger diese Fehler auf muss die Device Map von Grub neu geschrieben werden
*Dies geschieht mit:


# grub-mkdevicemap  
Dies geschieht mit
<syntaxhighlight lang="bash" highlight="1" line copy>
grub-mkdevicemap
</syntaxhighlight>


*Geht alles glatt, darf keine Ausgabe erscheinen. Anschließend noch einmal Grub aktualisieren:
Geht alles glatt, darf keine Ausgabe erscheinen. Anschließend noch einmal Grub aktualisieren
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo update-grub
</syntaxhighlight>


# update-grub
Nun sollte der Fehler behoben sein und die Grubkonfiguration sich ohne Fehler aktualisieren
 
*Nun sollte der Fehler behoben sein und die Grubkonfiguration sich ohne Fehler aktualisieren.


== Probelm RAID 127 ==
== Probelm RAID 127 ==
===mdadm.conf Anlegen===
; mdadm.conf anlegen
# mdadm --detail --scan >> /etc/mdadm.conf
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
</syntaxhighlight>


===Ermitteln der UUID des Raid Arrays.===
; Ermitteln der UUID des Raid Arrays
# mdadm --detail /dev/md0
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo mdadm --detail /dev/md0
</syntaxhighlight>


===Anpassung der mdadm.conf===
; Anpassung der mdadm.conf
* Die Option "name" aus der mdadm.conf entfernen
Die Option "name" aus der mdadm.conf entfernen
# vi /etc/mdadm/mdadm.conf
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo vi /etc/mdadm/mdadm.conf
  ARRAY /dev/md0 UUID=XXXXXXXX:XXXXXXXX:XXXXXXXX:XXXXXXXX
  ARRAY /dev/md0 UUID=XXXXXXXX:XXXXXXXX:XXXXXXXX:XXXXXXXX
</syntaxhighlight>


===Aktualisierung der initramfs===
; Aktualisierung der initramfs
# update-initramfs -u
<syntaxhighlight lang="bash" highlight="1" line copy>
 
sudo update-initramfs -u -k all
===System neu starten===
</syntaxhighlight>
 
=Nach Änderung der Reihenfolge der Datenträger=
*Z.B. bei Austausch des Controllers, Umstecken der Kabel, Anschließen eines USB-Sticks, etc. ließe sich das RAID nicht mehr starten.


*Auch dann nicht, wenn in den Superblöcken der RAID-Laufwerke die richtigen Metadaten (unabhängig von den Buchstabenbezeichnungen) gespeichert sind.
; System neu starten
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo systemctl reboot
</syntaxhighlight>


*Dieses Problem lässt sich nur dann beheben, wenn die falschen Angaben in der mdadm.conf korrigiert oder explizit übergangen werden.
== Datenträger-Reihenfolge ==
; RAID kann nicht gestartet werden


*Damit die Konfiguration beim Booten verfügbar ist, muss schließlich noch die Initrd aktualisiert werden:
Änderung der Datenträger-Reihenfolge
* Austausch eines Controllers
* Umstecken der Kabel
* Anschließen eines USB-Sticks
* [...]


# update-initramfs -u -k all
Auch dann nicht
* wenn in den Superblöcken der RAID-Laufwerke die richtigen Metadaten (unabhängig von den Buchstabenbezeichnungen) gespeichert sind


=weitere Artikel zum Thema=
; Falsche Angaben in der mdadm.conf
* Dieses Problem lässt sich nur dann beheben, wenn die falschen Angaben in der mdadm.conf korrigiert oder explizit übergangen werden


[[Linux:Software-RAID|Linux:Software-RAID]]
Damit die Konfiguration beim Booten verfügbar ist, muss schließlich noch die Initrd aktualisiert werden
<syntaxhighlight lang="bash" highlight="1" line copy>
sudo update-initramfs -u -k all
</syntaxhighlight>


[[Linux:Software-RAID:Vorbereitung|Linux:Software-RAID:Vorbereitung]]
<noinclude>


[[Linux:Software-RAID:Anlegen|Linux:Software-RAID:Anlegen]]
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
=== Links ===
==== Weblinks ====
# https://wiki.ubuntuusers.de/Software-RAID


[[Linux:Software-RAID:Wartung|Linux:Software-RAID:Wartung]]
[[Kategorie:Linux/RAID]]


=Quellen=
</noinclude>
[https://wiki.ubuntuusers.de/Software-RAID/ https://wiki.ubuntuusers.de/Software-RAID/]
[[Category:Linux:Storage]]

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

Linux/RAID/Fehlerbehebung

Beschreibung

Datenträgerausfall

Details ermitteln

Ausgefallene Platte in einem RAID 6

 Personalities : [raid6] [raid5] [raid4] [raid1] [linear] [multipath] [raid0] [raid10]
 md2 : active raid6 sdj1[7] sdi1[6] sdh1[5] sdg1[4] sdd1[3] sda1[0] sdb1[1] sdc1[2]
 3418688000 blocks super 1.2 level 6, 512k chunk, algorithm 2 [9/8] [UUUUUUUU_]

 unused devices: <none>

In diesem Fall wurde das fehlerhafte Gerät bereits automatisch entfernt

Genauere Details, u.a. den Namen des defekten Geräts, können mit mdadm ermittelt werden

sudo mdadm --detail /dev/md2

Datenträger wechseln

Achtung

Bei einem RAID 0 äußert sich der Ausfall einer Platte im Totalausfall des gesamten RAID- Verbunds. Das RAID 0 kann daher nicht mit den folgenden Anweisungen repariert werden, sondern muss neu aufgesetzt werden und die hoffentlich vorhandene Datensicherung eingespielt werden

Ist das defekte Gerät (hier im Beispiel /dev/sdk1) ermittelt, kann die entsprechende Datenträger ausgetauscht werden

Falls der Kernel das Gerät noch nicht aus dem Verbund entfernt hat (d.h. es wird beim Befehl mdadm --detail noch aufgeführt), muss es zunächst aus dem Verbund entfernt werden

sudo mdadm /dev/md2 --remove /dev/sdk1

Nun kann die entsprechende Platte gewechselt werden

  • Ist eine entsprechende Austauschplatte eingebaut, muss diese zunächst partitioniert werden
  • Die neue Partition muss mindestens die gleiche Anzahl an Sektoren aufweisen, wie die bereits genutzten Partitionen

Von einer bestehenden Platte erhält man die Sektorenzahl der Partitionen (hier am Beispiel von /dev/sda) mittels

sudo parted /dev/sda u s print

Ist die neue Platte entsprechend partitioniert, wird die neue Partition zum RAID-Verbund hinzugefügt (hier am Beispielaustausch von /dev/sdk1 in /dev/md2)

sudo mdadm /dev/md2 --add /dev/sdk1

Im Hintergrund beginnt nun ein Rebuild, aus den noch vorhandenen Partitionen wird also der Inhalt für die neue Partition berechnet und geschrieben

  • Je nach RAID-Level und Größe dauert ein Rebuild mehrere Stunden bis Tage
  • Das System darf währenddessen neu gestartet oder heruntergefahren werden
  • Ein Systemabsturz kann jedoch zu Datenverlust führen. Manchmal lässt sich der Vorgang beschleunigen
Hinweis

Wurden Partitionen einer Platte von verschiedenen RAIDs genutzt, dann kann es vorkommen, dass eine verwendete Datenträger teilweise defekt ist und sich beispielsweise die Partition von md0 im Status [U_] befindet, während alle anderen im Status [UU] sind

In diesem Fall müssen diese mit dem Befehl..

sudo mdadm /dev/mdX --fail /dev/sdXY

...alle einzeln in den Modus [U_] versetzt werden

Bootprobleme

GRUB 2: unknown Filesystem

Falls das System nicht bootet, nachdem man es auf ein RAID 1 kopiert, die /etc/fstab angepasst, die grub.cfg und die mdadm.conf korrekt erscheinen sowie das initramfs aktualisiert wurde, kann es helfen, GRUB 2 erneut zu installieren

  • Dabei muss auf die Art der Partitionstabelle geachtet werden
  • Die obige Anleitung nutzt GPT-Partitionstabellen

RAID startet nicht

mdadm: Cannot open /dev/sdXY: Device or resource busy

Falls beim Erstellen eines RAIDs diese Meldung erscheint und mit den Partitionen bereits einmal ein RAID erstellt wurde, muss zunächst der alte Verbund aufgelöst werden

Fehler beim Update des Kernels nach Datenträgertausch

 Grub-Konfigurationsdatei wird generiert  grub-probe: Warnung: Physischer Datenträger ''(null)'' konnte nicht gefunden werden
 Einige Module könnten im Core-Abbild fehlen.
 /usr/sbin/grub-probe: Warnung: Physischer Datenträger ''(null)'' konnte nicht gefunden werden. Einige Module könnten im Core-Abbild fehlen.

Treten nach dem Tausch einer Datenträger diese Fehler auf muss die Device Map von Grub neu geschrieben werden

Dies geschieht mit

grub-mkdevicemap

Geht alles glatt, darf keine Ausgabe erscheinen. Anschließend noch einmal Grub aktualisieren

sudo update-grub

Nun sollte der Fehler behoben sein und die Grubkonfiguration sich ohne Fehler aktualisieren

Probelm RAID 127

mdadm.conf anlegen
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
Ermitteln der UUID des Raid Arrays
sudo mdadm --detail /dev/md0
Anpassung der mdadm.conf

Die Option "name" aus der mdadm.conf entfernen

sudo vi /etc/mdadm/mdadm.conf
 ARRAY /dev/md0 UUID=XXXXXXXX:XXXXXXXX:XXXXXXXX:XXXXXXXX
Aktualisierung der initramfs
sudo update-initramfs -u -k all
System neu starten
sudo systemctl reboot

Datenträger-Reihenfolge

RAID kann nicht gestartet werden

Änderung der Datenträger-Reihenfolge

  • Austausch eines Controllers
  • Umstecken der Kabel
  • Anschließen eines USB-Sticks
  • [...]

Auch dann nicht

  • wenn in den Superblöcken der RAID-Laufwerke die richtigen Metadaten (unabhängig von den Buchstabenbezeichnungen) gespeichert sind
Falsche Angaben in der mdadm.conf
  • Dieses Problem lässt sich nur dann beheben, wenn die falschen Angaben in der mdadm.conf korrigiert oder explizit übergangen werden

Damit die Konfiguration beim Booten verfügbar ist, muss schließlich noch die Initrd aktualisiert werden

sudo update-initramfs -u -k all


Anhang

Siehe auch

Links

Weblinks

  1. https://wiki.ubuntuusers.de/Software-RAID