Frischobst: Der Raspberry Pi als Mini-NAS mit Extra-Freiheit
Nachdem wir bei Level 1 mit einem simplen USB-Stick oder einer externen Festplatte an der FritzBox einen schnellen Einstieg ins Thema Netzwerkspeicher gefunden haben, machen wir jetzt den nächsten Schritt: Mehr Freiheit, mehr Kontrolle, aber immer noch kompakt und stromsparend. Willkommen bei Level 2 – dem Raspberry Pi als Mini-NAS!
Was steckt dahinter?
Ein Raspberry Pi ist ein winziger, günstiger Einplatinencomputer, der sich perfekt als stromsparender Heimserver eignet. Besonders Modelle wie der Raspberry Pi 4 (oder 5) mit 2–8 GB RAM und Gigabit-Ethernet sind für einfache NAS-Aufgaben gut geeignet. Wenn man daran eine USB-Festplatte oder SSD anschließt, hat man in kürzester Zeit seinen eigenen Netzwerkspeicher – ähnlich wie beim FritzBox-USB-NAS, aber mit ungleich mehr Möglichkeiten.
Was wird gebraucht?
Raspberry Pi – prinzipiell bereits ab V1 möglich – performanter wird es aber so richtig erst mit V4 oder V5 (am besten mit 4 oder besser gleich 8 GB RAM)
USB-Festplatte oder SSD (NTFS oder ext4 formatiert)
microSD-Karte (16–32 GB) für das Betriebssystem (zumindest bei V1 und V2) neuere können auch direkt von USB Stick bzw. USB SSD aus starten
Netzteil für den Pi (mindestens 3A) – Achtung, ganz besonders wichtig, wenn der Raspi immer wieder mal in die Knie geht ist die Ursache oft das Netzteil!
Ethernet-Kabel oder WLAN (Ethernet empfohlen)
Zusätzlich ist hilfreich wenn ihr keine Berührungsangst mit der Kommandozeile habt, denn einige Elemente der Konfiguration erfordern Eingaben von Codezeilen bzw. Befehlen, besonders wenn Ihr eine Light Installation ohne grafische Benutzeroberfläche plant. Wer hier nicht mitmischen will, geht einfach direkt weiter zum Level3.
Installation & Einrichtung
Nachdem die Hardware zusammengestellt ist – Raspberry Pi mit microSD-Karte, Netzteil und idealerweise SSD USB-Festplatte – starten wir mit der Software. Ziel ist, dass der Pi als Netzwerkspeicher fungiert, auf den alle Geräte im Heimnetz bequem zugreifen können. Außerdem legen wir ihn so aus, dass später problemlos Dienste wie Nextcloud, Pi-hole (Auch für sich ein tolles Bastelprojekt, zB. in einem Docker Container) oder ein Medienserver installiert werden können.
Zuerst brauchst du ein Betriebssystem für den Pi. Am einfachsten geht das mit dem Raspberry Pi Imager, den du kostenlos für Windows, macOS und Linux herunterladen kannst.
Starte den Imager und wähle unter „Choose OS“ → „Raspberry Pi OS (32-bit)“ → „Raspberry Pi OS Lite“ oder „Raspberry Pi OS with Desktop“ (wenn du die grafische Oberfläche möchtest – für Einsteiger die erste Wahl). Wähle jetzt unter „Choose Storage“ deine microSD-Karte (oder USB Stick bei neueren) aus. Optional: Mit „Settings“ (kleines Zahnrad) kannst du WLAN-Zugangsdaten, Hostname und SSH direkt voreinstellen. Klicke nun auf „Write“ und warte, bis der Imager fertig ist.
Neuere Raspberries starten auch direkt von angeschlossenen USB Sticks anstatt den MicroSD Karten bzw. sogar direkt von angeschlossenen USB SSD oder NvME.
Welcher Raspi was genau kann könnt ihr bei DrKlipper hier nachsehen.
Wir gehen hier mal vom einfachsten Fall am ältesten Raspi V1 aus und arbeiten uns von da dann hoch. (Dort wird noch eine normale SD Karte gebraucht, die neueren setzen dann auf microSD) Als nächsten Schritt musst Du nun die frisch erstellte (micro)SD-Karte einlegen, Raspberry Pi einschalten, und schon bootet dein Pi ins frisch installierte System! Die SD Karte (bzw. der USB Stick) ist grundsätzlich so fertig und der Raspi benutzbar, von einer angeschlossenen SSD würde das ganze System aber noch viel performanter laufen. Also verbinden wir im nächsten Schritte dann die SSD über ein USB-SATA-Kabel oder ein HAT+ (für M.2 SSDs) mit dem Raspberry Pi. Wenn wir ein Image von der SD-Karte auf die SSD klonen möchten, bitte aufpassen, dass die SSD leer ist oder wichtige Daten gesichert sind. 🙂
Hier gibt es jetzt zwei Wege. Ganz alte Systeme können V1 / V2 vom frisch kopierten oder direkt per Imager geklonten USB Stick starten, wenn man nur die Datei bootcode.bin
auf die SD-Karte kopiert. Sowohl MicroSD Karte als auch USB Stick werden dann aber beide dauerhaft weiter im Gerät gebraucht.
Bei neueren Systemen geht es anders. (DrKlipper weiß bescheid)
Konfiguration und Dienste
Schließe den Pi per HDMI an einen Monitor und eine Tastatur an oder verbinde dich per SSH (Standardbenutzer: pi
, Passwort: raspberry
). Dann führst du das Konfigurationsmenü aus:
sudo raspi-config
Hier kannst du u. a. folgendes einstellen:
- Hostname ändern (z. B. „MeinHeim, Beerchen, spassbremse“) Sei kreativ! Nein? Dann schau dir hier paar Vorschläge an.
- Lokaleinstellungen wie Sprache, Tastatur und Zeitzone
- SSH aktivieren, falls nicht schon vorab über den Imager geschehen
- Benutzerpasswort ändern (wichtig für die System-Sicherheit!)
- Erweiterungen wie I2C oder SPI kannst du ignorieren, wenn du nur einen NAS betreiben willst.
Nach Abschluss der Konfiguration bitte einen Neustart durchführen:
sudo reboot
Ersteinrichtung steht? Prima, dann machen wir als nächstes…
genau, Updates!
Vor dem Einrichten des Netzwerkspeichers sollten alle Pakete auf den aktuellen Stand gebracht werden. So sind Sicherheitslücken geschlossen und die neuesten Verbesserungen installiert.
sudo apt update
sudo apt full-upgrade -y
Der erste Befehl sucht nach zu aktualisierenden Paketen und erstellt intern eine Liste, der zweite führt die Updates direkt aus und die Option -y sorgt dafür dass auch nicht noch einmal extra nachgefragt wird, ob Du dass auch wirklich willst.
Option: Klonen der SD-Karte / USB Sticks auf die SSD.
Wir starten den „SD Card Copier“ (im Zubehör-Menü unseres Raspi). Dort wählen wir die SD-Karte als Quelle und die SSD als Ziel aus und warten ein Weilchen… der Kopiervorgang kann einige Zeit dauern, je nach Größe und Geschwindigkeit der beiden Medien. Nach dem Klonen müssen wir noch die Bootreihenfolge ändern, damit der Raspberry Pi von der SSD startet.
Bootreihenfolge ändern:
Dazu führen wir folgenden Befehl aus:
sudo raspi-config
Wir wählen dort „Advanced Options“ > „Boot Order“ und selektieren „USB Boot“ (oder „NVMe Boot“ für M.2 SSDs). Jetzt müssen wir nur noch den Raspberry Pi einmal neu starten und schon läuft das System von unserer schnellen Platte.
USB-Festplatte einbinden
Schließe deine Festplatte oder SSD an einen USB-Port des Pi an. Prüfe mit dem Befehl
lsblk
ob die Festplatte erkannt wird, meist sollte deine neue Platte als /dev/sda1
zu finden sein. Vergleichen kann man angeschlossene Geräte beispielsweise über die angegebene Größe. Dann erstellen wir einen Mountpoint, sprich ein neues Verzeichnis in dem wir dann den Inhalt der angeschlossenen Festplatte angezeigt haben wollen.
sudo mkdir /mnt/datensarg
Nun kannst du die Festplatte manuell mounten (für ext4 als Beispiel). Das nennt man dann mountpoint mapping oder auch Einhängen der Mounts.
sudo mount /dev/sda1 /mnt/datensarg
Damit der Mount beim Neustart automatisch erfolgt, musst du sie in der Datei /etc/fstab
eintragen. Ansonsten ist die Festplatte nur so lange eingebunden bis der Rechner neu gestartet wird.
Zuerst bitte dafür die UUID Nummer der Festplatte herausfinden, dass geht so:
blkid
Dann öffne die fstab:
sudo nano /etc/fstab
Und füge eine Zeile hinzu, z. B.: (bitte mit den bei dir passenden Angaben, also deine UUID die Du von deiner Festplatte oben hast, deinen Mountpunt und auch dein Dateisystem)
Weitere Infos wie die fstab und das mounten funktionieren gibt es auch hier.
UUID=deine-UUID /mnt/datensarg ext4 defaults,noatime 0 2
Jetzt bitte diese Änderung speichern (Entweder mit Tastenkombination STRG+O und danach Taste Y oder mit STRG+X und danach Taste Y – Bei Option O fragt nano ob Du speichern willst und Du musst danach noch den Editor schließen, bei X schließt Du den Editor und er fragt dich vorher ob Du noch speichern willst.)
Mit dem Befehl
sudo mount -a
kannst Du danach zum Abschluss noch testen, ob alles korrekt eingebunden wird.
Plattenfreigaben für den Zugriff aus dem Heimnetz erfolgen dann üblicherweise über SAMBA – damit Windows- oder macOS-Geräte auf den Speicher zugreifen können, brauchst du die Anwendung Samba als Server für SMB/CIFS-Freigaben. Installiere es mit:
sudo apt install samba -y
Bearbeite direkt im Anschluss an die Installation dann die Samba Konfigurationsdatei wieder mit unserem Editor nano:
sudo nano /etc/samba/smb.conf
Am Ende der Datei fügst du deine Freigabe hinzu, z. B.: (wie oben eingerichtet)
[MeinHeim]
path = /mnt/datensarg
writeable = yes
create mask = 0777
directory mask = 0777
browseable = yes
guest ok = yes
Damit kann jeder im lokalen Netz ohne Passwort zugreifen. Wenn du lieber Benutzerzugriff möchtest, kannst du guest ok = no
setzen und Samba-Benutzer z.B. mit
sudo smbpasswd -a pi
neu anlegen. Anschließend einfach einmal den Samba-Dienst neu starten:
sudo systemctl restart smbd
Und wieder einen Schritt weiter, war doch gar nicht soo schwer, oder? Jetzt ist auf dem Raspi auch eine Platte dauerhaft eingebunden die im Heimnetz freigegeben auf deine Daten wartet.
Unter Windows würde man diese Freigabe jetzt entweder als Netzlaufwerk einbinden, dann ist die Platte bei jedem PC Start immer automatisch mit verfügbar oder bei Bedarf über den Windows Explorer unter Netzwerk auf den Raspi und die neue Freigabe zugreifen.
Das Netzlaufwerk kannst du dauerhaft einbinden, indem du mit der rechten Maustaste auf „Dieser PC“ → „Netzlaufwerk verbinden“ gehst und die Adresse dort eingibst. Die Adresse des Raspberry ist in folgenden Formaten eingebbar:\\raspberrypi\datensarg
(Name des Raspi + Namen eurer Freigabe) oder\\192.168.1.100\datensarg
(falls dass die IP Adresse ist mit der er eingerichtet wurde – und der Name eurer Freigabe)
Auf macOS öffnest du den Finder und wählst „Gehe zu“ → „Mit Server verbinden“ und trägst smb://raspberrypi/datensarg
ein.
Unter Linux lässt sich übrigens am Client System auch die Freigabe in die fstab eintragen, damit das Laufwerk direkt nach Start immer verfügbar ist.
Zum manuellen einhängen der Freigabe reicht aber auch ein einfacher mount befehl. Nutzt dazu folgenden Befehl um erst einmal die CIFS Utilities zu installieren:
sudo apt install cifs-utils
Im Anschluss könnt ihr die Freigabe mounten:
sudo mount -t cifs -o username=<Samba-Benutzername>,password=<Samba-Passwort> //192.168.1.100/datensarg /mnt/raspidatensarg
In der fstab würde die dauerhafte Einbindung so aussehen:
//192.168.1.100/datensarg /mnt/raspidatensarg cifs username=<Samba-Benutzername>,password=<Samba-Passwort>,uid=<Linux-Benutzer-ID>,gid=<Linux-Gruppen-ID>,vers=1.0 0 0
Ersetze die Platzhalter wie oben beschrieben. uid
und gid
sind die Benutzer- und Gruppen-IDs des Benutzers, der auf die Freigabe zugreifen soll.
Wir können diese mit id <Linux-Benutzername>
ermitteln.
Wichtige Hinweise:
- Verwenden sichere Passwörter für die Samba-Benutzer.
- Achte auf die korrekten Pfadangaben und Dateiberechtigungen.
- Eine Einbindung in
/etc/fstab
ist immer dann empfehlenswert, wenn die Freigabe regelmäßig wieder verwendet wird. - Probleme beim Zugriff sind häufig Rechte, Dienste und Sicherheitsoptionen. Überprüfe die Firewall-Einstellungen auf beiden Geräten und stelle sicher, dass Samba auf dem Raspi ordnungsgemäß gestartet ist und dass
cifs-utils
auf dem Client installiert sind.
TL:DR
Du hast jetzt deinen eigenen Heimserver auf Raspberry-Pi-Basis, der weit mehr kann als ein USB-Stick an der FritzBox. Dank Linux und der starken Raspberry-Community kannst du jederzeit neue Software Funktionen nachrüsten und damit den Mini-Server an deine wachsenden Bedürfnisse anpassen. Und das alles auf einem Gerät, das weniger Strom zieht als eine Glühbirne! Tadaa! Vorteile im Level 2 (Raspberry Pi)
- Wenig Hardware nötig, selbst nur SD Karte + USB Stick geht
- geringster Stromverbrauch für vollwertiges System
- kaum Platzbedarf (Kann quasi fast überall rumliegen)
- viele Zusatzfunktionen nachrüstbar (Linux/Debian)
😐 Nachteile im Level 2 (Raspberry Pi)
- erfordert zumindest rudimentäre Linux / cli Kenntnisse
- langsame Übertragungsraten, besonders bei mehreren Nutzern
- nicht ganz triviale Einrichtung (1-2 Stunden)
- begrenzte Hardware-Ressourcen, keine Aufrüstung möglich
- begrenzte Anschlussmöglichkeiten für spätere Erweiterungen