Deprecated: Use of "parent" in callables is deprecated in /var/www/html/forum/src/vendor/league/flysystem-eventable-filesystem/src/EventableFilesystem.php on line 431
  • If you need help or want to discuss things, you now can also join us on our Discord Server!
  • A first preview of the unlimited version of SinusBot can be found in the Upcoming Changes thread. A version for Windows will follow, but we don't have a release date, yet.

Tutorial [Linux] [German] System Update Policy

Status
Not open for further replies.

iTaskmanager

Well-Known Member
Tier II
Tier III
Tier I
Insider
ENGLISH VERSION WILL COMING SOON BELOW

Hallo liebe Community,

ich möchte ein Thema ansprechen, das mir persönlich und vielen anderen wahrscheinlich am Herzen liegt, nämlich: Allgemeine Updates. Ich weiß, Updates sind scheiße, sie stinken und nerven unter Umständen.

Besonders unter Windows kann man unter Umständen genervt sein, wenn man ständig irgendwelche Updates angeboten bekommt und sie installieren soll. Erklärt man sich dazu bereit, kann man sogar noch das Pech haben, dass es ultra lange dauert oder danach irgendwas nicht so funktioniert, wie man es gewohnt ist.

Unter Linux ist das aber anders. Man gibt nur ein Befehl ein und schon wird, je nach Art des Befehles, das komplette Betriebssystem und dazugehörige Pakete aktualisiert, meistens muss man auch nichts großartiges danach machen.

Gerade Anfänger, Linux-Neueinsteiger, haben meistens gar keine Ahnung, dass man sein Linux Server auch updaten kann oder wenn doch, wissen sie meistens nicht, wie das funktioniert. Gerade bei Server-Geschichten ist es essentiell, dass man diesen ordnungsgemäß verwaltet und schaut, was man damit macht. Dazu gehören auch Updates.

Prinzipiell möchte ich allgemein auf das Thema "Updates" eingehen. Nicht nur beim Linux Server, sondern auch vom SinusBot und vom TeamSpeak-Server/TeamSpeak-Client.

Damit es nicht zur Verwirrung kommt, beschränke ich mich auf meine Umgebung. Die meisten, anderen Linux Distributionen verfahren nach demselben Prinzip, sodass es unter Umständen 1:1 übernommen werden kann.

Meine Umgebung:
- Debian 8.5 stable (Jessie) (stable) (64bits)

- TeamSpeak-Server-Version: 3.0.19.4 on Linux
-- Speicherpfad: /home/tsserver/teamspeak3-server_linux_amd64/

- SinusBot Version 0.9.18-8499d2c
-- Speicherpfad: /home/sinusbot/sinusbot/

- TeamSpeak-Client (SinusBot): /home/sinusbot/sinusbot/TeamSpeak3-Client-linux_amd64/

Linux Server updaten:
Zunächst sollte man mit "apt-get update && apt-get upgrade && apt-get dist-upgrade" überprüfen, ob man etwaige Updates installieren kann. Damit checkt man alle verfügbaren Updates, die der Server/die Distribution zu bieten hat, wenn verfügbar.

Danach sollte man überprüfen, welche Debian Version man besitzt. Das kann man ganz einfach mit "cat /etc/debian_version" machen. Im Idealfall wird dort "8.5" angezeigt. Wenn dort "8.0", "8.1.", "8.2", "8.3" oder "8.4" angezeigt wird, ist es auch nicht schlimm.

Wenn man Debian 8.x besitzt, kann zum nächsten Punkt springen und muss hier nichts weiter beachten/machen. Falls man beispielsweise immer noch Debian 7.x hat, obwohl man den Befehl oben eingegeben hat, erkläre ich euch nun, wie man auf Debian 8.x updatet.

Dazu öffnet ihr die Datei "/etc/apt/sources.list" und benennt jedes Wort "wheezy" in dieser Datei in "jessie" um. Anschließend die veränderte Datei speichern und anschließend wieder den Befehl ausführen, den ihr eben benutzt habt (siehe oben). Anschließend kann es eine Weile dauern, da man nun auf Debian 8.x upgraded. Sollten Anfragen kommen, da neue Datei(-Versionen) vorhanden sind und ob man die alte/neue Version benutzen soll, gibt ihr einfach an, dass ihr die bisherige Version behalten möchtet (sollte der Buchstabe "N" sein, den man dann angeben muss).

Anschließend wieder mit "cat /etc/debian_version" überprüfen, ob dort "8.x" (im Idealfall 8.5) steht. Das sollte nun eigentlich der Fall sein. Schon ist man auf die neueste Debian Version und ist bestens gerüstet für aktuelle Software und Co., die man dann uneingeschränkt nutzen kann.

Andere Linux Distributionen verfahren meistens so ähnlich. Dazu kenne ich mich leider aber nicht genug aus, da ich damals mit Debian "aufgewachsen" bin und es bis heute ausschließlich nur nutze. Gegebenenfalls mal eine Suchmaschine seiner Wahl bemühen und schauen, welche Befehle man stattdessen nutzen muss.

TeamSpeak-Server updaten:
Das man immer die neueste TeamSpeak-Server-Version nutzen und nicht mit root starten sollte, ist hoffentlich klar. Die aktuellste Server-Version ist "3.0.19.4". Wenn ihr TeamSpeak öffnet und mit eurem Server verbunden seid, könnt ihr auf "den ersten Channel" klicken und seht dann oben rechts, welche Version verwendet wird. Sollte es die aktuellste Version sein, könnt ihr diesen Schritt hier überspringen. Wenn nicht, dann zeige ich euch, wie man den TeamSpeak-Server updatet.

Zunächst sollte man zu den entsprechenden User wechseln, mit den man damals den Server installiert hat. In meinem Fall heißt er "tsserver". Mit "su tsserver" wechselt man zu diesen User und gibt dann anschließend "cd" und "ls" ein. Schon sollte man den TeamSpeak-Server-Ordner sehen.

Mit "cp -R teamspeak3-server_linux_amd64/ teamspeak3-server_linux_amd64_backup/" erstellt ihr ein komplettes Backup vom Server, sollte etwas schief gehen.

Anschließend mit "wget http://dl.4players.de/ts/releases/3.0.19.4/TeamSpeak3-Client-linux_amd64-3.0.19.4.run" die aktuellste Version herunterladen und mit "tar -xjf teamspeak3-server_linux_amd64-3.0.19.4.tar.bz2" entpacken.

Danach kann man den TeamSpeak-Server neustarten (dauert eine Weile, bis der TeamSpeak-Server wieder online geht) und schon hat man die neueste Version vom Server.

SinusBot updaten:
Auch hier ist es wichtig, gerade bei den neueren Versionen, dass man in Zukunft immer die aktuellste Version benutzt. Nicht nur neue Funktionen kommen mit den neueren Versionen hinzu, die im späteren Verlauf wahrscheinlich von großer Bedeutung sind, die man beispielsweise für aktuelle Scripts und Co. benötigt werden, sondern auch andere Faktoren spielen eine Rolle, sodass man immer die aktuellste Version haben sollte. Sonst kann es unter Umständen passieren, dass sich der SinusBot einfach nicht mehr starten lässt (man gibt "./sinusbot" ein, aber es passiert nichts - liegt daran, weil man eine zu alte Version benutzt).

Ich starte den Bot mit dem User "sinusbot", dementsprechend muss man "su sinusbot" eingeben und anschließend wieder "cd" und "ls". Schon sollte man dort den Ordner "sinusbot" sehen (oder so ähnlich). Auch hier sollte man mit "cp -R sinusbot/ sinusbot_backup/" ein komplettes Backup erstellen. Anschließend den SinusBot komplett beenden.

Anschließend mit "cd sinusbot" in den Ordner hinein und mit dem Updaten loslegen. Dazu die neueste Version herunterladen mit "wget https://www.sinusbot.com/pre/sinusbot-0.9.18-8499d2c.tar.bz2" und mit "tar -xjf sinusbot-0.9.18-8499d2c.tar.bz2" entpacken. Mit "cp plugin/libsoundbot_plugin.so /home/sinusbot/sinusbot/TeamSpeak3-Client-linux_amd64/plugins/" das Plugin in den TeamSpeak-Plugin-Ordner kopieren und schon hat man die neueste Version.

Den SinusBot aber noch nicht starten, denn man sollte noch überprüfen, ob man die neueste TeamSpeak-Client-Version nutzt. Ist das der Fall (aktuell ist es die Version "3.0.19.4 [Stable] on Linux"), kann man den Bot starten, wenn nicht, dann mit dem nächsten Punkt weiterfahren.

TeamSpeak-Client updaten:
Hier möchte ich einmal weit ausholen, denn dieser Punkt ist wirklich von großer Bedeutung.

Viele haben das Problem, dass der SinusBot sich nicht mehr starten lässt ("TSClient quit"), weil man beispielsweise nicht die neueste Glibc-Version hat ("GLIBC_2.14 not found", "ldd --version"). Man kann nun natürlich manuell herumfummeln und die neueste Glib-Version organisieren und somit die neueste TeamSpeak-Client-Version nutzen, aber davon rate ich dringend ab! Genauso nutzen viele als Workaround einfach eine veraltete Client-Version (meistens 3.0.18.2), auch hier rate ich dringend davon ab!

Denn dieser Fehler kommt nur, weil man nicht die aktuellste Linux Distribution (meistens nutzen sie Linux Debian 7.x) verwendet. Denn in diesem Fall hat man nicht nur ein veraltetes Betriebssystem, sondern auch eine veraltete (und äußerst unsichere) TeamSpeak-Client-Version, die definitiv angreifbar ist durch Sicherheitslücken, die in den neueren und aktuelleren Versionen behoben sind.

Irgendwann wird es sicherlich auch beim veralteten Betriebssystem der Fall sein und dann bekommt man unter Umständen keine Updates mehr angeboten, weil der Support abgelaufen ist (Debian 7.x hat zwar noch bis 04/18 Support, aber man bekommt in Laufe der Zeit immer wieder Probleme mit anderen Paketen/Programmen, weil sie mit "dem alten Betriebssystem" nicht mehr kompatibel sind, aufgrund andere (Paket-)Abhängigkeiten).

Deshalb ist es wirklich sehr wichtig, dass man das eigene Server-Betriebssystem aktuell hält. Wie das funktioniert, habe ich ja bereits schon oben beschrieben und ich rate wirklich jeden, diese Schritte zu befolgen. Denn somit verringert sich die Chance für dich, etwaige Probleme aus dem Weg zu gehen und zeitgleich spart es uns, die euch (kostenlosen) Support geben, an Zeit, da man nicht ständig Workarounds suchen muss.

So hart wie es auch vielleicht klingt, gebe ich auch keinen Support mehr für Leute, die nicht dazu bereit sind, ihr System auf dem aktuellsten Stand zu halten beziehungsweise zu bringen, damit man schnellen und einfachen Support geben kann. Das hatte ich anfangs getan, aber mit der Zeit habe ich festgestellt, dass man jeden Fall individuell zeitaufwendig behandeln muss und es massiv an Zeit frisst, die man sich eigentlich schenken könnte (beziehungsweise für sinnvollere Dinge nutzen könnte), wenn der Nutzer auf dem aktuellsten Stand wäre. Mit der Zeit habe ich auch festgestellt, dass es viele einfach nicht können oder wissen, weswegen ich auch diesen Thread hier verfasse und zukünftig immer verwenden werde als Referenz, wenn ich wieder vor denselben Problem stehe: Mensch hat 902340923094 OS-Updates, verwendet eine äußerst alte SinusBot- sowie eine äußerst alte TeamSpeak-Client-Version.

Nun bin ich mit dem "weit ausholen" fertig und zeige euch zum Schluss, wie man den TeamSpeak-Client updatet. Sollte man auf die aktuellste Version sein ("3.0.19.4 [Stable] on Linux"), kann den SinusBot wieder starten (nachdem man ihn beim letzten Schritt geupdatet hat) und kann sich freuen, dass alles auf dem aktuellsten Stand ist (und nun eigentlich alles wieder funktionieren sollte).

Hat man nicht die aktuellste Version, startet den SinusBot immer noch nicht, denn vorher updaten wir den Client. In meinem Fall sind wir immer noch mit dem User "sinusbot" unterwegs und sind immer noch im SinusBot-Ordner. Mit "wget http://dl.4players.de/ts/releases/3.0.19.4/TeamSpeak3-Client-linux_amd64-3.0.19.4.run" lädt ihr die aktuellste TeamSpeak-Client-Version herunter, macht mit "chmod 0755 TeamSpeak3-Client-linux_amd64-3.0.19.4.run" die Datei ausführbar und startet sie anschließend mit "./TeamSpeak3-Client-linux_amd64-3.0.19.4.run". Danach den Text durchgehen, bestätigen und schon installiert/aktualisiert sich die Version.

Nun kann man den SinusBot starten und wird hoffentlich die neueste TeamSpeak-Client-Version besitzen und somit sind wir auch beim Ende vom Tutorial angelangt.

Sonstiges:
- Wie bereits am Anfang schon geschrieben, beziehen sich die Befehle, Pfade und Co. auf meine Umgebung. In der Regel muss man nur eine leicht abgeänderte Version (Befehl, Pfad) benutzen, sodass es auch bei anderen Betriebssysteme wie CentOS funktioniert. In den meisten Fällen kann man sie aber so 1:1 übernehmen. Liest euch daher bitte alles mit bestem Gewissen durch, sodass ihr keine Fehler macht.

- Nicht immer muss die allerneueste TeamSpeak-Client/Server-Version die Beste sein. Erkundigt euch sicherheitshalber, ob in der aktuellen Version bekannte und veröffentliche Sicherheitslücken vorhanden sind.

- Wenn ich Zeit und Lust finde, folgt dieses Tutorial auch in der englischen Sprache.

- Verbesserungsvorschläge und/oder Feedback dürft ihr natürlich gerne geben. Beachtet aber nach wie vor, dass das alles auf meine Umgebung (vom Server) abgestimmt ist.

- Ich würde mich freuen, denn ich mache es in Zukunft genauso, wenn ihr diesen Thread bei Fehlern wie "SinusBot startet nicht mehr", "Meine Glibc-Version ist veraltet" und ähnliche Probleme als Referenz angibt, sodass ihr den Nutzer dazu animiert, seine komplette Kiste mal auf Vordermann zu bringen. Denn letztendlich ist es ein Segen für alle Parteien. Für den (unwissenden) Nutzer, der fortan weniger Gefahren ausgesetzt ist und für uns, weil wir unter Umständen weniger Probleme von den Nutzer zu Gesicht bekommen, weil sich das Problem meist von selbst regelt, wenn man alles auf den aktuellsten Stand hat.
 
Last edited:

IceToast

Member
Hab leider nicht die Zeit alles durchzulesen, aber trotzdem: Klasse!
Selten schreibt jemand einen solch großen Thread ^^
Ich danke dir schon einmal für alle denen dieser Thread eine Hilfe sein wird.

LG
IceToast
 

fritz

Member
Besten Dank für das Tutorial. Ewig schon vorgehabt, alles mal zu updaten. Jetzt dank dieses Threads endlich durchgezogen.
 
Status
Not open for further replies.
Top