Tipp: Terminal ins Web streamen

Mi, 24. Juni 2020, Ralf Hersel

Manchmal möchte man die Ausgabe des Terminals mit anderen Personen teilen, sei es für technischen Support, um Hilfe für ein Problem zu erhalten, oder einfach aus Interesse daran, das zu teilen, was man gerade im Terminal macht. Viele Anwender erstellen dann Screenshots und versenden diese z.B. über einen Messenger. Das geht besser und einfacher mit einem Terminal-Streamer. Einer dieser Services ist Streamhut.


Was ist Streamhut?

Streamhut ist ein Webdienst, mit dem der Terminalinhalt in Echtzeit ins Web gestreamt werden kann. Dafür ist keine Softwareinstallation notwendig. Alles, was dazu benötigt wird, ist ein internetfähiges Linux-System mit installiertem "netcat". Netcat ist in den meisten Linux-Distributionen vorinstalliert.

Streamhut kann auch als Monitor für lang laufende Prozesse verwendet werden, die kontinuierlich Ausgaben in der Konsole produzieren. Die Bedienung ist denkbar einfach: man startet das Programm bzw. den Prozess im lokalen Terminal und kann den Prozess von überall aus und von jedem Gerät überwachen. Streamhut wurde ursprünglich für den Datenaustausch zwischen Computern entwickelt. Der Entwickler hat die Terminal-Sharing-Funktion später hinzugefügt.

Die üblichen Anwendungsfälle für Streamhut sind:

  • Überwachen von Programmausgaben von mehreren Geräten über das Web,
  • Daten zwischen Computern/Geräten übertragen,
  • Debug-Protokolle mit anderen Personen teilen,
  • Hilfe beim Programmieren geben,
  • Live-Terminalsitzungen für Interviews und Schulungen.

Bedienung

Bevor man das Tool ausprobiert, sollte man wissen, dass sich Streamhut noch im Alpha-Stadium befindet und noch nicht für den Einsatz in einer Produktionsumgebung bereit ist. Die Benutzung erfolgt auf eigenes Risiko. Wie bereits erwähnt, ist für die Nutzung des Services keinerlei lokale Installation nötig. Es wird einfach die Ausgabe eines Kommandos oder Programmausgaben an den Streamhut-Service gepiped.

Im Terminal gibt man folgenden Befehl ein:

exec > >(nc stream.ht 1337) 2>&1

Der Streamhut-Webdienst generiert nun eine zufällige URL, die für den Zugriff auf das lokale Terminalfenster über einen Webbrowser verwendet werden kann. Als Beispiel:

streamhut: Streaming zu https://stream.ht/sxlrce

Unter der ausgegebenen Web-Adresse kann nun die Ausgaben im Terminal live verfolgt werden. Sobald das lokale Terminal geschlossen wird, ist der Spuk vorbei. Und so sieht das dann aus: