Harting Development

TTYs in Linux: Ein umfassender Überblick

Lukas Fuchs vor 5 Monaten Systemadministration 3 Min. Lesezeit

Was ist ein TTY?

Ein TTY, abgekürzt für Teletypewriter, ist eine textbasierte Kommunikationsverbindung, die es dir ermöglicht, mit einem Computer über eine Tastatur und einen Bildschirm zu interagieren. Im Linux-Kontext bezieht sich TTY speziell auf virtuelle Konsolen, die vom Kernel verwaltet werden.

Wozu dient ein TTY?

TTYs ermöglichen es dir:

  • Eine grafische Benutzeroberfläche (GUI) zu verwenden, wenn keine Desktop-Umgebung verfügbar ist.
  • Auf einen System zuzugreifen, das nur über eine Befehlszeile gesteuert wird.
  • Mehrere Sitzungen auf demselben System zu starten.
  • Textbasierte Anwendungen wie Texteditoren, E-Mail-Clients und Webbrowser zu verwenden.

Was sind die Vorteile von TTYs?

  • Unabhängigkeit von der GUI: TTYs sind von der grafischen Benutzeroberfläche unabhängig und ermöglichen dir den Zugriff auf den Computer, auch wenn die GUI nicht lädt oder nicht verfügbar ist.
  • Geringe Ressourcenanforderungen: TTYs benötigen im Vergleich zu GUIs nur minimale Systemressourcen, was sie für Systeme mit begrenzten Ressourcen geeignet macht.
  • Verbesserte Privatsphäre: TTYs ermöglichen es dir, Befehle ohne die Ablenkung durch Desktop-Benachrichtigungen oder andere Hintergrundprozesse auszuführen.
  • Mehrere Sitzungen: Du kannst mehrere TTYs gleichzeitig öffnen und zwischen ihnen wechseln, wodurch du mehrere Aufgaben parallel ausführen kannst.

Unterschied zwischen TTYs und Terminals

TTYs (TeleTYpewriters) und Terminals sind eng verwandte Konzepte, die jedoch unterschiedliche Funktionen erfüllen.

Terminalemulationsprogramme

Ein Terminal ist ein Hardwaregerät oder ein Softwareprogramm, das es dir ermöglicht, mit einem Computer zu interagieren. Wenn du eine Eingabeaufforderung auf einem Bildschirm siehst und Text eingibst, verwendest du ein Terminal. Diese Programme emulieren die Funktionalität eines physischen TTY-Geräts. Beispielsweise ist das in Linux integrierte Terminalprogramm xterm eine Terminalemulation.

Virtuelle Konsolen

Ein TTY ist dagegen ein virtuelles Gerät, das eine Verbindung zu einer bestimmten Terminalsitzung herstellt. In Linux wird eine TTY als virtuelle Konsole bezeichnet und als tty1, tty2 usw. nummeriert. Jede virtuelle Konsole ist eine eigenständige Sitzung mit eigener Shell und Sitzungskonfiguration. Du kannst zwischen virtuellen Konsolen wechseln, indem du die Tastenkombination Strg+Alt+F[Nummer] verwendest.

Zusammenfassung

Zusammenfassend lässt sich sagen, dass TTYs virtuelle Geräte sind, die Verbindungen zu Terminalsessions herstellen, während Terminals (oder Terminalemulationen) die Schnittstelle sind, über die du mit diesen Terminalsessions interagierst.

Verwendung von TTYs in Linux

TTYs dienen als Schnittstelle zur Interaktion mit dem Linux-System. Sie bieten eine textbasierte Umgebung, in der du Befehle eingeben, Ausgaben anzeigen und mit Programmen interagieren kannst.

Aufgaben von TTYs

TTYs werden in verschiedenen Szenarien eingesetzt:

  • Remote-Zugriff: Du kannst dich über SSH oder Telnet von einem entfernten Computer aus bei einem Linux-System anmelden und damit über ein TTY interagieren.
  • Konsolenkonfiguration: Im Falle eines Systemstarts oder Systemfehlers kannst du über ein TTY auf das System zugreifen und Konfigurationsprobleme beheben.
  • Grafikeinschränkung: Wenn dein System keine grafische Oberfläche (GUI) hat oder wenn du die GUI vorübergehend deaktivierst, kannst du TTYs zur Verwaltung des Systems verwenden.
  • Multiplexing: Du kannst mehrere TTYs gleichzeitig ausführen, um verschiedene Aufgaben parallel zu bearbeiten.

Zugriff auf TTYs

Du kannst unter Linux auf verschiedene TTYs zugreifen:

  • Physische Konsolen: Die meisten Linux-Systeme verfügen über eine physische Konsole, auf die du über die Tastenkombination Strg + Alt + F1 bis F6 zugreifen kannst.
  • Virtuelle Konsolen: Du kannst auch virtuelle Konsolen über die Tastenkombination Alt + F1 bis F6 erstellen.
  • SSH-Sitzungen: Du kannst dich über SSH mit einem Linux-System verbinden und ein TTY starten.
  • Terminalemulatoren: Terminalemulatoren wie Gnome Terminal oder Konsole bieten eine grafische Schnittstelle für den Zugriff auf TTYs.

Multiplexen von TTYs

Das Multiplexen ermöglicht es, mehrere TTYs in einem einzigen Fenster zu öffnen und zwischen ihnen zu wechseln. Mit dem Befehl screen kannst du beispielsweise mehrere TTYs in einer einzigen Sitzung ausführen und sie mit den Tastenkombinationen Strg + A, gefolgt von n (n für die TTY-Nummer), steuern.

Vorteile von TTYs

Die Verwendung von TTYs bietet mehrere Vorteile:

  • Effizienz: TTYs sind sehr effizient, da sie nur geringe Systemressourcen benötigen.
  • Flexibilität: Du kannst TTYs von überall aus aufrufen, wo du eine Netzwerkverbindung hast.
  • Kontrolle: TTYs bieten dir volle Kontrolle über das System und ermöglichen fortgeschrittene Fehlerbehebung.

Erstellen und Löschen von TTYs

Im Linux-Kernel sind TTYs nicht persistent, was bedeutet, dass sie beim Systemneustart nicht überdauern. Daher musst du sie manuell erstellen.

Erstellen von TTYs

Es gibt verschiedene Möglichkeiten, TTYs zu erstellen:

  • Mit dem Befehl mknod:
sudo mknod /dev/ttyN c 5 N

Ersetze "N" durch die TTY-Nummer, die du erstellen möchtest (z. B. 1, 2, 3 usw.).

  • Mit dem Programm setserial:
sudo setserial /dev/ttyN speed

Ersetze "N" durch die TTY-Nummer und "speed" durch die gewünschte Baudrate (z. B. 9600, 115200 usw.).

Löschen von TTYs

Um eine TTY zu löschen, kannst du den Befehl rm verwenden:

sudo rm /dev/ttyN

Ersetze "N" durch die TTY-Nummer, die du löschen möchtest.

Hinweis

Denke daran, dass das Löschen einer TTY alle damit verbundenen Prozesse beendet. Stelle also sicher, dass du keine wichtigen Prozesse ausführst, bevor du eine TTY löschst.

Konfiguration von TTYs

Nachdem du deine TTYs erstellt hast, kannst du sie konfigurieren, um ihren Funktionsumfang zu erweitern und sie an deine Bedürfnisse anzupassen. Im Folgenden findest du einige wichtige Konfigurationsoptionen, die du in Betracht ziehen solltest:

Tasteinstellungen

Du kannst die Tastenbelegungen deiner TTYs anpassen, um die Bedienung zu vereinfachen oder auf deine bevorzugten Kombinationen zuzugreifen. Verwende dazu den Befehl stty, beispielsweise:

stty -a

um die aktuellen Tasteneinstellungen anzuzeigen, und:

stty erase ^H

um die Rücktaste auf Strg+H zu setzen.

Geschwindigkeit und Flusskontrolle

Du kannst die Übertragungsgeschwindigkeit und die Flusskontrolle für TTYs konfigurieren, um eine optimale Leistung zu gewährleisten. Dies ist besonders wichtig bei langsamen oder unzuverlässigen Verbindungen. Verwende dazu erneut den Befehl stty, beispielsweise:

stty 9600

um die Übertragungsgeschwindigkeit auf 9600 Baud einzustellen, und:

stty crtscts

um die Hardware-Flusskontrolle zu aktivieren.

Terminalsoftware

Du kannst eine Terminalsoftware deiner Wahl verwenden, um auf TTYs zuzugreifen und sie zu verwalten. Beliebte Optionen sind:

  • GNOME Terminal für GNOME-Desktops
  • Konsole für KDE-Plasma-Desktops
  • Terminator für eine erweiterte Benutzeroberfläche
  • Kitty für eine leichtgewichtige und anpassbare Option

Jede dieser Software bietet ihre eigenen Konfigurationsoptionen, mit denen du das Erscheinungsbild, die Tasteneinstellungen und andere Aspekte deiner TTY-Sitzungen anpassen kannst.

Umgebungsvariablen

Du kannst Umgebungsvariablen für TTYs festlegen, um ihre Standardkonfiguration zu überschreiben. Dies ist nützlich, um bestimmte Einstellungen für bestimmte Anwendungen oder Benutzer zu erzwingen. Um beispielsweise die Standard-Shell für alle neuen TTYs auf Bash zu setzen, verwende:

export SHELL=/bin/bash

in der Datei /etc/environment.

Zugriff auf TTYs

Zugriff über die Kommandozeile

TTYs können über die Kommandozeile auf verschiedene Arten aufgerufen werden:

  • init 1: Wechselt zur ersten Instanz von init, die den ersten TTY (tty1) darstellt.
  • fgconsole: Bringt das aktuelle TTY in den Vordergrund.
  • chvt N: Wechselt zum N-ten TTY (z. B. chvt 2 für tty2).

Grafische Umgebungen

In grafischen Umgebungen kannst du mit folgenden Methoden auf TTYs zugreifen:

  • Strg+Alt+F1: Wechselt zu tty1.
  • Strg+Alt+F2: Wechselt zu tty2.
  • Strg+Alt+F3: Wechselt zu tty3 usw.

Du kannst auch die TTY-Einrichtung im Einstellungsmenü deines Systems verwenden, um TTYs zu konfigurieren und zu verwalten.

Softwarezugriff

Für den softwarebasierten Zugriff auf TTYs kannst du Anwendungen wie screen oder tmux verwenden, die Sitzungsverwaltung und Multiplexing ermöglichen. Diese Tools lassen dich mehrere TTYs innerhalb eines einzigen Terminals verwalten.

Benutzerdefinierte TTYs erstellen

So erstellst du einen benutzerdefinierten TTY:

sudo mknod /dev/ttyNN c 5 NN NN

Dabei ist:

  • NN: Die TTY-Nummer (z. B. 10 für tty10)

Umleiten von Ausgabe auf TTYs

Wenn du die Ausgabe eines Befehls oder Programms auf ein bestimmtes TTY weiterleiten möchtest, kannst du die folgenden Techniken verwenden:

Verwendung von tee

Der Befehl tee liest Eingaben aus der Standard-Eingabe und schreibt sie sowohl in eine Datei als auch auf die Standard-Ausgabe. Du kannst dies nutzen, um Ausgaben auf ein TTY umzuleiten, indem du den Dateinamen durch den Gerätenamen des TTY ersetzt. Beispiel:

cat /etc/passwd | tee /dev/tty1

Dadurch wird die Ausgabe von /etc/passwd sowohl auf tty1 als auch in der Standardausgabe angezeigt.

Verwendung von script

Der Befehl script zeichnet alle Eingaben und Ausgaben einer Shell-Sitzung auf und speichert sie in einer Datei. Du kannst die Option -a verwenden, um die Ausgabe an ein bestimmtes TTY umzuleiten. Beispiel:

script -a /dev/tty2

Dadurch werden alle Ausgaben der aktuellen Shell-Sitzung auf tty2 aufgezeichnet.

Verwendung von Job-Kontrolle

Job-Kontrolle ermöglicht es dir, Prozesse anzuhalten, fortzusetzen und zwischen ihnen zu wechseln. Du kannst sie verwenden, um die Ausgabe eines Prozesses auf ein bestimmtes TTY umzuleiten, indem du den Prozess in den Hintergrund verschiebst und seine Ausgabe umleitest.

Schritt 1: Verschiebe den Prozess in den Hintergrund.

cat /etc/passwd &

Dies verschiebt den cat-Befehl in den Hintergrund und weist ihm eine Job-ID zu.

Schritt 2: Leite die Ausgabe um.

fg %1 > /dev/tty3

Dadurch wird die Ausgabe des Prozesses mit der Job-ID 1 auf tty3 umgeleitet.

Troubleshooting häufiger TTY-Probleme

Kein Zugriff auf TTYs

  • Überprüfe, ob der TTY-Dienst ausgeführt wird: Führe den Befehl systemctl status tty aus, um zu prüfen, ob der Dienst aktiv ist. Ist er nicht aktiv, starte ihn mit systemctl start tty.
  • Prüfe die Berechtigungen: Stelle sicher, dass du über die erforderlichen Berechtigungen verfügst, um auf TTYs zuzugreifen. Führe den Befehl ls -l /dev/tty* aus, um die Berechtigungen anzuzeigen.
  • Überprüfe die Hardwareverbindung: Stelle sicher, dass die seriellen oder USB-Verbindungen zu deinen Terminals ordnungsgemäß hergestellt sind.

Verbindungsprobleme

  • Serielle Probleme: Überprüfe die Verkabelung, die Baudrate und die Paritätseinstellungen. Verwende ein Terminalemulationsprogramm wie minicom oder picocom, um die Verbindung zu testen.
  • USB-Probleme: Stelle sicher, dass dein Terminal mit dem Betriebssystem kompatibel ist und dass die entsprechenden Treiber installiert sind.

Fehlende Ausgabe

  • TTY-Umleitung: Überprüfe, ob du die Ausgabe auf den richtigen TTY umgeleitet hast. Verwende den Befehl tty um den aktuellen TTY zu ermitteln.
  • Konfigurationsprobleme: Stelle sicher, dass die TTY-Konfigurationsdatei /etc/sysconfig/ttys korrekt konfiguriert ist.

Andere Probleme

  • TTY-Hängen: Wenn ein TTY einfriert oder nicht mehr reagiert, versuche, ihn mit Ctrl+Alt+F1 (für TTY1) oder Ctrl+Alt+F6 (für TTY6) zu wechseln.
  • E/A-Fehler: Wenn du E/A-Fehler erhältst, überprüfe die Kabelverbindungen, die Berechtigungen und die TTY-Konfiguration.
  • Kernel-Probleme: Einige Kernel-Probleme können TTY-Fehlfunktionen verursachen. Aktualisiere deinen Kernel und führe dmesg aus, um Kernelmeldungen auf Fehler zu überprüfen.

Weitere Beiträge

Folge uns

Neue Beiträge

Systemadministration

Memory Dump: Was es ist, wann du es brauchst und wie du es richtig nutzt

AUTOR • Oct 24, 2026
Systemadministration

Abkürzung HDF: Bedeutung, Nutzung und warum du sie besser kennst

AUTOR • Oct 24, 2026
Systemadministration

Wine auf Linux Mint installieren: Ausführliche Anleitung zur Einrichtung und Konfiguration

AUTOR • Oct 24, 2026
Netzwerk & Routing

WLAN Probleme mit GoodWe Wechselrichtern: Troubleshooting und Lösungen für stabile Verbindung

AUTOR • Oct 23, 2026
Netzwerk & Routing

1 Gigabit in MB: Die einfache Umrechnung ohne Rätselraten

AUTOR • Oct 23, 2026
Netzwerk & Routing

Xiaomi WLAN Probleme: Ursachen finden und beheben – die schnelle Anleitung

AUTOR • Oct 23, 2026
Automatisierung & Scripting

NH Sicherungen Tabelle: Größen, Stromstärken und passende Auswahl auf einen Blick

AUTOR • Oct 23, 2026
Netzwerk & Routing

routerlogin unitymedia: So kommst du direkt in die Router-Einstellungen

AUTOR • Oct 23, 2026
Netzwerk & Routing

Netzwerkgeschwindigkeit verbessern: So machst du dein Internet spürbar schneller

AUTOR • Oct 22, 2026
Linux-Server

Welche Festplatte für NAS: So wählst du die richtige HDD ohne Fehlkauf

AUTOR • Oct 22, 2026
Netzwerk & Routing

WLAN Rauchmelder mit Fritzbox verbinden: So geht’s schnell und sauber

AUTOR • Oct 22, 2026
Systemadministration

D-List: Was dahinter steckt und wie du damit echte Ergebnisse bekommst

AUTOR • Oct 22, 2026
Netzwerk & Routing

01575 Netz: Welcher Anbieter steckt hinter der Vorwahl wirklich?

AUTOR • Oct 22, 2026
Linux-Server

MX Linux herunterladen: Dein Leitfaden zur Installation ohne Umwege

AUTOR • Oct 22, 2026
Systemadministration

Wie viel Hertz hat das iPhone 16? Alle Modelle, Unterschiede und was es wirklich bringt

AUTOR • Oct 22, 2026
Linux-Server

Erstellung von Linux-Partitionen: Der kompakte Leitfaden für saubere Festplattenverwaltung

AUTOR • Oct 22, 2026
Systemadministration

USB Stick Seriennummer ermitteln: So geht’s einfach und schnell

AUTOR • Oct 22, 2026
Netzwerk & Routing

How Can DNS Be Used for Footprinting? Die wichtigsten Methoden, Risiken und Schutzmaßnahmen

AUTOR • Oct 21, 2026
Netzwerk & Routing

What Command Line Tool Can Be Used to Harvest DNS Information? Die besten CLI-Tools für DNS-Recherche

AUTOR • Oct 21, 2026
Sicherheit & Hardening

Hardware ID ändern: Was möglich ist, was nicht geht und welche Risiken du kennen musst

AUTOR • Oct 21, 2026

Beliebte Beiträge

Systemadministration

Das Linux Datumsformat verstehen und verwenden: So formatierst du Datum und Zeit korrekt

AUTOR • Jun 12, 2026
Automatisierung & Scripting

Die umfassende Shelly 1 Plus Anleitung: Dein Weg zur smarteren Steuerung

AUTOR • Jul 01, 2025
Systemadministration

Wie Sie die RAM-Geschwindigkeit herausfinden: Eine Schritt-für-Schritt-Anleitung

AUTOR • Jun 26, 2025
Netzwerk & Routing

OpenWrt auf Fritzbox installieren: So machst du deine Fritzbox zum flexiblen Router

AUTOR • Oct 18, 2026
Systemadministration

Die Rolle des Garbage Collectors in der Softwareentwicklung

AUTOR • Apr 04, 2025
Monitoring & Logging

Hoymiles HM-800 blinkt grün: Bedeutung, Ursachen und schnelle Lösungen

AUTOR • Jun 11, 2026
Linux-Server

Baldurs Gate 3 unter Linux: Anleitung für begeisterte Spieler, die sofort loslegen wollen

AUTOR • Jun 11, 2026
Automatisierung & Scripting

Die Zukunft des Rechnens: Taschenrechner mit Künstlicher Intelligenz

AUTOR • Jun 25, 2025
Automatisierung & Scripting

Home Assistant Gardena: So steuerst du deine Bewässerung smart und zuverlässig

AUTOR • Jul 10, 2026
Netzwerk & Routing

iPhone WLAN Probleme nach Update: So lösen Sie die häufigsten Herausforderungen

AUTOR • Jun 18, 2025
Systemadministration

Teckin Steckdose Reset: Schritt-für-Schritt-Anleitung zur Fehlersuche

AUTOR • Jul 28, 2026
Automatisierung & Scripting

Die Verwendung von std::filesystem::exists in C++: Ein umfassender Leitfaden

AUTOR • Apr 04, 2025
Automatisierung & Scripting

Reguläre Ausdrücke und das Zeichen 'd': Anwendung und Beispiele

AUTOR • Apr 04, 2025
Sicherheit & Hardening

Private DNS verwenden auf Android-Geräten

AUTOR • May 13, 2026
Sicherheit & Hardening

Bluetooth Störsender Schutz vor unerwünschten Funkstörungen: So schütze ich meine Verbindungen

AUTOR • Jun 12, 2026
Systemadministration

WinSCP unter Linux: Die ultimative Anleitung zur Verwaltung von Remote-Dateien

AUTOR • Jun 11, 2026
Automatisierung & Scripting

Home Assistant auf Synology mit Docker: Ein umfassender Leitfaden

AUTOR • Mar 18, 2026
Netzwerk & Routing

IP-Adresse unter Linux ermitteln: Komplette Anleitung für Terminal, GUI und Netzwerkdiagnose

AUTOR • Jun 12, 2026
Automatisierung & Scripting

PDF Bearbeitung unter Linux: Anleitung und bewährte Verfahren für schnelle, saubere Ergebnisse

AUTOR • Sep 23, 2026
Netzwerk & Routing

Roborock mit WLAN verbinden: Schritt-für-Schritt-Anleitung für eine reibungslose Einrichtung

AUTOR • Jul 16, 2026