Die ttys sind nicht nur Eingabe- / Ausgabegeräte. Sie übernehmen auch eine besondere Aufgabe als steuerndes Terminal für eine Sitzung, z. B. das Senden von Signalen (Strg + C). / dev / ttyNN sind virtuelle Konsolen, die als Vollbild auf dem Monitor angezeigt werden.
Die Terminals beginnen mit / dev / tty1. Sie können normalerweise zu diesen Konsolen wechseln, indem Sie die Tastenkombination Strg + Alt + Fn drücken.
Mit Strg + Alt + F1 gelangen Sie zum ersten virtuellen Terminal. Heutzutage führen die meisten Linux-Distributionen den X-Server von tty1 aus. Daher hat das Drücken von Strg + Alt + F1 möglicherweise keine Auswirkung.
$ ps ax | grep Xorg | grep -v grep
1504 tty1 Ss+ 44:57 /usr/bin/Xorg :0 -background none -verbose -auth /var/run/gdm/auth-for-gdm-rfsWyA/database -nolisten tcp vt1
Strg + Alt + F2 bringt Sie zum zweiten Terminal. Normalerweise führen die Distributionen ein Anmeldeprogramm (agetty) auf dem virtuellen Terminal aus.
$ ps ax | grep tty2 | grep -v grep
31865 tty2 Ss+ 0:00 /sbin/agetty tty2 38400
Über die Anmeldeprogramme erhalten Sie eine Anmeldeaufforderung und können sich mit Benutzername / Passwort anmelden. Das Init-Skript entscheidet, wo das gesamte Anmeldeprogramm ausgeführt wird. Je nachdem, ob Sie eine Anmeldeaufforderung sehen oder nicht, sagen Sie tty9. Um zu Ihrer GUI-Oberfläche zurückzukehren, drücken Sie Strg + Alt + F1 (wie in der obigen Beispielausgabe).
/ dev / tty0 ist ein spezielles Gerät, das auf das aktuelle Terminal verweist. Unabhängig davon, von wo aus Sie es ausführen (eine beliebige virtuelle Konsole), wird alles, was von tty0 gelesen / in tty0 geschrieben wird, an Ihr aktuelles Terminal gesendet.
Die zweite Spalte in 'ps ax' gibt auch das steuernde Terminal des Programms an. Bei einigen Programmen, wie z. B. Daemons, wird möglicherweise die Spalte "?" Angezeigt. Dies bedeutet, dass sie nicht an ein Terminal gebunden sind.
/ dev / pts / 0 usw. sind Pseudo-Endgeräte, die nicht an die Systemanzeige angeschlossen sind. Zum Beispiel Terminal, das Sie erhalten, wenn Sie ein Gnome-Terminal oder ein anderes GUI-Terminal öffnen. Hierbei handelt es sich um einen Client-Server-basierten Ansatz, bei dem die Client-Seite in Programme wie Bash exportiert wird. Die vom Programm an das Pseudo-Terminal gesendeten Daten werden an die "Server" -Seite gesendet (die normalerweise von einem anderen Programm wie gnome-terminal überwacht wird). Der Steuerungsprozess (Serverseite) bestimmt, was an das Terminal gesendet werden muss, was schließlich vom Client gesehen wird. Mit diesen Geräten können Sie mehrere 'GUI-Terminals' ohne Einschränkung auf Ihrem System öffnen und dabei dieselben alten Terminals wie Steuerelemente (ioctl (), Farbeinstellung, Sendesignale [Strg + C] usw.) verwenden.