Screen
Screen ist ein Tool welches uns die Möglichkeit bietet mit einem SSH Zugang und einer aktiven Konsole mehrere Programme parallel zu betreiben.
Man kann es sich wie einen Fernseher vorstellen. Es laufen parallel bis zu 300 Programme, und man schaltet immer dorthin, wo man gerade hin möchte.
Inhaltsverzeichnis
Screen einrichten
Screen kann man relativ schnell und Problemlos unter Debian einrichten. Hierfür reichen die beiden folgenden Befehle.
apt-get update && apt-get upgrade
apt-get install screen
Screen Befehle
Die wichtigsten Parameter die wir benötigen sind der Start von screen, einige Optionen für den jeweiligen Screen den wir erstellen, sowie ein leicht zu merkender Name, damit wir später wieder in dieses „Fenster“ zurückschalten können.
Screen starten kann man relativ simpel mit
screen
Die für uns wichtigsten Parameter
Parameter | Information |
-A | Die Anzeigegröße des Screens passt sich dem derzeitigen Fenster an |
-m | Die neue Sitzung wird unabhängig gestartet, also egal ob man sich auf der normalen Konsole des Servers befindet, oder bereits in einer Screen Sitzung |
-d | Startet die Sitzung sofort im Hintergrund, man bekommt das Sitzungsfenster also nicht zu Gesicht |
-S | Wir können der Sitzung einen Namen geben, um später vereinfacht diese wieder aktiv zu schalten |
Beispiel
Wir starten nun mal eine Screen Sitzung mit dem Namen test welche das Script testscript.sh ausführt.
screen -AmdS test ./testscript.sh
Wir dröseln das Gebilde nochmal auf:
screen → startet eine Screen Sitzung -AmdS → sorgt dafür das die Sitzung sofort im Hintergrund gestartet wird, das wir ihr einen Namen geben (test) und da diese Sitzung unabhängig gestartet wird. test → Name der Screen Sitzung ./testscript.sh → Befehl der innerhalb der Sitzung ausgeführt wird.
Umgang mit Sitzungen
Haben wir eine Sitzung wie oben gestartet sehen wir diese ja nicht mehr, da sie im Hintergrund läuft. Nun gibt es 2 nützliche Befehle.
screen -ls
screen -x sitzungsname oder PID
screen -ls listet uns alle laufenden Sitzungen auf, und zeigt uns die PID unter der die Sitzungen laufen, sowie deren Namen, wenn einer vergeben wurde. screen -x sitzungsname oder PID aktiviert die Sitzung und wir gelangen in deren „Fenster“, bzw. bekommen Sie als aktive Umgebung angezeigt.
Unser Testscreen von oben könnten wir also mit
screen -x test
wieder aufrufen.
Um das Fenster bzw. die Sitzung wieder in den Hintergrund zu schalten, benutzen wir die Tastenkombination Str+A+D. D steht für „detach“, also abtrennen (frei übersetzt deaktivieren).
Wenn wir innerhalb des aktivierten Fensters exit eingeben, beenden wir die gesamte Screen Sitzung.
Beispiele
Starten eines Counter-Strike Servers unter Screen
Nun können wir mit folgendem Befehl einen CSS Server innerhalb einer Screensitzung starten.
screen -AmdS cssserver ./srcds_run -console -game cstrike +map de_dust -maxplayers 16 -autoupdate