Sicher bin ich nicht der Einzige, der das Problem kennt: Man hat eine oder sogar mehrere externe Festplatten mit Filmen, Fotos, Musik und / oder Serien. Doch wie macht man diese bequem im eigenen Heimnetz und optional außerhalb davon verfügbar? Genau dies zeigt mein Selbstversuch – welcher zentral durch einen Raspberry Pi ermöglicht wird.
So manchem Nutzer ist die Software-Lösung Plex vermutlich bereits bekannt. Was für Open-Source-Fanatiker wohl die Hölle auf Erden ist, stört mich nun persönlich überhaupt nicht – denn es tut für mich, was es tun soll. Natürlich gibt es auch andere Lösungen, doch bin ich mit Plex aus meinem Umfeld bereits „vorbelastet“ und somit in einer Art von Ökosystem – wie ich mit iPhone, iPad und Watch auch bei Apple bin. Für mich also keine große Sache.
Bevor es nun aber losgeht, was benötigt man in der Grundausstattung überhaupt alles? In meinem Fall sind es folgende Komponenten:
- Raspberry Pi 3 B+
- Raspberry Pi Netzteil (2,5A – 5V)
- Raspberry Pi Gehäuse
- SanDisk Ultra 32 GB microSD
Diese vier Hardware-Komponenten reichen schon völlig aus, um den Raspberry Pi in Betrieb zu nehmen. Allerdings fehlt noch die entsprechende Software. In meinem Fall setze ich auf Raspbian – eine angepasste Version der bekannten Linux-Distribution Debian. Dabei hat man die Wahl zwischen drei Versionen:
- Raspbian Lite – ohne GUI (nur mit Konsole nutzbar)
- Raspbian with Desktop – ein GUI wird vorkonfiguriert mitgeliefert
- Raspbian with Desktop and recommended Software – selbe Variante wie „with Desktop“ + diverse Software
Um ein möglichst schlankes System zu haben, wähle ich hierbei die Lite-Version, denn die Arbeit in der Konsole ist mir persönlich nicht neu. Wer mit Linux noch keine Erfahrung hat, kann aber unter Umständen auch auf die Desktop-Variante zurückgreifen.
Die Installation des Raspberry Pi
Hat man das entsprechende Image heruntergeladen, muss es nun noch auf die SD-Karte geflasht werden. Dies kann unter anderem mit Win32 Disk Imager erfolgen. Hat man das Image erfolgreich geflasht, empfielt es sich noch vor dem ersten Start mit Notepad++ oder einem anderen Editor eine leere Datei (ohne Dateiendung) anzulegen und diese unter dem Namen „SSH“ abzuspeichern. Diese verschiebt man auf die SD-Karte in die Boot-Partition. Damit aktiviert Raspbian bereits beim ersten Bootvorgang den Zugriff per SSH und erspart somit das extra anstecken von Maus, Tastatur und Monitor. Die Logindaten lauten dabei standardmäßig wie folgt:
user: pi
password: raspberry
Über den Konsolenbefehl „sudo raspi-config“ lässt sich nach dem Login die Konfiguration des Raspberry Pi aufrufen, worüber sich unter anderem auch das Passwort ändern lässt – was dringend zu empfehlen ist. Weiterhin lässt sich auch das Tastaturlayout und die Sprache anpassen.
Festplatten einbinden
In meinem Fall kommen zwei externe Festplatten mit einer Kapazität von 3 TB (NTFS) und 6 TB (exFAT) zum Einsatz. Um diese Dateisysteme zu mounten – also einzubinden, benötigt Linux „Hilfe“.
Um auch künftig diverse Dateisysteme ohne größeren Aufwand einbinden zu können, installiere ich direkt die gängigsten Treiber mit dem Befehl „sudo apt-get -y install ntfs-3g hfsutils hfsprogs exfat-fuse“. Ist die Installation erfolgreich verlaufen, erstellt man nun im Verzeichnis /media den oder die Mountpunkte. Dies geschieht mit dem Befehl „sudo mkdir /media/xxx“ – xxx steht hierbei für einen frei zu wählenden Ordnernamen.
Mit „sudo blkid -o list -w /dev/null“ listen wir uns nun die angesteckten Speichermedien auf. Wichtig ist es nun sich die entsprechenden Bezeichnungen zu merken, denn diese werden im folgenden Schritt wichtig. Gleichzeitig sollte man auch wissen, welches Dateisystem das Speichermedium nutzt.
FAT32
sudo mount -t vfat -o utf8,uid=pi,gid=pi,noatime /dev/sdx /media/xxx
NTFS
sudo mount -t ntfs-3g -o utf8,uid=pi,gid=pi,noatime /dev/sdx /media/xxx
HFS+
sudo mount -t hfsplus -o utf8,uid=pi,gid=pi,noatime /dev/sdx /media/xxx
exFAT
sudo mount -t exfat -o utf8,uid=pi,gid=pi,noatime /dev/sdx /media/xxx
ext4
sudo mount -t ext4 -o defaults /dev/sdx /media/xxx
/dev/sdx ist hierbei durch den tatsächlichen Buchstaben also zum Beispiel „/dev/sdb1“ zu ersetzen.
Da wir unseren Raspberry Pi ja als Mediaserver nutzen wollen, ist es sinnvoll nach einem Neustart alle Speichermedien automatisch wieder einzubinden. Dies geschieht über die fstab-Datei (/etc/fstab). Mit einem Editor – in meinem Fall nano – editieren wir die Datei nun wie folgt:
FAT32
UUID=3241-40CE /media/xxx/ vfat utf8,uid=pi,gid=pi,noatime 0
NTFS
UUID=3241-40CE /media/xxx/ ntfs-3g utf8,uid=pi,gid=pi,noatime 0
HFS+
UUID=3241-40CE /media/xxx/ hfsplus utf8,uid=pi,gid=pi,noatime 0
exFAT
UUID=3241-40CE /media/xxx/ exfat utf8,uid=pi,gid=pi,noatime 0
ext4
UUID=3241-40CE /media/xxx/ ext4 defaults 0
Die UUID muss natürlich entsprechend eures Gerätes angepasst werden. Diese wird über „sudo blkid -o list -w /dev/null“ ermittelt.
Plex installieren:
Haben wir die Speichermedien erfolgreich eingebunden, kann es nun auch schon an die Einrichtung von Plex gehen. Mit den folgenden zwei Befehlen updaten wir dabei zuerst die Paketquellen und installieren etwaige Updates.
sudo apt update
sudo apt upgrade
Nun installieren wir noch das HTTPS-Transport-Paket, sofern dies nicht bereits installiert ist:
sudo apt installl apt-transport-https
Standardmäßig ist Plex natürlich nicht in den Paketquellen von Raspbian verfügbar, weshalb wir die entsprechende Paketquelle nun von Hand hinzufügen müssen:
wget -O – https://dev2day.de/pms/dev2day-pms.gpg.key | sudo apt-key add –
echo deb https://dev2day.de/pms/ jessie main | sudo tee /etc/apt/sources.list.d/pms.list
sudo apt update
Ist dieser Schritt erfolgreich durchlaufen, installieren wir nun schon den Plex Mediaserver:
sudo apt install -t jessie plexmediaserver
Nach der Installation kann man nun allerdings nicht direkt loslegen, sondern benötigt noch ein paar Einstellungen. So muss der Nutzer, unter dem Plex läuft nun noch angepasst werden. Dazu greift man wieder zu einem Editor, in diesem Beispiel nano.
sudo nano /etc/default/plexmediaserver.prev
Standardmäßig läuft der Server unter dem Nutzer Plex, welcher natürlich so bei unserer Installation aber nicht angelegt wurde. Also ändert man nun die Zeile „PLEX_MEDIA_SERVER_USER=plex“ auf „PLEX_MEDIA_SERVER_USER=pi“ und speichert die Datei ab.
Nun noch den Plex-Server neustarten und schon ist er fast einsatzbereit:
sudo service plexmediaserver restart
Denn bevor er der Server final in Betrieb gehen kann, gilt es noch dem Pi eine feste IP-Adresse zu zuweisen. Dies geschieht ebenfalls wieder mit nano:
sudo nano /boot/cmdline.txt
In der nun geöffneteten Datei fügt man in einer neuen Zeile nun folgenden Inhalt hinzu:
„ip = 192.168.x.x“
Der IP-Bereich muss natürlich je nach vorhandenen Einstellungen entsprechend angepasst werden. Nach einem Neustart des Raspberry Pi kann es nun an die Einrichtung von Plex gehen.
Mediatheken in Plex anlegen:
Über die nun definierte IP-Adresse und den Port 32400 lässt sich im Browser nun die Oberfläche von Plex öffnen. Dort erfolgt nun auch die Einrichtung der Mediatheken von Plex. Das Prinzip dahinter ist grundsätzlich selbsterklärend.
Hat man sich alle gewünschten Mediatheken angelegt, ist je nach Umfang erst einmal Geduld gefragt. Denn nun analysiert Plex erst einmal alle Dateien und fügt diese den Mediatheken hinzu. Wenn verfügbar werden auch Dinge wie Cover oder Hintergrundinformationen zu Serien, Filmen oder Interpreten hinzugefügt.
Hat man diesen Schritt durchlaufen, gibt uns Plex natürlich noch mehr Möglichkeiten. Auf Wunsch lässt sich über eine gesicherte Verbindung auch von außerhalb auf das Gerät zugreifen. Je nach Router sind hierfür entsprechende Port-Einstellungen nötig. Welche dies sind und wie diese zu treffen sind, sind bitte der Dokumentation des eigenen Gerätes zu entnehmen. Hat dieser Schritt funktioniert, lässt sich bei entsprechender Upload-Rate so auch von unterwegs aus Musik streamen oder der Film von gestern Abend zu Ende schauen.
Macht Plex auf dem Raspberry Pi wirklich Spaß?
Während die ersten Raspberry Pi-Modelle nicht unbedingt dafür bekannt waren Leistungsmonster zu sein, kann ich zumindest im Fall des 3 B+ der gestellten Frage ein klares Ja entgegensetzen. So habe ich beim Streamen von Inhalten in 1080p weder Zuhause noch über WLAN (Raspberry ist per LAN angebunden) noch unterwegs Probleme in Sachen Qualität oder Performance. Auch Film schauen und von einem zweiten Gerät aus Musik streamen war bisher ohne Probleme möglich. Selbst die Syncronisation von Inhalten zum Offline-Konsum funktioniert erstaunlich schnell. Solange man das Gerät also nahezu allein nutzt, steht einem flüssigen Streaming kaum / gar nichts entgegen. Probleme sehe ich allerdings, wenn es darum geht mehrere Inhalte mit 1080p parallel zu verteilen. Hier sollte man dann, sofern man bei einem Einplatinen-Modell bleiben möchte, zu entsprechend stärkeren Modellen greifen. Diese machen dann unter Umständen allerdings den Preisvorteil des Raspberry Pi zu nichte. Wer aber auf längere Sicht eine alleinige Nutzung plant und nicht unnötig viel Geld investieren möchte, dürfte mit diesem Setup gut bedient sein.