Hallo,
mit diesem kleinen Blog Beitrag möchte ich euch zeigen, wie ihr einen Linux Teamspeak 3 Server automatisch aktualisieren könnt.
Die Aktualisierung ist notwendig, um eventuelle Fehler oder Sicherheitslücken zu beheben und um die Lizenz der Community Version von Teamspeak z.B. auf einem selbst betriebenem Server zu aktualisieren, da diese nach ein bzw. zwei Jahren ausläuft.
Wenn die Lizenz ausgelaufen ist bekommt man diese Fehlermeldung:
1 |
CRITICAL|Accounting | |The default license has expired. Please use the latest server version. |
Da mir die ständige manuelle Installation des Servers keine Freude bereitet, obwohl es sich nur um die folgenden 5 Schritte handelt:
1 2 3 4 5 6 7 8 9 10 11 |
#Herausfinden der aktuellsten Version, am besten im Browser in dieses Versionsdatei anschauen: https://www.teamspeak.com/versions/server.json #Aktuell ist die aktuellste Version 3.13.7, daher VERSION="3.13.7" #Download der aktuellsten Version: wget https://files.teamspeak-services.com/releases/server/${VERSION}/teamspeak3-server_linux_amd64-${VERSION}.tar.bz2 #Server stoppen ./teamspeak3-server_linux_amd64/ts3server_startscript.sh stop #Entpacken tar -xjf teamspeak3-server_linux_amd64-${VERSION}.tar.bz2 #Server starten ./teamspeak3-server_linux_amd64/ts3server_startscript.sh start |
Habe ich ein Skript entwickelt und auf Github.com veröffentlicht, um dies in einen einzigen Schritt zusammenzufassen, den Vorgang deutlich zu vereinfachen und zu automatisieren:
https://github.com/yannik995/TS3-Update/
Mit folgendem Befehl lässt es sicher herunterladen und auch direkt ausführen, sodass der TS3 Server aktualisiert und neu gestartet wird (Ich empfehle immer vorher ein Backup des Servers anzulegen):
apt install jq -y && wget -Nnv https://raw.githubusercontent.com/yannik995/TS3-Update/main/ts3update.sh && chmod +x ts3update.sh; ./ts3update.sh
Zu beachten ist aber das sich der Teamspeak 3 Server im aktuellem Verzeichnis unter teamspeak3-server_linux_amd64
befinden muss, da das Skript sonst nicht funktioniert.
Damit das Update nicht immer manuell angestoßen werden muss habe ich bei mir einen Crontab eingerichtet, dazu startet man den Crontab Editor mit dem Befehl:
1 |
crontab -e |
Und fügt dort folgendes ein, um es nach jedem Reboot auszuführen:
1 |
@reboot bash ts3update.sh |
Oder am 2. des Monats um 04:35 Uhr, die Zeit kann natürlich frei geändert werden:
1 |
35 4 2 * * bash ts3update.sh |
(Ggf. muss der Pfad zum Skript angepasst bzw. hinzugefügt werden. Bei mir liegt das Skript im Home Verzeichnis des TS3 Users und daher funktioniert es auch so ohne Probleme)
Ich hoffe ich konnte euch damit weiterhelfen und wünsche euch viel Spaß beim nutzen des Skripts.
Viele Grüße