Screen: named sessions

Screens sind ja sehr nützlich; aber ab einer gewissen Anzahl wird es unübersichtlich:

root@vm:~$ screen -r
There are several suitable screens on:
	31176.pts-0.deploy1	(Detached)
	17565.pts-0.deploy1	(Detached)
	16079.pts-0.deploy1	(Detached)

Aber das Screen wäre nicht Screen wenn es nicht auch dafür eine Lösung hätte: Session-Namen.

Methode 1: Setzen direkt beim start des Screens

  • screen -S backup

Methode 2: Setzen aus einem laufenden Screen heraus (aktuelle Session)

  • Screen Prompt öffnen: STRG+A : (STRG und A dann doppelpunkt)
  • sessionname backup (danach Enter)
  • Screen ganz normal verlassen mit STRG+A d

Das Ergebnis sieht dann schon viel übersichtlicher aus:

root@vm:~$ screen -r 
There are several suitable screens on:
	31176.backup	(Detached)
	17565.testing	(Detached)
	16079.watch	(Detached)

Mit „screen -r backup“ wechselt man jetzt schnell in die richtige Session.

Multitail

Hatte ich früher oft im Einsatz – ist aber irgendwie in Vergessenheit geraten: Multitail. Es bietet nicht nur farbige Syslogausgabe sondern auch viele nette Features: mehrere Fenster, Suche, Markierungen, Alerts – um nur die wichtigsten zu nennen. Bei Debian ist es im Paketmanager, für Redhat/Centos gibt es Pakete bei Dag Wieers.

Zugegeben: Für die schnelle Analyse zwischendurch („tail -f“) ist mir die Bedienung etwas zu gewöhnungsbedürftig. Für bestimmte Logausgaben (welche z.B. dauerhaft in einem Screen laufen) ist es genial.

Screen: Tastenkürzel

screen ist ein Programm zum öffnen von virtuellen Konsolen in einer Terminal-session. Ein Screen-Prozess wird mit der Eingabe von „screen“ gestartet. Das Screen verlassen (es aber nicht beenden) geht per „CTRL-a d“ (CTRL und „a“ gleichzeitig, danach ein „d“ drücken). Danach kann man sich per „screen -r“ wieder zum Screen zurückverbinden. Sehr nützlich z.B. innerhalb von ssh-Sessions. Auch sollte man z.B. kritische Operationen immer im Screen ausführen, da es z.B. bei einer unerwarteten Unterbrechung einer ssh-Session zu problematischen Effekten kommen kann.

Leider vergesse ich (ausser CTRL+a d) immer wieder viele der Tastenkombinationen:

CTRL-a ?        Hilfe
CTRL-a "        Listet aktive Screens
CTRL-a c        Erzeugt einen neuen Screen
CTRL-a d        Beendet den aktuellen Screen (er läuft aber im Hintergrund weiter)
CTRL-a <space>  Wechselt zum nächsten Screen

Blättern

Zuerst aktiviert man per „CTRL-a ESC“ den Ausgabepuffer, dann kann man per CTRL+f und CTRL+b blättern.

„Remoteunterstützung“

Mittels „screen“ kann man auch mit mehreren Personen in einem Screen arbeiten: Einer startet mit „screen“ einen neuen Prozess, ein weiterer Benutzer kann sich dann mit „screen -x“ zu einer gemeinsamen Konsole verbinden.