[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mdadm und Firmware-RAID



On 03/23/2016 09:47 AM, Christoph Pleger wrote:
> ein im BIOS-RAID-Tool erstelltes RAID-Array

> (Das RAID wird auch dann zerstört, wenn ich selbst keine Aktionen auf den
> Platten veranlasse).

Hallo Christoph,

das ist erwartetes Verhalten -- die meisten BIOS-RAID-Tools sind keine
echten Hardware-RAIDs, die dem Betriebssystem genau eine logische Platte
darstellen, sondern lediglich "Hinweise" für den Treiber des
Betriebssystems, doch bitte die zwei Harddisks nach "Schema was im BIOS
definiert ist" als eine anzuzeigen.  Wenn das OS diese Hinweise
ignoriert und die zwei Platten direkt anspricht - was bei Linux bei
allen mir bekannten BIOS-"RAIDs" der Fall ist - gibt's Probleme.

Fazit:  Eine Lösung, die einerseits davon abhängt dass die Festplatten
nie einzeln angesprochen werden, aber andererseits dies nicht in
Hardware verhindert, kann eigentlich nur als fragil und nicht
Produktivtauglich eingestuft werden.  Außerdem wird das Metadatenformat
i.d.R. nicht genormt sein, sodass bei einem Mainboard-Defekt die Frage
"Welches Tausch-Mainboard kann die Daten wieder verwenden" Probleme
auftreten werden.

Linux-Software-RAIDs schreiben alle Metadaten auf die Platten und
erfordern, dass die Platten einzeln ansprechbar sind, abgesehen davon
ist das Metadatenformat Controllerunabhängig, was im Notfall sehr
praktisch ist (einfach beide Platten an USB-SATA-Konverter anschließen
und man kann sie sogar mit dem Laptop auslesen).

Daher ist Deine folgende Lösung genau richtig:

> Ich habe dann im normalen BIOS-Setup das Software-RAID deaktiviert, so
> dass die beiden Platten durchgereicht werden. Nach dem Booten per PXE kann
> ich nun mit mdadm --create selbst ein RAID-ARRAY mit DDF-Metadatenformat
> erzeugen, das Grundsystem entpacken und das ARRAY bootfähig machen. Aber
> obwohl im Grundsystem auch mdadm installiert ist, heißen die Devices nach
> Booten vom RAID anders als beim Booten per PXE, so dass die Dateisysteme
> nicht gemountet werden können. Mit PXE und NFSROOT hieß der RAID-Container
> /dev/md127 und das RAID /dev/md126, bei Boot vom RAID existieren diese
> Devices nicht, dafür dann /dev/dm-1 usw., so wie es bei dmraid der Fall
> war.
> 
> Kann mir da jemand weiterhelden, wie man so ein ARRAY mit mdadm einrichtet?

Eingerichtet hast Du es absolut korrekt.  Die Frage, welche "md-Nummer"
ein Raid beim Wieder-Hochfahren (mdadm --assemble) bekommt, wird
entweder durch Metadaten beantwortet (nicht sicher ob das bereits
Standard oder noch experimental ist),  oder durch die Datei
/etc/mdadm/mdadm.conf.

Falls nötig, kann die Datei bei bereits laufendem Array generiert werden mit
mdadm --examine --scan >> /etc/mdadm.conf
update-initramfs -u

Wenn die Auto-Assembly bei Dir schon funktioniert (cat /proc/mdstat nach
dem Reboot) und nur der Name instabil ist, dann würde ich empfehlen, das
Root-Device nicht über die md/dm-Nummer, sondern über seine UUID
anzugeben.  Das Programm "blkid" listet diese auf; weitere Einträge in
der /etc/fstab gehen dann etwa so:

UUID=aaaa-bbb-cc-dd / ext4 ro 0 1

Durch diese Methode ist es egal, in welcher Reihenfolge die Arrays
gescannt werden, die UUIDs der Dateisysteme sind auf jeden Fall stabil.

/dev/disk/by-uuid/ enthält auch direkt die Symlinks auf die zur Zeit
geltenden Kernel-Namen.


Ich hoffe das bringt Dich ein Stück weiter.

Viele Grüße,

- Danny


Reply to: