medialab Server mit apt installieren
medialab Server wird als signierte Debian-Pakete von https://apt.medialab.works/debian verteilt:
| Paket | Inhalt |
|---|---|
medialab-server |
der Server (basiert auf Jellyfin 12.2), der jellyfin-Systemdienst und der Updater in der App |
medialab-server-web |
die Weboberfläche |
jellyfin-ffmpeg8 |
Jellyfins FFmpeg-Build für das Transcoding |
medialab-repo |
die Repository-Definition und ihr Signierschlüssel |
Architekturen: amd64 und arm64.
Unterstützte Systeme
Die Pakete werden für Debian 12 (bookworm) gebaut (+deb12 in der Version) und seine Ableger auf Basis von bookworm,
wie Raspberry Pi OS (64-Bit) bookworm. Sie hängen von Bibliotheken von Debian 12 ab (zum Beispiel libicu72), lassen sich also nicht
unter Ubuntu oder anderen Debian-Veröffentlichungen installieren. Unter Ubuntu verwende stattdessen das Container-Image
(siehe medialab Server im Container installieren).
1. Repository hinzufügen
Das Paket medialab-repo installiert die Repository-Definition und den Signierschlüssel:
curl -fsSLO https://apt.medialab.works/medialab-repo.deb
sudo apt install ./medialab-repo.deb
Es erstellt /etc/apt/sources.list.d/medialab.sources:
Types: deb
URIs: https://apt.medialab.works/debian
Suites: stable
Components: main
Signed-By: /usr/share/keyrings/medialab-archive-keyring.gpg
Manuelle Alternative. Lade den Schlüssel herunter und erstelle dieselbe Datei selbst:
sudo curl -fsSL https://apt.medialab.works/debian/medialab-archive-keyring.gpg \
-o /usr/share/keyrings/medialab-archive-keyring.gpg
gpg --show-keys /usr/share/keyrings/medialab-archive-keyring.gpg
Der Schlüsselfingerabdruck muss 6B7D 46D8 2C3C 4D4C 0A14 2F92 4189 96EB 3CE1 59C7
sein („medialab Server packages packages@medialab.works“). Schreibe dann die oben gezeigte Datei medialab.sources.
apt prüft die Repository-Signatur bei jedem apt update mit diesem Schlüssel.
2. Installation
sudo apt update
sudo apt install medialab-server medialab-server-web jellyfin-ffmpeg8
medialab-server ersetzt jellyfin-server und medialab-server-web ersetzt jellyfin-web: Wenn Jellyfin bereits
aus Jellyfins Repository installiert ist, entfernt apt diese beiden Pakete und behält deine Daten, weil medialab Server dieselben
Ordner verwendet. Beim ersten Start wird die Datenbank auf das 12.2-Format aktualisiert, das eine ältere Jellyfin-Version nicht mehr
öffnen kann: Mach vorher ein Backup (siehe unten). Wenn Jellyfins Repository noch konfiguriert ist, hält apt die medialab-Pakete
installiert; du kannst Jellyfins Repository entfernen, wenn du es nicht mehr brauchst.
3. Der Dienst
Der Server läuft als jellyfin-Systemdienst unter dem Benutzer jellyfin:
sudo systemctl status jellyfin
sudo systemctl restart jellyfin
sudo journalctl -u jellyfin -f
Öffne http://<server>:8096 und durchlaufe den Einrichtungsassistenten.
| Pfad | Inhalt |
|---|---|
/etc/jellyfin |
Einstellungen (system.xml, network.xml, encoding.xml, logging.json) |
/var/lib/jellyfin |
Datenbank, Plugins, Metadaten |
/var/log/jellyfin |
Protokolle |
/var/cache/jellyfin |
Cache |
/etc/default/jellyfin |
Startoptionen (Web-Ordner, FFmpeg-Pfad, zusätzliche Optionen) |
/usr/share/jellyfin/web |
Weboberfläche |
/usr/lib/jellyfin-ffmpeg/ffmpeg |
FFmpeg |
Um den Dienstbenutzer oder andere systemd-Optionen zu ändern, verwende sudo systemctl edit jellyfin (oder die Datei
/etc/systemd/system/jellyfin.service.d/jellyfin.service.conf).
Für Hardware-Transcoding mit einer Intel- oder AMD-GPU fügt das Paket den Benutzer jellyfin den Gruppen render und video
hinzu; wähle die Methode in Dashboard → Playback → Transcoding. Für NVIDIA installiere zuerst den NVIDIA-Treiber aus deiner
Distribution.
4. Updates
sudo apt update
sudo apt upgrade
Das Paket stoppt den Dienst während des Upgrades und startet ihn wieder mit der neuen Version. Das Paket enthält außerdem einen Updater-Dienst (medialab-update.path /
medialab-update.service), den das Plugin Self-Update by MediaLab nutzt, um den Server aus der Weboberfläche zu aktualisieren;
er installiert die Pakete aus diesem Repository.
Um bei einer Version zu bleiben: sudo apt-mark hold medialab-server medialab-server-web
(sudo apt-mark unhold … zum Rückgängigmachen).
Backup
Stoppe den Dienst und kopiere die Ordner mit Einstellungen und Daten:
sudo systemctl stop jellyfin
sudo tar -czf medialab-backup-$(date +%F).tar.gz /etc/jellyfin /var/lib/jellyfin
sudo systemctl start jellyfin
Deinstallation
sudo apt remove medialab-server medialab-server-web # behält Einstellungen, Daten und Protokolle
sudo apt remove medialab-repo # entfernt das Repository
sudo apt purge medialab-server löscht außerdem /etc/jellyfin, /var/lib/jellyfin (Datenbank, Plugins, Metadaten),
/var/log/jellyfin, /var/cache/jellyfin und den Benutzer jellyfin. Mach vor dem Purgen ein Backup.
Fehlersuche
apt updatemeldet einen Signaturfehler (NO_PUBKEY / EXPKEYSIG): Installieremedialab-repoerneut (Schritt 1), um den aktuellen Schlüssel zu bekommen.- Unerfüllte Abhängigkeiten wie
libicu72: Das System ist nicht Debian 12; verwende das Container-Image. - Der Dienst startet nicht:
sudo journalctl -u jellyfin -n 100und die Dateien in/var/log/jellyfinzeigen den Grund. Prüfe, ob der Benutzerjellyfindeine Medienordner lesen kann. - Port 8096 bereits belegt: Ein anderes Jellyfin oder ein anderer Medienserver läuft; stoppe ihn oder ändere den Port in Dashboard → Networking.