Datenserver mit RAID 1 auf dem Raspberry Pi

Tutorial
Teile diesen Beitrag

Datenserver kaufen oder selbst bauen?

Dieser Artikel beschäftigt sich mit dem Selbstbau eines Datenservers. Dank dem Raspberry Pi können die Anschaffungs- und Stromkosten sehr gering gehalten werden. Dafür leidet aber auch die Performance an dem für solche Aufgaben weniger geeigneten Prozessor, Arbeitspeicher, vor allem aber an der langsamen LAN-Schnittstelle die mit 100 Mbit/s nicht für das schnelle Verschieben größerer Datenmengen geeignet ist. Wenn du stattdessen einen fertigen Datenserver kaufen möchtest, findest du am Ende dieses Artikels eine Auswahl verschiedener NAS-Fertiglösungen.

Raspberry Pi NAS mit RAID 1 (Spiegelung) oder RAID 0 (Striping) selbst bauen

Mit einem Datenserver, oder auch NAS (Network Attached Storage) genannt kannst du von überall in deinem Haus auf deine Daten zugreifen, egal ob vom PC, vom Laptop oder vom Tablet: deine Dateien sind überall verfügbar. Einen solchen Datenserver kann man entweder fertig kaufen und zuhause einrichten oder aber komplett selbst zusammenbauen. Mit einem Raspberry Pi als Recheneinheit ist das ganze sogar schonend für den Geldbeutel. In diesem Tutorial zeige ich dir, wie du dir deinen eigenen Raspberry Pi NAS mit RAID 1 (Die Daten auf einer Festplatte werden auf die zweite Festplatte gespiegelt, um Datenverlust bei Ausfall einer Speichereinheit zu verhindern.) oder RAID 0 (Die Dateien werden in kleinere Stücke geteilt, welche abwechselnd auf beiden Platten gespeichert werden. Somit ist die Kapazität beider Platten verfügbar.) bauen kannst. In meinem Fall stammen die beiden Festplatten aus einem einige Jahre alten PC und haben jeweils 160 GB Speicherkapazität. Anstatt interner Festplatten kannst du jedoch auch jede beliebige externe Festplatte benutzen. Bei internen Festplatten wird jedoch ein “USB zu SATA”-Converter gebraucht, wie du ihn auf der folgenden Liste findest.

Welche Komponenten werden für den Datenserver benötigt?

Neben einem Raspberry Pi brauchst du auch noch die folgenden Artikel. Den “USB zu Sata”-Adapter und die Festplatte brauchst du für das RAID jeweils 2 mal.

USB zu Sata Kabel
16,99 €
Stand: 17. Juli 2019 9:07 Uhr
Amazon Prime
Auf Amazon ansehen
Festplatte
54,00 € 63,00 €
Stand: 17. Juli 2019 9:07 Uhr
Amazon Prime
Auf Amazon ansehen
microSD-Karte
10,00 €
Stand: 17. Juli 2019 9:07 Uhr
Amazon Prime
Auf Amazon ansehen
aktiver USB-Hub
17,85 €
Stand: 17. Juli 2019 9:07 Uhr
Amazon Prime
Auf Amazon ansehen

Das Tutorial als Video

Vorbereitung des Datenservers

Als erstes musst du dir RaspBian herunterladen und es auf die SD-Karte deines Pi aufspielen. Wie das geht, habe ich schon einmal in einem anderem Tutorial erklärt (Raspberry einrichten: Die ersten Schritte). Je nachdem, ob dein Datenserver per W-LAN mit deinem Router verbunden werden soll oder nicht, solltest du eben genanntes Tutorial entweder bis zum Punkt “WLAN-Verbindung einrichten” oder bis zum Punkt “Webserver installieren und auf dem Raspberry einrichten” verfolgen. Nach der Installation und Einrichtung fährst du den Pi mit dem folgendem Befehl herunter:

sudo shutdown now -h

Anschließend steckst du beide Speichergeräte an die USB-Ports deines Raspberry (wenn du einen Raspberry Pi Modell 1 benutzt, solltest du die Festplatten an einen USB-Hub anstecken und den USB-Hub in einen USB-Port deines Raspberry) an, verbindest, wenn nötig die Festplatten mit den mitgelieferten Netzteilen und steckst den Pi wieder ans Netzteil an.

Mit dem Programm Putty kannst du deinen Pi wie mit der Remotedesktopverbindung über das Netzwerk steuern, allerdings muss dazu auf dem Pi keine zusätzliche Software installiert werden.

Um dich per Putty mit deinem Raspberry zu verbinden öffnest du die eben heruntergeladene Datei “putty.exe”.

So sieht das Programm "putty" aus.

So sieht das Programm “putty” aus.

Dort gibst du im Feld “Host Name (or IP adress)” die IP-Adresse deines Pi ein und klickst unten auf den Button “open”. Jetzt öffnet sich ein SHELL-Fenster, in dem du zuerst den Benutzernamen des Pi (standardmäßig: “pi”) und dann das Passwort dieses Nutzers (standardmäßig: “raspberry”) eingeben musst. Beide Eingaben bestätigst du mit der Eingabetaste. In der nun sichtbaren Kommandozeile lässt du dir mit dem folgendem Befehl die vorhandenen Festplatten anzeigen:

sudo fdisk -l

Du solltest nun eine Ausgabe wie diese erhalten:

Hier werden die Festplatten des Datenservers aufgelistet.

Hier werden die Festplatten des Datenservers aufgelistet.

Bevor zum nächsten Schritt übergegangen wird, gibst du folgende Befehle in die Kommandozeile ein, um deine Distribution zu aktualisieren:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Die Software installieren

In diesem Tutorial benutze ich “mdadm”, um das RAID-System anzulegen. Um “mdadm” zu installieren, gibst du folgenden Befehl in die Kommadozeile ein:

sudo apt-get install mdadm

Nach der Installation öffnet sich das Konfigurations-Menü von “mdadm”. Dort gibst du “all” ein.

Hier wird „mdadm“ konfiguriert.

Hier wird „mdadm“ konfiguriert.

Anschließend wird dein Pi neu gestartet:

sudo reboot

Um ein System mit RAID 0 (Summe der Speicherkapazität der Festplatten nutzbar, keine Sicherung) anzulegen gibst du den folgenden Befehl ein:

sudo mdadm -Cv /dev/md0 -10 -n2 /dev/sd[ab]1

Möchtest du hingegen ein System mit RAID 1 (Nur Speicherkapazität einer Festplatte nutzbar, dafür Sicherung) anlegen, ist der folgende Befehl erforderlich:

sudo mdadm -Cv /dev/md0 -l1 -n2 /dev/sd[ab]1

Nun prüfst du, ob das Speicherdevice “/dev/md0” angelegt wurde:

sudo fdisk -l

Anschließend wird das angelegte Dateisystem mit dem Format ext4 formattiert:

sudo mkfs /dev/md0 -t ext4

Danach kannst du dir den Status des Gerätes anzeigen lassen:

sudo mdadm --detail /dev/md0

Du solltest nun eine Ausgabe wie diese sehen:

Hier werden dir die Details der RAID-Speichereinheit des Datenservers angezeigt.

Hier werden dir die Details der RAID-Speichereinheit des Datenservers angezeigt.

Jetzt wird ein Verzeichnis angelegt, in das die Festplatten gemountet werden:

sudo mkdir /media/nas

Dort wird nun das RAID-Array eingebunden:

sudo mount /dev/md0 /media/nas

Damit die Festplatten bei jedem Systemstart automatisch gemountet werden, wird die Datei “/etc/fstab” bearbeitet:

sudo nano /etc/fstab

Ans Ende der Datei fügst du nun folgendes ein:

/dev/md0 /media/nas ext4 4,nofail 0 0

Speichere die Datei mit STRG + X ab, bestätige den Speichervorgang mit J und drück anschließend die Eingabetaste.

Um mdadm beim Systemstart automatisch auszuführen öffnest du die Datei /etc/default/mdadm:

sudo nano /etc/default/mdadm

Dort trägst du am Ende “AUTOSTART=true” ein und speicherst die Datei mit STRG + X, J und drückstdie Eingabetaste.

Damit die Freigegebenen Dateien auch auf anderen Geräten (Computer, Tablets, Smartphones etc.) angezeigt werden, wird im Nächsten Schritt die Dateifreigabe mit Samba eingerichtet.

Fehlerbehebung

Bei mir gab es das Problem, dass der Raspberry schneller hochfuhr, als das RAID-Array erkannt werden konnte. Dadurch wurde es nicht automatisch gemountet und konnte auch nicht verwendet werden. Eine kleine Änderung der Datei /boot/cmdline.txt behebt dieses Problem jedoch sehr leicht:

sudo nano /boot/cmdline.txt

Dort fügst du nun zum Schluss “rootdelay=5” ein. Durch diese Verzögerung beim Systemstart wird das RAID-Array erkannt, gemountet und kann problemlos verwendet werden.

Nachtrag vom 14.08.2018:

Ein Nutzer hat mich darauf aufmerksam gemacht, dass ein höheres Root-Delay bei ihm nicht geholfen hat.

Stattdessen hat ein Cronjob mit “@reboot sleep 5; sudo mount /dev/md0 /media/nas” das Problem gelöst.

Einen Cronjob kannst du mit dem Befehl “sudo crontab -e” anlegen, in dem du einfach den Befehl in eine neue Zeile einfügst.

Dateifreigabe des Datenservers mit Samba einrichten

Um die Dateifreigabe für Windows-Rechner einzurichten, wird zuerst die Software Samba installiert:

sudo apt-get install samba samba-common-bin

Als erstes wird Samba konfiguriert:

sudo nano /etc/samba/smb.conf

Füge dazu am Ende der Datei folgenden Text ein:

[Raspi NAS]
path = /media/nas
writeable = yes
guest ok = no

Statt [Raspi NAS] kann auch ein beliebiger Name eingetragen werden, mit dem die Netzwerkfestplatte dann im Windows Explorer angezeigt wird.

Speichere die Datei mit STRG + X, drücke danach j und anschließend die Eingabetaste.

Jetz wird dem Nutzer Pi noch ein Passwort für den Zugriff auf den NAS gegeben:

sudo smbpasswd -a pi

Anschließend werden diesem Benutzer und seiner Gruppe noch die Rechte für den Ordner der Freigabe erteilt:

sudo chown -R pi:sambashare /media/nas

Um die Konfiguration abzuschließen startest du deinen Pi neu:

sudo reboot

Auf deinem Windows-Computer kannst du dich mit dem Netzlaufwerk verbinden, indem du im Datei-Explorer in der Leiste Links auf “Netzwerk” klickst und anschließend in der Liste mit einem Doppelklick “RASPINAS” anklickst. Nun musst du die Anmeldedaten des Nutzers “pi” eingeben. Danach klickst du mit rechts auf den Ordner “Raspi NAS”, wählst “Netzlaufwerk verbinden…”, gibst die Daten des Nutzers Pi ein und klickst schließlich auf “Fertig stellen”. Jetzt ist der Datenserver fertig eingerichtet und du kannst ihn über deinen Arbeitsplatz (bei Windows 7 & 8: “Computer” / bei Windows 10: “Dieser PC”) unter dem Punkt “Netzwerkadressen” finden.

Raspberry Pi 3 NAS Performance

Die Performance des Raspberry Pi NAS übertrifft – wie erwartet – nicht die kommerziellen Lösungen. Ich erreiche damit durchschnittlich ca. 5 Megabyte pro Sekunde. Das ist für Arbeit mit Live-Zugriff auf den NAS-Speicher nicht optimal, für ein regelmäßiges Backup von wichtigen Dateien aber vollkommen ausreichend. Auch der Preis ist mit ungefähr 75€ (Raspberry Pi, USB-zu-SATA-Adapter und aktiver USB-Hub) auch nicht zu hoch.

Ob der Raspberry Pi 3 B+ mit seinem 300 MBit-Ethernet besser abschneidet, habe ich noch nicht getestet.

Bei Fragen oder Problemen kannst du mir gerne einen Kommentar hinterlassen.

Fertige Datenserver kaufen

Ein fertiger Datenserver hat gegenüer einem Raspberry Pi den Vorteil dass er die Festplatte(n) nicht über den langsamen USB2.0-Anschluss (maximal 480 MBit/s), sondern direkt per SATA anbinden kann. Damit sind je nach Version 1,5 GBit/s (SATA I), 3,0 GBits/s (SATA II) oder sogar 6,0 GBit/s (SATA III) möglich. Statt einer 100 MBit/s LAN-Schnittstelle verfügen die meisten aktuellen NAS-Systeme über Gigabit-Ethernet, dass eine Übertragungsrate von 1 GBit pro Sekunde ermöglicht. Highend-Modelle, wie z.B. die WD My Cloud EX4100 verfügen sogar über zwei Gigabit-Ethernet-Anschlüsse um maximale Performance zu gewährleisten. Viele solcher Datenserver besitzen außerdem USB-Schnittstellen an denen beispielsweise direkt ein USB-Stick angeschlossen werden kann, um die Daten direkt auf den NAS-Server zu übertragen.

Netgear D-DISC 4TB NAS
545,99 €
Stand: 17. Juli 2019 9:07 Uhr
Amazon Prime
Auf Amazon ansehen
Synology 2 Bay 4TB NAS
359,00 €
Stand: 17. Juli 2019 9:07 Uhr
Auf Amazon ansehen
Synology 1 Bay 4TB NAS
N/A
Stand: 16. Juli 2019 19:08 Uhr
Auf Amazon ansehen
WD MyCloud 4 Bay 8TB NAS
615,88 € 999,00 €
Stand: 17. Juli 2019 9:08 Uhr
Amazon Prime
Auf Amazon ansehen
Teile diesen Beitrag
, ,
Vorheriger Beitrag
Räume im Smarthome abfragen
Nächster Beitrag
Systemdaten des Raspberry Pi abrufen

Ähnliche Beiträge

Menü

Wir nutzen Cookies, um dir passende Inhalte zu präsentieren und dein Surfvergnügen zu optimieren, aktivieren Cookies aber erst, wenn du auf akzeptieren klickst. Weitere Informationen

Wir benutzen Google Analytics, um zu ermitteln, welche Inhalte unsere Besucher sehen wollen und welche nicht. Eingebettete YouTube-Videos helfen dir mittels Cookies nur die Videos zu sehen, die du sehen willst.

Schließen