Screen oder tmux? Der Praxisvergleich für Linux-Server
Screen oder tmux: Unterschiede, Befehle, Tastenkürzel und Gameserver-Beispiele im Vergleich. So findest du den passenden Terminal-Multiplexer für deinen Server.
Screen oder tmux: Unterschiede, Befehle, Tastenkürzel und Gameserver-Beispiele im Vergleich. So findest du den passenden Terminal-Multiplexer für deinen Server.
Beide Tools halten deine Prozesse am Laufen, wenn die SSH-Verbindung abbricht. Für ein neues Setup ist tmux meist die bessere Wahl: Es ist aktiv entwickelt, teilt Fenster ohne Umwege in mehrere Bereiche und lässt sich gut per Skript steuern. GNU Screen lohnt sich vor allem dort, wo es schon installiert ist und du nur eine Sitzung brauchst, die im Hintergrund weiterläuft. Unten findest du die Unterschiede im Detail, die wichtigsten Befehle für beide Tools und Beispiele für deinen Gameserver oder VPS.
Ohne Multiplexer hängt alles, was du in einer SSH-Sitzung startest, an dieser einen Verbindung. Klappst du den Laptop zu, wechselt dein WLAN oder bricht die Leitung kurz ab, beendet der Server die Shell und damit oft auch den laufenden Prozess. Ein Update, ein Datenbank-Import oder die Konsole deines Gameservers ist dann weg.
Ein Terminal-Multiplexer schiebt eine Ebene dazwischen. Laut Dokumentation der GWDG kannst du mit tmux oder Screen eine Sitzung auf dem Server trennen und später fortsetzen, sodass lang laufende Befehle, Dateiübertragungen und Berechnungen trotz getrennter SSH-Verbindung weiterlaufen. Die Informatikdienste der ETH Zürich beschreiben GNU Screen als persistente Remote-Konsole, an die du dich nach einer Unterbrechung wieder anhängst, und gleichzeitig als Werkzeug für mehrere virtuelle Konsolen in einem einzigen Terminalfenster.
Im Serveralltag heißt das konkret:
apt upgrade oder einen Kernel-Build und kannst dich in Ruhe abmelden.htop gleichzeitig im Blick, ohne drei SSH-Fenster zu öffnen.Wenn du deine Dateien bisher nur per Dateimanager verschiebst und SSH noch neu für dich ist, hilft dir unsere Anleitung zu Dateien per SFTP und SSH hochladen beim Einstieg.
Um Screen und tmux sauber zu vergleichen, lohnt sich ein Blick auf die drei Ebenen, mit denen beide arbeiten:
minecraft oder wartung. Sie läuft auf dem Server weiter, egal ob du verbunden bist.htop.tmux ist von Grund auf um diese Hierarchie herum gebaut. Screen denkt vor allem in Fenstern; Bildschirmteilung kam später dazu und fühlt sich entsprechend weniger direkt an. Ein geteilter Bereich in Screen ist zunächst leer, du musst ihm erst ein Fenster zuweisen. In tmux entsteht beim Teilen sofort eine neue Shell.
Dazu kommt ein Unterschied in der Architektur. tmux arbeitet nach einem Client-Server-Modell: Ein Hintergrundprozess verwaltet alle Sitzungen, und laut tmux-FAQ können mehrere Clients gleichzeitig an dieselbe Sitzung angebunden sein. Das ist praktisch, wenn zwei Admins einer Community gemeinsam auf die Konsole schauen. Screen kennt für gemeinsames Arbeiten den Befehl screen -x, mit dem du dich zusätzlich an eine bereits verbundene Sitzung hängst.
| Kriterium | GNU Screen | tmux |
|---|---|---|
| Grundfunktion | Sitzungen trennen und fortsetzen | Sitzungen trennen und fortsetzen |
| Standard-Präfix | Strg+A | Strg+B |
| Struktur | vor allem Fenster | Sitzung, Fenster, Pane |
| Bildschirm teilen | möglich, Bereiche müssen erst belegt werden | direkt, jede Teilung startet eine Shell |
| Mehrere Clients gleichzeitig | über screen -x |
nativ über das Client-Server-Modell |
| Skriptsteuerung | über -X und stuff |
umfangreich über send-keys, split-window und Co. |
| Konfigurationsdatei | ~/.screenrc |
~/.tmux.conf |
| Verfügbarkeit | auf vielen älteren Systemen vorhanden | in allen gängigen Paketquellen |
| Typischer Einsatz | schnelle Hintergrund-Sitzung, Bestandsserver | neue Setups, Multi-Pane-Workflows, Automatisierung |
Die Ubuntu-Server-Dokumentation bezeichnet tmux wegen seiner aktiven Entwicklung, besseren Performance und größeren Funktionsumfangs als heutige Standardwahl für die meisten Nutzer. Das Research-Computing-Team der University of Florida sieht tmux in seiner Anleitung zu persistenten Sitzungen ebenfalls als neueren und tendenziell leistungsfähigeren Ansatz, betont aber, dass die Wahl letztlich vom eigenen Arbeitsstil abhängt.
Beide Tools installierst du auf Debian und Ubuntu mit sudo apt install tmux beziehungsweise sudo apt install screen, auf RHEL-basierten Systemen wie AlmaLinux oder Rocky Linux mit sudo dnf install tmux. Die Grundabläufe sind fast identisch, nur die Tastenkürzel unterscheiden sich. Die folgenden Schritte für Start, Trennen und Wiederverbinden entsprechen der Anleitung der GWDG.
tmux new -s wartungtmux attach -t wartungNützliche Ergänzungen:
tmux ls listet alle laufenden Sitzungen.tmux kill-session -t wartung beendet eine Sitzung.screen -S wartungscreen -ls und wieder verbinden mit screen -r wartungNützliche Ergänzungen:
screen -r, die Sitzung sei noch verbunden, hängt sie meist an einer abgebrochenen Verbindung. screen -d -r wartung trennt den alten Client und verbindet dich neu. Bei tmux erledigt das tmux attach -d -t wartung.Tipp: Benenne deine Sitzungen immer. Bei drei unbenannten Screen-Sitzungen mit Nummern wie
12345.pts-0.serververlierst du schnell den Überblick,minecraft,backupundwartungerklären sich selbst.
Viele Gameserver, etwa ein Minecraft-Server mit Paper oder Vanilla, bringen eine interaktive Konsole mit. Genau hier spielen Multiplexer ihre Stärke aus: Der Server läuft, du loggst dich bei Bedarf ein und tippst direkt Befehle wie say, whitelist add oder stop.
Mit tmux startest du eine Sitzung direkt getrennt, also ohne sie zu betreten:
tmux new -d -s minecraft 'java -Xms2G -Xmx4G -jar server.jar nogui'
Das Gegenstück in Screen:
screen -dmS minecraft java -Xms2G -Xmx4G -jar server.jar nogui
Die RAM-Werte sind nur ein Beispiel. Passe sie an den Arbeitsspeicher deines Servers und an Spielerzahl und Plugins an. Wie du Engpässe erkennst, erklären wir im Artikel zur Performance-Optimierung für Gameserver.
Für geplante Neustarts oder Ankündigungen musst du dich nicht einloggen. tmux schickt Tastatureingaben mit send-keys in eine laufende Sitzung:
tmux send-keys -t minecraft 'say Neustart in 5 Minuten' Enter
Bei Screen nutzt du stuff. Das ^M am Ende steht für die Enter-Taste:
screen -S minecraft -p 0 -X stuff 'say Neustart in 5 Minuten^M'
In einem Cronjob kombiniert, entsteht so ein einfacher Neustart-Ablauf: Ankündigung, fünf Minuten warten, save-all, stop, Sitzung neu starten. Wer mehrere Server oder Instanzen verwaltet, kommt mit tmux meist eleganter ans Ziel, weil sich Fenster und Panes ebenfalls per Befehl anlegen lassen. Ein Skript kann dir so mit einem Aufruf eine Sitzung bauen, die links das Server-Log und rechts htop zeigt:
tmux new -d -s monitor
tmux split-window -h -t monitor
tmux send-keys -t monitor:0.0 'tail -f logs/latest.log' Enter
tmux send-keys -t monitor:0.1 'htop' Enter
Wenn du solche Abläufe weiter automatisieren willst, findest du in unserem Leitfaden zur Server-Bereitstellung per Automatisierung passende Ansätze für VPS und Gameserver.
Für einen FiveM-Server mit eigenem Discord-Bot und Datenbank hat sich eine Sitzung mit mehreren Fenstern bewährt:
So bleibt alles in einer Sitzung, und jeder Admin mit Zugang findet die Dienste an derselben Stelle. Mehr zur Fehlersuche bei großen RP-Projekten liest du in unserem Beitrag zur FiveM-RP-Server-Performance.
Die Entscheidung hängt weniger von Benchmarks ab als von deinem Umfeld und deiner Arbeitsweise.
Screen ist eine gute Wahl, wenn:
screen /dev/ttyUSB0 115200, denn diese Funktion bringt Screen von Haus aus mit.tmux ist die bessere Wahl, wenn:
~/.tmux.conf an deinen Workflow anpassen willst.Der Umstieg ist übrigens kleiner, als er wirkt. Viele Umsteiger legen in ihrer ~/.tmux.conf einfach das gewohnte Screen-Präfix fest:
set -g prefix C-a
unbind C-b
bind C-a send-prefix
Nach tmux source-file ~/.tmux.conf reagiert tmux dann auf Strg+A, und die Finger müssen nicht umlernen.
Multiplexer auf dem falschen Rechner. Der häufigste Fehler: tmux läuft lokal auf dem Laptop, und darin wird eine SSH-Verbindung geöffnet. Bricht die Verbindung ab, ist die Sitzung auf dem Server trotzdem weg. Die GWDG weist ausdrücklich darauf hin, dass die Sitzung auf dem entfernten Server gestartet werden muss. Erst einloggen, dann tmux oder screen starten.
Sitzungen überleben keinen Neustart. Multiplexer schützen vor Verbindungsabbrüchen, nicht vor einem Reboot des Servers. Nach einem Kernel-Update oder einem Neustart über das Kundenpanel sind alle Sitzungen beendet. Für Dienste, die nach einem Neustart automatisch wieder hochkommen sollen, richtest du zusätzlich eine systemd-Unit oder einen @reboot-Cronjob ein, der die Sitzung neu anlegt. Wie Neustart und Rescue-System bei einem dedizierten Server funktionieren, steht in unserer Hilfe zu Installation und Rescue-System.
Verschachtelte Sitzungen. Startest du tmux innerhalb einer tmux-Sitzung, landen Tastenkürzel beim äußeren Client. tmux warnt dich davor. Prüfe mit echo $TMUX, ob du bereits in einer Sitzung bist: Ist die Ausgabe leer, bist du es nicht.
Sitzungen unter dem falschen Benutzer. Sitzungen gehören dem Benutzer, der sie gestartet hat. Startest du den Gameserver als root und suchst ihn später als Benutzer minecraft, findet tmux ls nichts. Betreibe Gameserver am besten unter einem eigenen, unprivilegierten Benutzer und starte die Sitzung auch dort.
Scrollen funktioniert nicht wie gewohnt. Das Mausrad scrollt in beiden Tools nicht automatisch im Verlauf. Nutze den Kopiermodus oder aktiviere in tmux mit set -g mouse on die Mausunterstützung.
Wir sehen bei unseren Kunden beide Tools, vom Minecraft-Server einer kleinen Community bis zum VPS einer Agentur. Unsere Empfehlung für neue Server ist klar tmux: Die Aufteilung in Sitzungen, Fenster und Panes macht die Verwaltung übersichtlich, und Abläufe wie geplante Neustarts lassen sich sauber automatisieren.
Screen ist deshalb nicht falsch. Wer seit Jahren damit arbeitet und seine Skripte darauf gebaut hat, muss nicht umsteigen, nur weil es ein neueres Werkzeug gibt. Entscheidend ist, dass die Sitzung auf dem Server läuft und dass du einen Plan für Neustarts hast.
Ein Multiplexer zeigt seine Stärken erst auf einem Server, auf dem du volle Kontrolle hast. Deshalb bekommst du auf unseren VPS und Root-Servern vollen Root-Zugriff per SSH und kannst tmux, Screen und alles Weitere so einrichten, wie es zu deinem Projekt passt. Die Server stehen in unserem deutschen Rechenzentrum, laufen auf NVMe-SSDs und sind ohne Aufpreis gegen DDoS-Angriffe geschützt. Wenn beim Einrichten etwas hakt, hilft dir unser Team direkt weiter.
Erik
Wenn du tmux oder Screen für einen eigenen Gameserver, einen Discord-Bot oder ein Entwicklungsprojekt nutzen willst, ist ein VPS der unkomplizierte Einstieg. Bei Nexthosting startet der VPS Einfach mit 6,49 € im Monat, größere Projekte wachsen mit VPS Standard, Pro oder Ultra mit. Für viele Instanzen oder ressourcenhungrige Communities gibt es Root-Server für Gameserver ab 29,99 € im Monat. Willst du dich gar nicht um die Konsole kümmern, findest du fertig eingerichtete Pakete für Minecraft, FiveM, Garry’s Mod und Rust unter Gameserver mieten.
Für neue Setups meistens ja: tmux ist aktiv entwickelt, teilt Fenster direkt in Panes und lässt sich umfangreicher per Skript steuern. Für eine einfache Hintergrund-Sitzung leisten beide dasselbe. Auf Systemen, auf denen nur Screen vorhanden ist, bist du damit gut bedient.
Ja, beide Programme stören sich nicht und lassen sich nebeneinander nutzen. Achte nur darauf, sie nicht ineinander zu verschachteln, weil sich sonst die Tastenkürzel ins Gehege kommen. Viele Admins nutzen tmux für die tägliche Arbeit und Screen nur noch für serielle Konsolen.
Nein. Screen und tmux schützen vor Verbindungsabbrüchen, ein Neustart des Servers beendet aber alle Sitzungen. Für dauerhaft laufende Dienste legst du eine systemd-Unit oder einen Cronjob mit @reboot an, der die Sitzung beim Start automatisch erzeugt.
Das passiert, wenn die alte SSH-Verbindung noch nicht sauber beendet wurde. Bei Screen verbindest du dich mit screen -d -r name und trennst dabei den alten Client. Bei tmux erledigt das tmux attach -d -t name.
Bei einem fertig eingerichteten Gameserver mit Control Panel ist die Konsole meist im Webinterface erreichbar, ein Multiplexer ist dann nicht nötig. Auf einem eigenen VPS oder Root-Server, auf dem du den Server selbst per SSH startest, ist tmux oder Screen dagegen die einfachste Art, die Konsole dauerhaft offen zu halten.