medialab Server ist die MediaLab-Works-Variante von Jellyfin, verteilt als signierte Pakete (medialab-server und medialab-server-web) aus dem medialab-apt-Repository. Einen Server zu aktualisieren bedeutet normalerweise Terminal, apt und ein wachsames Auge darauf, ob er wieder hochkommt. Self-Update macht es über die Jellyfin-Weboberfläche: Es zeigt die installierte Version und die Versionen im Repository, installiert die von dir gewählte, begleitet den Neustart und sagt dir, wie es gelaufen ist. Startet die neue Version nicht korrekt, geht der Server von selbst auf die vorherige zurück.
Was es macht
- Check now: Liest die Liste der Versionen im medialab-Repository, mit Markierung der neuesten und der installierten Version. Die Prüfung funktioniert ohne Lizenz.
- Update: auf die neueste Version oder eine beliebige aus der Liste, nach einer Bestätigung.
- Rollback: auf die Version direkt unter der installierten (Roll back to the previous version) oder auf eine beliebige ältere Version aus der Liste. Ab medialab Server 12.2-ml.7 wird ein Rollback unter 12.2-ml.7 bewusst verweigert: Ältere Versionen haben den weniger sicheren Updater.
- Zuerst Backup: Vor der Installation werden die Serverdatenbank und -konfiguration gesichert.
- Automatischer Rollback: Startet der Server mit der neuen Version nicht korrekt, kehrt er zur vorherigen Version zurück und das Backup wird wiederhergestellt. Die Seite sagt dir dann, dass das Update fehlgeschlagen ist und zu welcher Version der Server zurückgekehrt ist.
- Fortschritt über den Neustart hinweg: Die Seite begleitet den Vorgang, zeigt The server is restarting…, solange der Server unten ist (meist 1–3 Minuten), lädt sich neu, sobald der Server wieder antwortet, und zeigt dann das Ergebnis.
- Tägliche Prüfung und optionales automatisches Update: Die geplante Aufgabe Check for medialab Server updates läuft täglich um 03:00 Uhr und prüft nur; sie installiert nichts. Ist Install new versions automatically eingeschaltet (standardmäßig aus), wird eine vom Check gefundene neuere Version zur von dir gewählten Stunde installiert (04:00 Uhr, wenn du es nicht änderst), höchstens einmal am Tag.
- Die Seite ist auf Englisch oder Rumänisch, passend zur Sprache der Jellyfin-Weboberfläche.
Wie es sicher bleibt
- Das Plugin läuft als Benutzer
jellyfin, ohne sudo und ohne Administratorrechte. Es tut nichts anderes, als eine Anfragedatei zu schreiben (/var/lib/medialab-update/request.json). - Der Systemdienst
medialab-update, installiert vom Paketmedialab-serverund als root laufend, nimmt die Anfrage auf und prüft sie streng: Die Aktion muss update, rollback oder check sein, die Version muss das exakte Paketformat haben (zum Beispiel12.2+ml4+deb12) und im medialab-Repository vorhanden sein. Alles andere wird verweigert. - Es werden nur die Pakete
medialab-serverundmedialab-server-webinstalliert, und nur aus dem signierten medialab-apt-Repository, dessen Adresse auf dem Server fest eingestellt ist und nie aus der Anfrage stammt. - Die API des Plugins antwortet nur Jellyfin-Administratoren. Eine neue Anfrage wird verweigert, während ein Update läuft oder eine andere Anfrage auf die Übernahme wartet.
Wo es funktioniert
- medialab Server aus seinen Paketen installiert (Debian oder Ubuntu), mit dem Updater, den das Paket
medialab-servermitbringt: Alles funktioniert. - medialab Server anders installiert (aus einem Archiv, portabel, als lokaler Build): Der Updater fehlt, die Seite erklärt also, wie du aus den Paketen installierst, und die Aktionen sind deaktiviert.
- Offizielles Jellyfin: Die Seite zeigt nur, wie du auf medialab Server wechselst. Der Wechsel dauert ein paar Minuten und behält deine Daten, Nutzer, Bibliotheken und Plugins: Die medialab-Pakete ersetzen
jellyfin-serverundjellyfin-web, mit demselben Ordnerlayout und demselben Dienstjellyfin.
Voraussetzungen
- medialab Server (die MediaLab-Variante von Jellyfin 12.2), installiert aus den Paketen
medialab-serverundmedialab-server-web, auf Debian oder Ubuntu. - Mindestens 1 GB frei in
/usr/libfür ein Update; bei weniger stoppt das Update mit der Meldung Not enough disk space. - Ein Update startet den Server neu: Die laufende Wiedergabe stoppt für 1–3 Minuten.
Häufige Fragen
Was passiert, wenn ein Update schiefgeht? Datenbank und Konfiguration werden vor der Installation gesichert. Startet der Server mit der neuen Version nicht korrekt, kehrt er von selbst zur vorherigen Version zurück und das Backup wird wiederhergestellt; die Seite sagt dir das. Im seltenen Fall, dass der Server auch nach der Rückkehr nicht antwortet, zeigt die Seite, wo das Backup liegt.
Kann es sonst etwas auf meinem Server installieren? Nein. Der root-Dienst installiert nur die beiden medialab-Server-Pakete, nur aus dem signierten medialab-Repository, und verweigert jede Anfrage, die nicht exakt dem erwarteten Format entspricht.
Aktualisiert es automatisch ohne zu fragen? Nur wenn du Install new versions automatically einschaltest; es ist standardmäßig aus. Die tägliche Aufgabe prüft nur nach neuen Versionen.
Lizenzierung
Das Plugin ist Open Source (GPL-3.0) und unser eigener Code, geschrieben für medialab Server. Die fertigen Builds sind – wie der Quellcode – öffentlich. Gekauft wird das Abonnement: die Lizenz, das Plugin auf einem Jellyfin-Server zu nutzen, die Updates deines Tarifs und Support: jedes Update, solange das Abonnement aktiv ist, über dein privates Plugin-Repository, und Hilfe, wenn etwas nicht funktioniert. Die Versionsprüfung funktioniert ohne Lizenz; Update, Rollback und das automatische Update brauchen eine gültige Lizenz, die vor jeder Aktion erneut geprüft wird, es sei denn, sie wurde kurz zuvor geprüft. Monatlich, jährlich oder Lifetime (Lifetime enthält ein Jahr Updates) oder enthalten im Jellyfin-Paket. Ein 30-tägiger kostenloser Testzeitraum steht zur Verfügung.
Quellcode. Zu jeder Version ist der vollständige zugehörige Quellcode öffentlich, neben dem Build, im Changelog und auch in deinem Konto (Account → Licenses, Source code); jedes Archiv enthält den vollständigen GPL-3.0-Text (LICENSE). Wenn du den Quellcode einer Version brauchst, die du nicht mehr herunterladen kannst, schreib uns und wir schicken ihn dir. Siehe Abschnitt 10 der EULA.
