screen — Terminal-Multiplexer für persistente Sessions

Praxis-Guide zu screen: Sitzungen starten, ablösen und wiederaufnehmen, Fenster teilen und Prozesse über SSH-Abbrüche hinweg am Laufen halten.

screen ist ein Terminal-Multiplexer: Er packt mehrere virtuelle Terminals in eine einzige Sitzung, die du jederzeit ablösen (Ctrl+a d) und später wieder aufnehmen kannst. Genau das macht ihn auf Servern unentbehrlich – startest du einen langen Build oder ein Backup über SSH, läuft er weiter, selbst wenn die Verbindung abbricht oder du dich ausloggst. Dieser Guide zeigt dir die Befehle für Sitzungen, Fenster, geteilte Bereiche und die .screenrc.

Sitzungen

screen — Startet eine neue, unbenannte Sitzung.

screen

screen -S <name> — Startet eine neue, benannte Sitzung.

screen -S project

screen -ls — Listet alle aktiven screen-Sitzungen auf.

screen -ls

screen -r <name> — Nimmt eine abgelöste Sitzung wieder auf.

screen -r project

screen -r — Nimmt die einzige abgelöste Sitzung wieder auf (schlägt fehl, wenn mehrere existieren).

screen -r

screen -d -r <name> — Löst eine Sitzung anderswo ab und nimmt sie hier wieder auf.

screen -d -r project

screen -x <name> — Hängt sich an eine bereits angehängte Sitzung an (Multi-Display-Modus).

screen -x project

screen -d <name> — Löst eine Sitzung aus der Ferne ab, ohne sie wieder aufzunehmen.

screen -d project

screen -X -S <name> quit — Beendet eine Sitzung von außen anhand ihres Namens.

screen -X -S project quit

Tastenkürzel der Sitzung (Prefix: Ctrl+a)

Ctrl+a d — Löst dich von der aktuellen Sitzung ab (die Sitzung läuft weiter).

Ctrl+a d

Ctrl+a \ — Beendet alle Fenster und terminiert die Sitzung.

Ctrl+a \

Ctrl+a : sessionname <name> — Benennt die aktuelle Sitzung um.

Ctrl+a : sessionname myproject

Ctrl+a ? — Zeigt alle Tastenkürzel an (Hilfe).

Ctrl+a ?

Fenster

Ctrl+a c — Erstellt ein neues Fenster.

Ctrl+a c

Ctrl+a A — Benennt das aktuelle Fenster um.

Ctrl+a A

Ctrl+a " — Zeigt eine Liste aller Fenster zur Auswahl an.

Ctrl+a "

Ctrl+a n — Wechselt zum nächsten Fenster.

Ctrl+a n

Ctrl+a p — Wechselt zum vorherigen Fenster.

Ctrl+a p

Ctrl+a <number> — Wechselt zum Fenster mit der angegebenen Nummer (0-9).

Ctrl+a 3

Ctrl+a Ctrl+a — Wechselt zwischen aktuellem und zuletzt genutztem Fenster.

Ctrl+a Ctrl+a

Ctrl+a k — Schließt das aktuelle Fenster (mit Rückfrage).

Ctrl+a k

Ctrl+a w — Zeigt eine kurze Fensterliste in der Statuszeile an.

Ctrl+a w

Bereiche teilen

Ctrl+a S — Teilt den Bildschirm horizontal (oben/unten).

Ctrl+a S

Ctrl+a | — Teilt den Bildschirm vertikal (links/rechts).

Ctrl+a |

Ctrl+a Tab — Setzt den Fokus auf den nächsten Bereich.

Ctrl+a Tab

Ctrl+a X — Schließt den aktuellen Bereich (das Fenster läuft weiter).

Ctrl+a X

Ctrl+a Q — Schließt alle Bereiche außer dem aktuellen.

Ctrl+a Q

Kopieren & Scrollback

Ctrl+a [ — Wechselt in den Kopier-/Scrollback-Modus. Navigation mit Pfeiltasten oder vi-Tasten.

Ctrl+a [

Space — Setzt den Anfang der Auswahl (im Kopier-Modus). Erneut drücken zum Kopieren.

Space

Ctrl+a ] — Fügt den kopierten Text ein.

Ctrl+a ]

Ctrl+a Esc — Wechselt in den Kopier-Modus (Alternative zu Ctrl+a [).

Ctrl+a Esc

Ctrl+a h — Schreibt eine Hardcopy des aktuellen Bildschirms in eine Datei.

Ctrl+a h

Ctrl+a H — Schaltet das Mitloggen des aktuellen Fensters in eine Datei um.

Ctrl+a H

Verschiedenes

Ctrl+a : — Wechselt in den Befehlsmodus (screen-Kommandos direkt eingeben).

Ctrl+a : hardstatus alwayslastline

Ctrl+a i — Zeigt Informationen über das aktuelle Fenster an.

Ctrl+a i

Ctrl+a t — Zeigt Systemzeit und Host-Informationen an.

Ctrl+a t

Ctrl+a x — Sperrt die screen-Sitzung (Passwort zum Entsperren nötig).

Ctrl+a x

Ctrl+a Z — Setzt das Terminal zurück (nützlich nach kaputter Ausgabe).

Ctrl+a Z

screen -L -S <name> — Startet eine Sitzung mit automatischem Logging in screenlog.0.

screen -L -S logged-session

Konfiguration (~/.screenrc)

defscrollback <n> — Legt die Größe des Scrollback-Puffers fest (Anzahl Zeilen).

defscrollback 10000

startup_message off — Deaktiviert die Startmeldung (Splash).

startup_message off

hardstatus alwayslastline — Zeigt die Statuszeile dauerhaft am unteren Rand an.

hardstatus alwayslastline "%{= kw}%-w%{= BW}%n %t%{-}%+w %-= %D %d.%m.%Y %c"

shell -$SHELL — Nutzt die Standard-Login-Shell für neue Fenster.

shell -/bin/bash

bind <key> <command> — Belegt eine eigene Taste mit einem screen-Befehl.

bind | split -v

screen -t <title> <n> <command> — Legt benannte Fenster mit Befehlen automatisch in der .screenrc an.

screen -t editor 0 vim
screen -t server 1 ./run.sh
screen -t logs 2 tail -f app.log

termcapinfo xterm* ti@:te@ — Aktiviert Maus-Scrolling in xterm-kompatiblen Terminals.

termcapinfo xterm* ti@:te@

Fazit

screen hält deine Arbeit am Leben: Eine abgelöste Sitzung läuft im Hintergrund weiter, egal ob die SSH-Verbindung abreißt oder du dich ausloggst – mit screen -r <name> bist du sofort wieder dran, und screen -x erlaubt sogar mehreren Personen den Blick auf dieselbe Sitzung. Für den Alltag reichen screen -S, Ctrl+a d, screen -ls und screen -r. Willst du nur ein einzelnes Kommando vom Terminal entkoppeln, ist nohup schlanker; suchst du modernere Fensterverwaltung, Maus-Support und aktivere Pflege, lohnt der Blick auf tmux. screen gilt heute als der ältere, weniger gepflegte Klassiker – ist dafür aber auf praktisch jedem Unix-System vorinstalliert und tut zuverlässig seinen Dienst.

  • ubuntuusers-Wiki: Screen – ausführliche deutschsprachige Anleitung zu Installation, Bedienung und .screenrc
  • GNU Screen Manual (englisch) – offizielles Referenzhandbuch mit allen Optionen und Tastenkürzeln

Verwandte Kommandos

  • tmux – moderner Terminal-Multiplexer mit Maus-Support und aktiver Pflege
  • nohup – einzelne Befehle vom Terminal entkoppeln, ohne kompletten Multiplexer
  • bash – die Standard-Shell, die in jedem screen-Fenster läuft