Anleitung · Heimkino

🎬 Das eigene Netflix mit Jellyfin

In dieser Anleitung baust du eine Mediathek für die ganze Familie: Jellyfin läuft als kleiner Container auf Proxmox, die Filme liegen auf einem Windows-Rechner (oder NAS) und werden nur lesend eingebunden. Am Ende schaut ihr auf jedem Fernseher, Handy und im Browser – ohne Abo und ohne Werbung.

DAUER1–2 Stunden
KOSTEN0 €
SCHWIERIGKEITmittel
VORAUSSETZUNGProxmox läuft

Beispielwerte in dieser Anleitung – ersetze sie durch deine eigenen: Windows-Rechner 192.168.178.10, Freigabe Video, Jellyfin-Container Nummer 110.

01Container anlegen

Am schnellsten geht es mit den Community-Skripten für Proxmox. In der Proxmox-Oberfläche links auf den Server (pve) klicken → Shell und eingeben:

Proxmox-Shellbash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/jellyfin.sh)"

Im Assistenten „Advanced“ wählen und vergeben: 2 CPU-Kerne, 3072 MB RAM, 16 GB Speicher, eine feste IP (z. B. 192.168.178.20/24). Das Skript installiert Jellyfin gleich mit. Notiere dir die Container-Nummer (CT-ID).

Test: Im Browser http://192.168.178.20:8096 öffnen – der Jellyfin-Einrichtungsassistent erscheint. Noch nicht durchklicken, erst kommen die Filme.

02Windows-Freigabe vorbereiten

  1. Auf dem Windows-Rechner einen eigenen Benutzer nur für Jellyfin anlegen, z. B. jfmedia mit eigenem Passwort (Einstellungen → Konten → Andere Benutzer → Konto hinzufügen → „Ich kenne die Anmeldeinformationen nicht“ → „Benutzer ohne Microsoft-Konto“).
  2. Rechtsklick auf den Filmordner → Eigenschaften → Freigabe → Erweiterte Freigabe → „Diesen Ordner freigeben“, Name Video → Berechtigungen: „Jeder“ entfernen, jfmedia hinzufügen, nur „Lesen“ anhaken.
  3. Im Reiter Sicherheit ebenfalls jfmedia mit „Lesen, Ausführen“ eintragen.
💡 Warum nur lesen? Dann kann Jellyfin (oder ein Fehler darin) niemals Filme löschen oder umbenennen.

03Freigabe auf dem Proxmox-Host einhängen

Ein normaler (unprivilegierter) Container darf selbst keine Windows-Freigaben einhängen. Deshalb hängt der Proxmox-Host sie ein und reicht sie danach durch. In der Proxmox-Shell:

Proxmox-Shellapt install -y cifs-utils
mkdir -p /mnt/jellyfin-media

# Zugangsdaten in eine Datei, die nur root lesen darf
cat > /root/.smb-jellyfin <<'EOF'
username=jfmedia
password=DEIN-PASSWORT
EOF
chmod 600 /root/.smb-jellyfin

Dann den Eintrag in /etc/fstab ergänzen (alles in eine Zeile, z. B. mit nano /etc/fstab):

/etc/fstab – eine Zeile//192.168.178.10/Video /mnt/jellyfin-media cifs credentials=/root/.smb-jellyfin,ro,soft,vers=3.0,iocharset=utf8,file_mode=0444,dir_mode=0555,_netdev,x-systemd.automount 0 0
Proxmox-Shellsystemctl daemon-reload
mount /mnt/jellyfin-media
ls /mnt/jellyfin-media
Test: ls zeigt deine Filmordner. Steht dort „Permission denied“ oder „host is down“: Benutzer/Passwort in /root/.smb-jellyfin und die Freigabe-Rechte aus Schritt 2 prüfen.
Warum soft? Ohne diese Option friert alles ein, was auf die Freigabe zugreift, sobald der Windows-Rechner aus ist – im schlimmsten Fall der ganze Container. Mit soft gibt es nur eine Fehlermeldung.

04In den Container durchreichen

Proxmox-Shellpct set 110 -mp0 /mnt/jellyfin-media,mp=/media/video,ro=1
pct reboot 110
Test: pct exec 110 -- ls /media/video zeigt dieselben Ordner wie auf dem Host.

05Ordner richtig benennen

Jellyfin erkennt Titel, Cover und Beschreibung fast immer richtig, wenn die Ordner so aussehen:

OrdnerstrukturFilme/
  Zurück in die Zukunft (1985)/
    Zurück in die Zukunft (1985).mkv
Serien/
  The Expanse/
    Staffel 01/
      The Expanse S01E01.mkv

Wichtig sind das Jahr in Klammern bei Filmen und SxxEyy bei Serien-Folgen.

06Jellyfin einrichten

  1. http://192.168.178.20:8096 öffnen, Sprache Deutsch, Admin-Konto mit starkem Passwort anlegen.
  2. Medienbibliothek hinzufügen → Inhaltstyp „Filme“ → Ordner /media/video/Filme → Bevorzugte Sprache „Deutsch“, Land „Deutschland“. Dasselbe mit „Serien“ und /media/video/Serien.
  3. Weiter bis zum Ende – Jellyfin liest jetzt alles ein. Bei großen Sammlungen kann das eine Stunde dauern.
  4. Dashboard → Benutzer → +: für jedes Familienmitglied ein eigenes Konto. Bei Kindern unter „Kindersicherung“ eine Altersfreigabe setzen.
💡 Nutze das Admin-Konto nur zum Verwalten. Zum Schauen lieber ein normales Konto – gerade auf Fernsehern bleibt man dauerhaft angemeldet.

07Schutz gegen leere Bibliotheken

Startet Jellyfin (z. B. nach einem Stromausfall), bevor die Freigabe da ist, sieht es leere Ordner – und räumt Sammlungen und „Weiterschauen“-Listen ab. Dagegen hilft ein kleines Warte-Skript im Container:

Shell im Container (pct enter 110)cat > /usr/local/bin/warte-auf-medien.sh <<'EOF'
#!/bin/bash
# Jellyfin erst starten, wenn die Filmfreigabe wirklich lesbar ist (max. 5 Minuten warten)
for i in $(seq 1 60); do
  [ -n "$(ls -A /media/video/Filme 2>/dev/null)" ] && exit 0
  sleep 5
done
echo "Medienfreigabe fehlt - Jellyfin startet trotzdem" >&2
EOF
chmod +x /usr/local/bin/warte-auf-medien.sh

mkdir -p /etc/systemd/system/jellyfin.service.d
cat > /etc/systemd/system/jellyfin.service.d/warten.conf <<'EOF'
[Service]
ExecStartPre=/usr/local/bin/warte-auf-medien.sh
TimeoutStartSec=400
EOF
systemctl daemon-reload

08Apps & Zugriff von unterwegs

Caddyfilejelly.deine-domain.de {
	reverse_proxy 192.168.178.20:8096
}
Login klappt nur am Handy nicht? Die Handy-Tastatur hängt gern ein unsichtbares Leerzeichen an den Benutzernamen. Im Jellyfin-Protokoll (Dashboard → Protokolle) sieht man es: "jörg " statt "jörg".
← zurück zu den Projekten