mdadm raid hat ein unbekanntes Dateisystem, nachdem eine neue Festplatte hinzugefügt wurde

489
Challenger1304

Auf meinem Computer läuft Ubuntu 1804, aber ich bin neu in Linux.
Ich verwende mdadm und erstellte ein Raid-5 mit 3x 4TB-Laufwerken (sda, sdb sdc).
Das Betriebssystem befindet sich auf einer separaten SSD (SDE).
Nein, ich habe kein Backup. Ja, es ist dumm zu glauben, dass alles in Ordnung sein wird. Ich habe jedoch nicht genügend Speicherplatz, um meinen 8-TB-Raid zu sichern.

Ich wollte mehr Platz für meinen Überfall haben, also habe ich ein weiteres Laufwerk (sdd) hinzugefügt, das diesen Anweisungen folgt und es hat funktioniert.

Ein Problem, das ich hatte, war, dass mein Überfall nach jedem Neustart verschwunden ist. Ich dachte, dass eine Neuinstallation von Mdadm helfen könnte.
Nachdem ich das getan habe, rebootet und erstellt das Array mit:

sudo mdadm --create --assume-clean --level=5 --raid-devices=4 /dev/md0 /dev/sda /dev/sdb /dev/sdc /dev/sdd 

(weil "--assemble --scan" nicht funktionierte) wurde das Dateisystem nicht mehr erkannt.

Dann habe ich das Array mehrmals erstellt, weil ich irgendwo gelesen habe, dass dies passieren kann, wenn sich die Laufwerke in einer falschen Reihenfolge befinden. Das hat nicht funktioniert.

Beim Überprüfen des Dateisystems wurde Folgendes zurückgegeben:

challenger1304@hannes:~$ sudo fsck /dev/md0  fsck from util-linux 2.31.1 e2fsck 1.44.1 (24-Mar-2018) ext2fs_open2: Bad magic number in super-block fsck.ext4: Superblock invalid, trying backup blocks... fsck.ext4: Bad magic number in super-block while trying to open /dev/md0  The superblock could not be read or does not describe a valid ext2/ext3/ext4 filesystem. If the device is valid and it really contains an ext2/ext3/ext4 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: e2fsck -b 8193 <device> or e2fsck -b 32768 <device> 

Dann habe ich versucht, den schlechten Superblock zu ersetzen, wie es mir das Tool empfohlen hatte. Um herauszufinden, wo sich die Superblock-Sicherungen befinden, starte ich "mkfs.ext4 -n / dev / md0" und habe die meisten auch ausprobiert.
Hat auch nicht funktioniert.

Nach einiger Recherche fand ich ein Tool namens "TestDisk", installierte es und führte es aus. Es wurden viele Partitionen (nur eine auf dem Schlachtzug) mit dem richtigen Label gefunden. In diesen Partitionen konnten keine Dateien und das Tool die Partitionen nicht neu erstellen.
Ich habe das dreimal gemacht, nachdem ich das Array mit den Festplatten in einer anderen Reihenfolge neu erstellt hatte. Immer dasselbe Ergebnis.

0
Ich vermute, dass das Erstellen eines neuen Arrays alle alten Arrays zerstört, die möglicherweise auf diesen Festplatten vorhanden waren. grawity vor 5 Jahren 2

1 Antwort auf die Frage

2
gog

Vorwort

Ich verwende mdadm und erstellte ein Raid-5 mit 3x 4TB-Laufwerken (sda, sdb sdc)

Bei der Verwendung von raid5 mit so großen Laufwerken geht es darum, nach Problemen zu suchen. Im Internet gibt es hier und da viele Warnungen, aber das warne ich Sie noch einmal: Ihre Daten sind in Gefahr. Wenn eine der Festplatten im raid5-Array ausfällt, ist keinerlei Redundanz mehr vorhanden. Wenn Sie ein neues Ersatzlaufwerk einsetzen und den Resync-Vorgang starten, ist die Wahrscheinlichkeit groß, dass auf einem anderen Datenträger ein Lesefehler auftritt. Sobald dies geschieht, sind Ihre Daten verschwunden.

Dann noch ein Vorschlag: Ich mache RAID-Arrays immer aus Partitionen, nicht aus ganzen Festplatten. Aber das ist so etwas wie eine "Präferenz", der ich seit wann ich von mdadm raid erfahre, folge. Tatsächlich enthalten alle meine Festplatten mehr als ein RAID (Beispiel: eine erste Partition in Raid1 mit dem Betriebssystem, dann eine weitere Partition für ein größeres RAID).

Nein, ich habe kein Backup. Ja, es ist dumm zu glauben, dass alles in Ordnung sein wird. Ich habe jedoch nicht genügend Speicherplatz, um meinen 8-TB-Raid zu sichern.

Meinetwegen. Das bedeutet, dass es Ihnen egal ist, ob Sie diese Daten verlieren, insbesondere während eines so heiklen Vorgangs, wie das Wachsen / Umformen eines RAID-Arrays. Wie Sie im Linux RAID Wiki über das Wachsen eines Arrays nachlesen können, funktionieren die ersten Arbeiten direkt nach dem Kapiteltitel:

BACK UP. BACK UP !! BACK UP !!!!

Zurück zum Geschäftlichen

Versuchen wir zu verstehen, was in den hier beschriebenen Schritten passiert ist.

Ein Problem, das ich hatte, war, dass mein Überfall nach jedem Neustart verschwunden ist

Dies hätte Sie dazu bringen sollen, aufzuhören und zu sagen: Was ist los? Beheben wir das, bevor ich alle meine Daten verliere.

Wahrscheinlich haben Sie vergessen, Ihre Datei mit einer Zeile zu füllen, oder besser zu aktualisieren/etc/mdadm/mdadm.conf :

ARRAY /dev/md/0 metadata=1.2 UUID=deadbeef:deadbeef:deadbeef:deadbeef name=myhostname:0 

die Sie mit generieren können

 mdadm --detail --scan 

Wahrscheinlich müssten Sie Ihre initramfs aktualisieren. Unter Debian können Sie das mit

update-initramfs -u 

so dachte ich mir, dass eine neuinstallation von mdadm helfen könnte.

Überhaupt keine Hilfe.

Nachdem ich das getan habe, rebootet und erstellt das Array mit:

sudo mdadm --create --assume-clean --level=5 --raid-devices=4 /dev/md0 /dev/sda /dev/sdb /dev/sdc /dev/sdd

Ach nein. Wow, Sie haben jetzt den RAID-Superblock auf allen Ihren vier Festplatten überschrieben. Ihre Daten sind immer noch vorhanden, aber Sie haben die Informationen überschrieben, die mdadm das Layout Ihres RAID-Arrays mitteilen. Angenommen, der alte und der neue Superblock waren dieselbe Version (1.2), könnten Sie diese Situation wiederherstellen, indem Sie die RAID-Superblöcke mit einer Sicherung von den Originalfestplatten überschreiben.

(weil "--assemble --scan" nicht funktioniert hat)

Dies sollte Sie davon abgehalten haben, fortzufahren und weitere Informationen zum zurückgegebenen Fehler zu suchen. Höchstwahrscheinlich war das Layout der Daten auf den Laufwerken nicht das, was mdadm erwartete, oder ähnliches. Kein großes Problem per se.

Dann habe ich das Array mehrmals erstellt, weil ich irgendwo gelesen habe, dass dies passieren kann, wenn sich die Laufwerke in einer falschen Reihenfolge befinden. Das hat nicht funktioniert.

Sie haben den RAID-Superblock auf allen Festplatten immer wieder überschrieben. Keine Änderung Ihrer Daten (vorausgesetzt, der alte und der neue RAID-Superblock waren dieselbe Version)

Dann habe ich versucht, den schlechten Superblock zu ersetzen, wie es mir das Tool empfohlen hatte.

Oh je, nein nein nein! Sie haben angefangen, Ihre Daten hier zu beschädigen. Es besteht keine Chance, alle Ihre Daten intakt wiederherzustellen, da Sie diese Daten an einer unbekannten Position geschrieben haben (in Bezug auf die ursprüngliche Lage des gewachsenen Arrays).

Nach einiger Recherche fand ich ein Tool namens "TestDisk", installierte es und führte es aus. Es wurden viele Partitionen (nur eine auf dem Schlachtzug) mit dem richtigen Label gefunden. In diesen Partitionen konnten keine Dateien und das Tool die Partitionen nicht neu erstellen.

Dieses Tool liest direkt vom Blockgerät (dem RAID-Array), ohne ein Dateisystem zu verwenden, und betrachtet wahrscheinlich einige Daten, die aus Blöcken bestehen, die in der falschen Reihenfolge sind. Ganz ohne Sinn.

Was jetzt?

Ich denke, Sie können sich von den alten Daten verabschieden. Da Sie jedoch nur wenige Daten in das Array geschrieben haben, besteht die Möglichkeit, dass Sie die Daten wiederherstellen können, sobald Sie herausgefunden haben, wie das ursprünglich gewachsene Array eingerichtet wurde. Dazu gehört es herauszufinden:

  • Die Größe des Arrays
  • Das Array-Layout (linkssymmetrisch usw.)
  • Die Streifengröße
  • Die Festplattenreihenfolge

Ohne Sicherung der RAID-Superblöcke wird es sehr schwierig. Leider haben Sie den Vorschlag "Backup erstellen" auf die harte Tour gelernt. Viel Glück!