Sprache auswählen

Ein RAID 1 System ist sinnvoll, um seine Daten in einem ersten Schritt einmal redundant zu haben. So kann beim Ausfall einer Hardwarekomponente, also einer Festplatte, normal weitergearbeitet werden, da die Daten auf der anderen noch vorhanden sind. In diesem Beitrag bauen wir uns aus zwei Festplatten und einem Raspberry Pi ein kleines RAID.

Die Hardware

Wir benötigen die folgenden Komponenten:

  1. Raspberry Pi (in diesem Artikel verwende ich einen Raspberry Pi 4)
  2. Zwei Festplatten. Idealerweise mit USB Schnittstelle. Wenn Ihr SATA Platten habt, gibt es dafür für kleines Geld USB Adapter
  3. Netzteil mit genügend Leistung. Am besten einfach das offizielle von Raspberry Pi 

Das RAID einrichten

Zum Einrichten und Verwalten des RAID verwende ich MDADM. Das muss erst einmal installiert werden

sudo apt-get install mdadm

 Anschließend muss neu gestartet werden

sudo reboot

 Jetzt prüfen wir einmal, ob unsere Festplatten richtig erkannt werden und was derzeit gemountet ist

lsblk

 Bei mir sieht das so aus

sda und sdb sind meine beiden, jeweils 500GB großen Festplatten. Unter mmcblk0 erkennt man die SSD Karte des Raspberry Pi, die beim booten gemountet wird..

Sollten auf den Festplatten, mit denen das RAID gebaut werden soll noch, wie hier gezeigt, Partitionen bestehen, müssen diese zunächst bereinigt werden. Sind mehrer Partitionen aufgelistet, werden die mit "rm 2" usw. gelöscht.

sudo parted /dev/sda "rm 1"
sudo parted /dev/sdb "rm 1"

Danach sollte das Ergebnis beim erneuten Aufruf von lsblk so aussehen:

Der nächste Schritt ist das Erstellen von Partitionstabellen auf unseren bereinigten Festplatten. Da meine Platten vergleichsweise klein sind, nehme ich die msdos Variante.

sudo parted /dev/sda "mklabel msdos"
sudo parted /dev/sdb "mklabel msdos"

Nachdem die Partitionstabellen erstellt sind legen wir auf jeder Festplatte auch eine neue Partition an.

sudo parted /dev/sda "mkpart primary ext4 1M -1"
sudo parted /dev/sdb "mkpart primary ext4 1M -1"

Jetzt machen wir dem System klar, dass diese Partitionen für unser RAID genutzt werden sollen

sudo parted /dev/sda "set 1 raid on"
sudo parted /dev/sdb "set 1 raid on"

Nun können wir mal überprüfen, ob bis hierher alles richtig angelegt ist.

sudo parted -s /dev/sda print
sudo parted -s /dev/sdb print

Hier passt alles. Die Größe der Festplatte stimmt, es ist eine Partition angelegt und auch für das RAID vorbereitet.

Jetzt wird das RAID auch wirklich mal angelegt. Im folgenden Befehl legen wir mit mdadm ein neues RAID mit dem Namen md0 an. Das hat den RAID Level 1 und wir verwenden dazu zwei Festoplatten, nämlich unser sda1 und sdb1

sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1

Fast fertig. Mit dem Befehl lsblk prüfen wir jetzt einmal, wie sich unsere Festplatten jetzt darstellen und wir erkennen, dass sich unser RAID mit dem Namen md0 nun auf beiden Festplatten befindet

Ab jetzt ist unser RAID eigentlich nichts anderes als eine gewöhnliche Festplatte und die muss erstmal mit einem Dateisystem formatiert werden

sudo mkfs -t ext4 /dev/md0

 Je nach Größe eurer Festplatten kann es ab hier ein wenig dauern, denn die Festplatten werden jetzt erstmal synchronisiert. Mit den beiden Befehlen

cat /proc/mdstat
sudo mdadm --detail /dev/md0

Kann man sich dazu Statusmeldungen ansehen. 

Jetzt sind wir fast fertig. Das Einzige Problem ist jetzt, dass das RAID beim Start nicht automatisch eingebunden wird. Das gehen wir mit den folgenden Befehlen an.

sudo mkdir /media/cloudraid
sudo mount /dev/md0 /media/cloudraid

Damit das dann auch alles bei jedem Booten geschieht wird das im File System Tab eingetragen.

sudo nano /etc/fstab

Dort fügen wir dann als letzte Zeile unseren Mount Befehl ein. Hier bitte extrem vorsichtig beim Abtippen sein. Ein kleiner Schreibfehler kann dazu führen, dass euer System nicht mehr starte und aufwändig repariert werden muss.

Zum Überprüfen rebooten wir den Raspberry Pi nun und gehen dann nochmal in die Konsole in der wir mit lsblk überprüfen, was dort vor sich geht.

Wichtig

Das RAID für sich genommen stellt noch nicht die komplette Sicherheit der Daten sicher. Hierzu müssen diese zumindest in regelmäßigen Abständen an einen anderen Ort gespiegelt werden, der nicht gleichzeitig mit dem Standort unseres RAID überschwemmt wird oder abbrennt.

Als nächstes

Ich richte mir als nächstes meine eigene Cloud auf meinem RAID ein. Dazu verwende ich NextCloud. Alle Details könnt Ihr hier nachlesen