Linux/RAID/Fehlerbehebung: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
K Textersetzung - „«“ durch „''“ |
||
(55 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''Linux/RAID/Fehlerbehebung''' | |||
== Beschreibung == | |||
== Datenträgerausfall == | |||
=== Details ermitteln === | |||
Ausgefallene Platte in einem RAID 6 | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
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_] | |||
unused devices: <none> | unused devices: <none> | ||
</syntaxhighlight> | |||
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 | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo mdadm --detail /dev/md2 | |||
</syntaxhighlight> | |||
=== 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> | |||
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 | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo mdadm /dev/md2 --remove /dev/sdk1 | |||
</syntaxhighlight> | |||
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 | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo parted /dev/sda u s print | |||
</syntaxhighlight> | |||
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> | |||
sudo mdadm /dev/md2 --add /dev/sdk1 | |||
</syntaxhighlight> | |||
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 | |||
<blockquote> | |||
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 | |||
</blockquote> | |||
In diesem Fall müssen diese mit dem Befehl.. | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo mdadm /dev/mdX --fail /dev/sdXY | |||
</syntaxhighlight> | |||
...alle einzeln in den Modus [U_] versetzt werden | |||
== Bootprobleme == | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
GRUB 2: unknown Filesystem | |||
</syntaxhighlight> | |||
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 == | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
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 | |||
== Fehler beim Update des Kernels nach Datenträgertausch == | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
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. | |||
</syntaxhighlight> | |||
Treten nach dem Tausch einer Datenträger diese Fehler auf muss die Device Map von Grub neu geschrieben werden | |||
Dies geschieht mit | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
grub-mkdevicemap | |||
</syntaxhighlight> | |||
Geht alles glatt, darf keine Ausgabe erscheinen. Anschließend noch einmal Grub aktualisieren | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo update-grub | |||
</syntaxhighlight> | |||
Nun sollte der Fehler behoben sein und die Grubkonfiguration sich ohne Fehler aktualisieren | |||
== Probelm RAID 127 == | |||
; mdadm.conf anlegen | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf | |||
</syntaxhighlight> | |||
; Ermitteln der UUID des Raid Arrays | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo mdadm --detail /dev/md0 | |||
</syntaxhighlight> | |||
; Anpassung der mdadm.conf | |||
Die Option "name" aus der mdadm.conf entfernen | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo vi /etc/mdadm/mdadm.conf | |||
ARRAY /dev/md0 UUID=XXXXXXXX:XXXXXXXX:XXXXXXXX:XXXXXXXX | |||
</syntaxhighlight> | |||
; Aktualisierung der initramfs | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo update-initramfs -u -k all | |||
</syntaxhighlight> | |||
; System neu starten | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo systemctl reboot | |||
</syntaxhighlight> | |||
== 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 | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo update-initramfs -u -k all | |||
</syntaxhighlight> | |||
<noinclude> | |||
== Anhang == | |||
=== Siehe auch === | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}/}} | |||
=== Links === | |||
==== Weblinks ==== | |||
# https://wiki.ubuntuusers.de/Software-RAID | |||
[[Kategorie:Linux/RAID]] | |||
</noinclude> |
Aktuelle Version vom 31. März 2025, 12:23 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 z. B. 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