Plex-Datenbank auf externe Platte verschieben

Vielleicht nutzt ihr ja auch Plex und habt euch schon einmal überlegt, wie ihr Plex weg vom Systemlaufwerk hin auf eine externe Platte bringen könnt. Besonders wenn ihr einen Raspi nutzt, der mit einer SD-Karte betrieben wird, und ihr diese von Schreibzugriffen entlasten wollt, ist das durchaus sinnvoll.

Ich werde hier nicht die oft genannte Möglichkeit mit Symlinks verwenden, sondern darstellen, wie man auf Systemen mit systemd, wie z. B. Debian, das Ganze systemkonform realisiert.

Die Idee

Um die Plex-Library weg vom Systemlaufwerk hin auf ein anderes Laufwerk zu verlegen, bietet sich folgende grundsätzliche Vorgehensweise an:

  • Plex Library auf ein Share legen
  • am besten dasselbe wie die Mediatheken
  • Vorteil: gemeinsames Backup

Das lässt sich am einfachsten mit systemd units lösen, genauer gesagt mit einem sogenannten override-file für die systemd unit, mit der Plex ohnehin schon auf Debian gestartet wird. Dadurch bleiben eure Änderungen und Ergänzungen auch bei einem Update von Plex und der systemd Unit erhalten.

Vorbereitung:

a) Plex stoppen mit 

sudo systemctl stop plexmediaserver

b) Verzeichnis für die Plex Library anlegen.

Ich nenne es im weiteren „PlexData“ auf dem Share mit den Mediatheken. Den vollständigen Pfad müsst ihr euch merken. Ich nehme im Weiteren den Pfad /share/Holo Deck/PlexData/

c) „PlexData“ dem user „plex“ und der Gruppe“users“ zuweisen

sudo chown plex:users PlexData
sudo chmod 775 PlexData

d) den user „plex“ zur Gruppe „users“ hinzufügen:

sudo usermod -a -G users plex

Bisherige Library kopieren

Nun kopiert ihr die bisherige Plex Library in dieses Verzeichnis. Das Original liegt unter: /var/lib/plexmediaserver/Library/Application Support/ (Wenn der Pfad – wie hier – Leerzeichen enthält, sind die Anführungszeichen sehr wichtig!)

cd "/var/lib/plexmediaserver/Library/Application Support"
sudo cp -a "Plex Media Server" "/share/Holo Deck/PlexData/"

Nun prüfen wir vor dem Start von Plex noch ab, ob das Verzeichnis auch wirklich vorhanden ist. Dazu wird eine Ergänzungsdatei (override) für den bereits bestehenden Plex-Service erzeugt. Das geht sehr einfach mit:

sudo systemctl edit plexmediaserver

Es öffnet sich eine Datei, in der ihr im oberen gekennzeichneten Teil zwischen den Kommentaren (diese unbedingt stehen lassen!) Folgendes einfügt. Ich habe hier die kompletten ersten Zeilen dargestellt:

### Editing /etc/systemd/system/plexmediaserver.service.d/override.conf
### Anything between here and the comment below will become the contents of the drop-in file

[Unit]
ConditionPathExists=/share/Holo Deck/PlexData/Plex Media Server/Preferences.xml

[Service]
Environment="PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR=/share/Holo Deck/PlexData"

### Edits below this comment will be discarded

Den Pfad zum Share müsst ihr hier natürlich an das anpassen, was ihr gewählt habt.

Und alles scharf schalten

Nun schalten wir das Ganze wieder scharf, indem der Plex Server gestartet wird.

sudo systemctl start plexmediaserver

Wenn ihr alles richtig gemacht habt, läuft euer Plex Server nun wieder und verwendet die Library aus dem neu angelegten Verzeichnis. Bei einem Neustart des NAS wird Plex auch nur dann gestartet, wenn auch die die externe Platte mit der neuen Library verfügbar ist.

Wenn ihr prüfen wollt, ob Plex auch läuft, könnt ihr das mit folgendem Befehl tun:

systemctl status plexmediaserver

Damit erkennt ihr nicht nur, ob Plex läuft, sondern erhaltet auch Infos, wenn Plex nicht starten sollte. Sollte aus irgendeinem Grund Plex mal nicht laufen, z.Bsp. nach einem Reboot, dann kann ein

sudo systemctl restart plexmediaserver

ihn wieder neu starten. Wenn ihr nun sicher seid, dass alles läuft, könnt ihr eure bisherige Library löschen und so eure SD-Karte entlasten.

Happy Plex-ing.

Related Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte löse die kleine Aufgabe, um den Kommentar abzuschicken. *