homelab-brain/homelab-ai-bot/JELLYFIN.md
Homelab Cursor c4454e1c4d docs: Jellyfin Infrastruktur vollständig dokumentiert
- SSH-Zugang (michael@192.168.178.149 via lokalem Netz)
- NAS-Struktur: 192.168.178.170/Medien mit allen Mount-Punkten
- Save.TV → Jellyfin Workflow
- Synology NAS Shares und Zugang
- Staging-Ordner Filme zum nachbearbeiten erklaert
- Duplikat-Check Prozess dokumentiert
2026-04-06 16:57:43 +02:00

4.8 KiB
Raw Blame History

Jellyfin Server

Zugang

Feld Wert
Host 192.168.178.149 (lokal) / 100.77.105.3 (Tailscale)
Port 8096
Hostname debian-jellyfin-homeassistent
OS-User michael / PW: astral66
Version 10.9.11
API-Key 7285b4a8793541648bf156599ae05b43 (App: homelab-ai)
Admin-User admin
Admin-PW astral66

SSH-Zugang (nur aus dem lokalen 192.168.178.x Netz, z.B. via pve3):

sshpass -p 'astral66' ssh -o StrictHostKeyChecking=no michael@192.168.178.149

Von außen via Tailscale nur HTTP API erreichbar (Tailscale SSH erfordert Browser-Authentifizierung).

Netzwerk / Infrastruktur

Internet
  └── Fritz!Box (192.168.178.1)
        ├── Jellyfin-Server  192.168.178.149  (debian-jellyfin-homeassistent)
        ├── NAS/Windows      192.168.178.170  (Share: "Medien")
        ├── Synology NAS     192.168.178.94   (Share: "Filme" = Jellyfin Quelle, Share: "Michael")
        └── pve3             192.168.178.250  (= pve-mu-3, Tailscale: 100.109.101.12)

NAS-Zugriff auf dem Jellyfin-Server

Der Jellyfin-Server mountet den Share Medien von 192.168.178.170 (Windows-Maschine) an drei Stellen:

Mount-Punkt Zweck
/mnt/nas/ Haupt-NAS-Zugriff (user michael)
/mnt/nas_filme/ Gleicher Share, als root gemountet (automount)
/srv/media/ Gleicher Share, als root gemountet

Wichtige Ordner auf dem NAS (192.168.178.170/Medien):

Pfad Inhalt
/mnt/nas/Recorded TV/ ~700+ Jellyfin-Quelldateien (.mp4)
/mnt/nas/Filme zum nachbearbeiten/ Staging-Ordner: neue SaveTV-Filme warten hier auf Umbenennung/Einpflege
/mnt/nas/Filme umbenennen Eigangsordner/ Eingangs-Ordner für Batch-Umbenennung
/mnt/nas/Heimatfilme/ Private Heimvideos

Synology NAS (192.168.178.94)

Auf pve3 (192.168.178.250 / Tailscale 100.109.101.12) gemountet:

# Zugriff von pve3 (100.109.101.12):
ls /mnt/synology/  # Michael-Share (Michas Datenspeicher)
# enthält u.a.: Filme/, Heimatfilme/, Backups/, Musik/, ...

SMB-Shares auf der Synology:

  • Filme Jellyfin Quelle (benötigt eigene Credentials)
  • Michael Michas Datenspeicher (User: Orbitalo, PW: astral66)
  • Mila Milas Datenspeicher

Bibliotheken

Name Typ Quellpfad (auf Jellyfin-Server)
Filme movies /srv/media/Recorded TV/

Aktuell ~718 Filme im Bestand.

API-Nutzung

API_KEY="7285b4a8793541648bf156599ae05b43"
JF="http://100.77.105.3:8096"  # via Tailscale (von pve-hetzner aus)
# oder: JF="http://192.168.178.149:8096"  # lokal

# Anzahl Filme
curl -s "$JF/Items/Counts?api_key=$API_KEY"

# Alle Filme (Name + Pfad)
curl -s "$JF/Items?api_key=$API_KEY&IncludeItemTypes=Movie&Recursive=true&Fields=Name,Path&Limit=1000"

# Film suchen
curl -s "$JF/Items?api_key=$API_KEY&SearchTerm=Matrix&IncludeItemTypes=Movie&Recursive=true"

Erreichbarkeit: Tailscale-IP 100.77.105.3 ist von pve-hetzner aus direkt nutzbar (kein Hop nötig).

Save.TV → Jellyfin Workflow

Save.TV (Cloud-Recorder)
  └── CT 116 auf pve-hetzner
        └── savetv_auto_download.py  (Cron */30 * * * *)
              → lädt Kinofilme nach /mnt/savetv/ (auf pve-hetzner)
              → 1 Film gleichzeitig, 48h + TID-Jitter nach Aufnahme
        └── savetv_sync.py
              → kopiert Dateien von Hetzner via HTTP-API
              → Ziel: /mnt/nas/Filme zum nachbearbeiten/  (auf NAS 192.168.178.170)
              → Wartezeit: 24h nach Download
  └── Manuell: Umbenennen + in "Recorded TV" verschieben
        → Jellyfin scannt automatisch und nimmt Film auf

Staging-Ordner „Filme zum nachbearbeiten"

Zugriff:

# Von pve3 (100.109.101.12) via pve-hetzner:
sshpass -p 'astral66' ssh michael@192.168.178.149 'ls "/mnt/nas/Filme zum nachbearbeiten/"'

# Vergleich mit Jellyfin (Duplikat-Check):
# 1. JF-Filme holen:
curl -s "http://100.77.105.3:8096/Items?api_key=7285b4a8793541648bf156599ae05b43&IncludeItemTypes=Movie&Recursive=true&Fields=Name&Limit=1000"
# 2. Liste "Filme zum nachbearbeiten" holen (via michael@192.168.178.149)
# 3. Titelnamen normieren (Jahreszahl entfernen, Kleinschreibung) und vergleichen

Stand 06.04.2026: 53 Filme im Staging-Ordner, davon 17 bereits in Jellyfin (Duplikate):

  • 12 Monkeys, Angel Has Fallen, Bullet Train, Children of Men, Der mit dem Wolf tanzt, Die Frau in Blau (2023+2025), Die Spezialistin, Kill the Boss, Mile 22, No Turning Back, No Way Up, On the Line, Parker, Salt, Stirb langsam, Stirb langsam 2

Benutzer

Name Admin
admin ja
Hans ja (alt)
karsten nein
Holger nein
Peter nein
Klemens nein
michael ec nein
Ralf nein
rolf nein
wilfrid nein