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 RAID 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
Weblinks zum Artikel
Comments