dmraid: Mainboard-RAID unter Linux einrichten

Download PDF

Viele Mainboards bringen heutzutage RAID Funktionalität mit. Viele Anwender wissen aber gar nicht, wie diese Funktionalität unter Linux genutzt werden kann. Dazu kommt, dass es viele Vorbehalte dem ‚billigen‘ RAID Controllern auf den Mainboards gibt. Oder es wird viel Geld für ein NAS ausgegeben, wo es doch ein PC mit dem Mainboard RAID genauso bringen könnte. Schauen wir uns das doch mal an.

Aber ich möchte hier auch eine Warnung aussprechen: Die Gefahr des Datenverlusts bei Wechsel einer defekten Platte ist enorm, da nicht immer klar ist, ob die neue und leere(!) Festplatte auf die zweite Platte mit Daten synchronisiert wird! Also vorher einige Tests an einen Testsystem durchführen!

Ziel in diesen Artikel ist es, zwei Festplatten in einen Linux System als RAID1 einzurichten. Mit RAID1 werden zwei Festplatten gespiegelt, so das beim Ausfall einer Platte die Daten auf der anderen Festplatte erhalten bleiben. Für diese Anleitung habe ich Kubuntu 12.04 LTS benutzt. Denk dran, dass bei Ubuntu Linux vor dem Befehl ein sudo gesetzt werden muss …

  • Plane für diese Aktion genügend Zeit ein! Haribo, Flasche Wein, etwas cool jazz – eben eine entspannte Arbeitsatmosphäre vorbereiten, hilft sicherlich bei diesen Thema.
  • Sichere deine Daten! Sichere deine Daten! Sichere deine Daten!
  • Überlege Dir vorher sehr genau, wie Du die Festplatten am Board anschließen willst. Ich setze z.B. die Platte mit dem bootfähigen Linux an SATA0, das DVD Laufwerk an den letzten SATA Anschluss und alles zwischendrin könnten potentielle RAID Platten sein. So ein ‚System‘ im Kopf entspannt etwas, wenn man bis zum Ellbogen im System steckt.
  • Ich benutze in meinen PC’s nur Wechselrahmen. Das macht es mir einfach, für die Linux Installation die RAID Platten erst einmal wegzulassen. Also: Jetzt auf eine der Platten das Linux installieren.
  • Gehe dann in das Bios vom Mainboard, aktiviere den RAID Controller und richte dort die zwei gewünschten Festplatten als RAID1 ein. Dabei kann sicherlich das Handbuch vom Hersteller zum Mainboard helfen.

Beachte! Alle deine Daten auf diesen Platten gehen jetzt verloren!

dmraid konfigurieren

Wenn Linux auf einer Platte installiert und das RAID 1 mit zwei weiteren Platten eingerichtet wurde, fährst Du dein Linux hoch. Nochmal: Du brauchst also für die Umsetzug dieser Anleitung 3 Festplatten: Eine für das Linux- System und zwei weitere Platten, die als Ausfall-sicheres Datenlager gespiegelt werden.

Wenn es Dir weniger um Datensicherheit, sondern um Performance geht, nimmst Du besser RAID0. Beachte aber: Bei RAID0 werden die Daten über beide Platten geschrieben – wie ein Datenwurm – und bietet so keine wirkliche Datenerhaltung bei Ausfall einer Festplatte.

  • Melde Dich an deinem Linux an und führe apt-get install dmraid aus. Boote jetzt deinen PC.
  • Melde Dich am PC an und gib auf der console den Befehl dmraid -l ein. Damit bekommst Du angezeigt, welche RAID Controller das dmraid aktuell unterstützt. Keine Panik, wenn in dieser Auflistung dein Controller nicht dabei ist: Viele Hersteller nutzen einen dieser Chipsätze und kleben nur ihr Label drauf.
  • Gib auf der console dmraid -ay ein (Erklärung der Optionen: aktivieren? yes!). Solltest Du mehrere RAID Controller im PC haben, kannst Du auch wählen, welcher Controller aktiviert werden soll. Für Details siehe in die manpage für dmraid.
  • Gib den Befehl dmraid -r ein. Jetzt wird es spannend! Die Ausgabe dieses Befehls zeigt Dir die beiden Platten mit denen Du das RAID eingerichtet hast, ob der mirror OK ist, die Größe und eine kryptische Zeichenkette (ähnlich ‚pdc_hcfgbfjba‘) an. Schreibe Dir gleich diese kryptische Zeichenkette auf, weil diese jetzt ständig von Dir gebraucht wird.
  • Schaue unter einem Ubuntu Linux in den Ordner /dev/mapper. Dort findest Du den link auf das RAID. Grundsätzlich ist damit unser RAID dem Linux System bekannt.
  • Sollte dmraid -r keine brauchbare Ausgabe erzeugen, wird der RAID Chipsatz wahrscheinlich nicht unterstützt.
  • Erstelle Dir jetzt einen Ordner unter dem das RAID ge-mountet werden soll. Ich habe mir den Ordner /raidplatten angelegt und werde diesen Ordnernamen hier benutzen.
  • Führe auf der konsole ein chown root:users /raidplatte aus und mache damit den root zum Besitzer und die Anwender in der Gruppe users zu Nutzern dieses Plattenplatzes.
  • Noch ein chmod 770 /raidplatte hinterher, damit die Rechte auf Vollzugriff erstmal nur für Anwender in der Gruppe users und dem root gehören.
  • Vergiss nicht in /etc/group die Anwender in die Gruppe users (Komma-separiert) einzutragen, die, nach dieser Anleitung, diesen RAID Platz nutzen sollen.

Raid Partition partitionieren und formatieren

Jetzt müssen wir noch eine Partition auf dem Spiegel erstellen, formatieren und in die /etc/fstab eintragen.

  • Mit cfdisk /dev/mapper/kryptische_Zeichenkette kannst Du auf dem RAID eine Partition erstellen. Wenn Du mit der Partitionierung fertig bist, kann es sein, dass unter /dev/mapper ein weiterer Link – aber jetzt mit einer Ziffer am Ende – liegt. Das scheint von Controller zu Controller unterschiedlich zu sein …
  • Jetzt noch mit mkfs.ext4 /dev/mapper/kryptische_Zeichenkette die erstellte Partition formatieren.

Eintrag in die fstab

Der nächste Schritt ist ein Eintrag in der /etc/fstab, damit die RAID Partition automatisch beim hochfahren am Ordner /raidplatten ge-mountet wird. Trage folgenden Satz in die fstab ein:

/dev/mapper/kryptische_Zeichenkette /raidplatten ext4 defaults 0 2
  •  Teste vor dem booten mit einen mount /raidplatten ob das mounten funktioniert, erstelle auf dieser Partition einen Test- Ordner und wenn dies alles funktioniert, kannst Du dein Linux neu starten.
  • Sollte beim Hochfahren von Linux eine Meldung erscheinen, dass mit dieser Partiton etwas nicht stimmt, gib es keinen Grund zur Panik: Diese Meldung gibt die Option aus, etwas auf der console zu reparieren.

Überprüfe dann:

  • ob der Eintrag in der /etc/fstab stimmt – speziell die kryptische_Zeichenkette und das ‚0 Leerzeichen 2‘ am Ende der Zeile.
  • ob der Ordner /raidplatten root:users gehört und mit 770 ge-chmod-et ist.
  • ob die Formatierung auch wirklich funktioniert hat.
  • ob die RAID Verwaltung vom Mainboard die Festplatten als aktiv kennzeichnet.
  • ob die Anwender in der Gruppe users eingetragen sind.

Nach einen erfolgreichen Bootvorgang solltest Du in die /var/log/boot.log (unter Ubuntu) schauen: Dort wird die Präsenz der RAID Partition vermerkt. Mit mount auf der console sieht Admina diese Partition natürlich auch.

Damit landen alle Daten, die im Ordner /raidplatten – von Anwendern der Gruppe users – gespeichert werden, gespiegelt auf zwei Festplatten.

dmraid entfernen

Sollte Admina das Raid dann wieder zerpflücken, ohne eine vorherige(!) korrekte Löschung des Raids – Deinstallation von dmraid langt nicht! – kann es sein, dass neue Installationen scheitern, weil noch der Raid Eintrag im MBR der Festplatte ist. Bei mir hat folgender Befehl im installierten Linux geholfen (alternativ muss Admina vielleicht eine Live- DVD nehmen), um diesen MBR Eintrag zu beseitigen:

dmraid -E -r /dev/sda

Es kann vorkommen, dass Festplatten an verschiedenen Raid Controller benutzt und für dmraid eingerichtet wurden z.B. bei einen Mainboardtausch. Sollten die Raidcontroller verschiedene Chipsätze haben, zeigt der Befehl dmraid -r dann folgende Meldung an:

/dev/sdd: "pdc" and "isw" formats discovered (using isw)!

Mit der Erweiterung des obigen Befehls kann der nicht mehr brauchbare Eintrag im MBR der Festplatte entfernt werden:

dmraid -E -r -f pdc /dev/sda

Das dev ist entsprechend der eigenen Verhältnisse anzupassen. Zusätzlich sollte Admina dann auch den Eintrag in der fstab für das Raid entfernen oder anpassen. Diese Aktion ist aber mit Vorsicht zu genießen: In einem Fall ist das Raid in der Mainboard Raid Controller Verwaltung aufgelöst worden! Wenn das gewollt ist …

The End

Ich weiß, meine Texte sind brutal lang für einen Inhalt, den Admina in 10 Zeilen dokumentieren könnte, aber ich denke, es gibt auch Menschen, die auf ‚mehr Text‘ stehen und es damit einfacher haben. Es heißt ja auch: pilgermaske – der andere Linux blog.

Have fun.

| engl. Anleitung | Erfahrungsbericht |

Hinterlasse einen Kommentar

6 Kommentare auf "dmraid: Mainboard-RAID unter Linux einrichten"

Benachrichtige mich zu:
avatar
2000
Sortiert nach:   neuste | älteste | beste Bewertung
Chris
Gast

Vielen Dank für diese ausführliche Anleitung, hat mir sehr geholfen.

Leider aktiviert und mounted mein LinuxMint17 das RAID nach einem Neustart nicht. Der System-Startvorgang wird angehalten weil auf ein Mount gewartet wird. Nachdem ich dieses mounten dann abbreche und das System hocfährt muss ich die aktivierung und das mounten des RAID nochmals händisch ausführen um das RAID benützen zu können.

Was fehlt da noch?

Vielen Dank

Chris

s
Gast
Hey vielen Dank erstmal für die ausführliche Beschreibung! Habe selbst ein dmraid in nem kleinen HP Microserver am laufen, allerdings nicht als Bootplatten, sondern nur als reine Datenplatten. Das System selbst läuft auf einem kleinen internen USB-Stick. Eine Frage hätte ich aber doch….Hast du schonmal probiert mit Hilfe von dmraid ein bestehendes Raid-Set zu vergrössern? Meine momentane Konfiguration besteht aus zweit 2TB Platten, die gespiegelt sind. Ich möchte jetzt evtl nochmal zwei 4TB Platten dazuhängen, welche ebenfalls gespiegelt sein sollen und ins gleiche Raid-Set integriert werden sollen. Anschliessen möchte ich bestehende Partitionen vergrössern und ausweiten. Hast du Erfahrung in diesem… Read more »
JoBlack
Gast

Wenn das Mainboard RAID ein FakeRaid, d.h. ohne eigenen Prozessor, ist sollte man erfahrungsgemäss die Finger davon lassen. Das bringt meistens Probleme mit sich, vor allem wenn eine Festplatte ausgetauscht werden muss.

Wer keinen vollwertigen RAID-Controller einsetzt sollte gleich auf ein Software RAID System wie mdadm umsteigen. Geschwindigkeitsnachteile dürfte man keine haben und man hat es beim Festplattenaustausch wesentlich einfacher.

wpDiscuz