¿Qué hace el tty
comando? Imprime el nombre de la terminal que estás usando. TTY significa «teletipo». ¿Cuál es la historia detrás del nombre del comando? Eso requiere un poco más de explicación.
En las décadas de 1830 y 1840, se desarrollaron máquinas conocidas como teleimpresoras . Estas máquinas podrían enviar mensajes mecanografiados «por el cable» a ubicaciones distantes. Los mensajes fueron escritos por el remitente en una especie de teclado. Fueron impresos en papel en el extremo de recepción. Fueron un paso evolutivo en la telegrafía , que anteriormente se había basado en Morse y códigos similares.
Los mensajes se codificaron y transmitieron, luego se recibieron, decodificaron e imprimieron. Se utilizaron varias técnicas para codificar y decodificar los mensajes. El más famoso, y uno de los más prolíficos, fue patentado en 1874 por Émile Baudot , que da nombre a la velocidad en baudios . Su esquema de codificación de caracteres fue anterior a ASCII en 89 años.
La codificación de Baudot finalmente se convirtió en lo más parecido a un estándar en la codificación de teleimpresores, y fue adoptada por la mayoría de los fabricantes. El diseño de hardware original de Baudot tenía solo cinco teclas, similar a las teclas de un piano. Se requirió que el operador aprendiera una combinación de teclas particular para cada letra. Finalmente, el sistema de codificación Baudot se acopló a una distribución de teclado tradicional.
Para marcar ese avance, las máquinas se denominaron teletipos. Esto se redujo a teletipos y, finalmente, a TTY. De ahí es de donde obtenemos el acrónimo TTY, pero ¿qué tiene que ver la telegrafía con la informática?
Cuando ASCII llegó en 1963, fue adoptado por los fabricantes de teletipos. A pesar de la invención y el uso generalizado del teléfono, los teletipos seguían siendo fuertes.
Telex era una red mundial de teletipos que permitía enviar mensajes escritos a todo el mundo. Fueron el principal medio de transmisión de mensajes escritos en el período que siguió a la Segunda Guerra Mundial hasta el auge de las máquinas de fax en la década de 1980.
Las computadoras también estaban evolucionando. Se estaban volviendo capaces de interactuar con los usuarios en tiempo real y de dar soporte a múltiples usuarios. El antiguo método de trabajo por lotes se volvió insuficiente. La gente no quería esperar 24 horas o más por sus resultados. Hacer pilas de tarjetas perforadas y esperar durante la noche los resultados ya no era aceptable.
Las personas necesitaban un dispositivo que les permitiera ingresar instrucciones y recibir los resultados. La gente quería eficiencia.
El teletipo era el candidato perfecto como dispositivo de entrada / salida. Después de todo, era un dispositivo diseñado para permitir que los mensajes se escribieran, codificaran, enviaran, recibieran, decodificaran e imprimieran.
¿Qué le importaba al teletipo si el dispositivo en el otro extremo de la conexión no era otro teletipo? Siempre que hablara el mismo idioma de codificación y pudiera recibir mensajes y enviarlos de vuelta, el teletipo era feliz.
Y, por supuesto, utilizó un teclado más o menos estándar.
Los teletipos se convirtieron en el medio predeterminado para interactuar con las grandes computadoras mini y mainframe de esa época.
Finalmente fueron reemplazados por dispositivos que emulaban esas máquinas electromecánicas que usaban electrónica. Estos tenían tubos de rayos catódicos (CRT) en lugar de rollos de papel. No temblaron al entregar respuestas desde la computadora. Permitían funciones hasta ahora imposibles, como mover el cursor por la pantalla, borrar la pantalla, poner texto en negrita, etc.
El DEC VT05 fue un ejemplo temprano de un teletipo virtual y un antepasado del famoso DEC VT100 . Se vendieron millones de DEC VT100.
En el entorno de escritorio de Linux y otros sistemas operativos similares a Unix, como macOS, la ventana de terminal y aplicaciones como x-term y Konsole son ejemplos de teletipos virtuales. Pero estos se emulan completamente en software. Se llaman pseudo-teletipos. Esto se redujo a PTS.
Y ahí es donde tty
entra en juego.
En Linux, hay un multiplexor de pseudo-teletipo que maneja las conexiones de todos los pseudo-teletipos de ventana de terminal (PTS). El multiplexor es el maestro y el PTS son los esclavos. El multiplexor es direccionado por el kernel a través del archivo de dispositivo ubicado en / dev / ptmx.
El tty
comando imprimirá el nombre del archivo de dispositivo que su pseudo-teletipo esclavo está usando para interactuar con el maestro. Y ese, efectivamente, es el número de su ventana de terminal.
Veamos qué tty
informes para nuestra ventana de terminal:
tty
La respuesta muestra que estamos conectados al archivo del dispositivo en / dev / pts / 0.
Nuestra ventana de terminal, que es una emulación de software de un teletipo (TTY), está interconectada con el multiplexor de pseudo-teletipo como un pseudo-teletipo (PTS). Y resulta ser el número cero.
La -s
opción (silenciosa) hace tty
que no se genere salida.
tty -s
Sin embargo, produce un valor de salida:
Es probable que esto sea más útil en scripts Bash. Pero, incluso en la línea de comandos, podemos demostrar cómo ejecutar un comando solo si se está ejecutando en una ventana de terminal (una sesión TTY o PTS).
tty -s && echo "En un tty"
Debido a que estamos ejecutando en una sesión de TTY, nuestro código de salida es 0 y se ejecuta el segundo comando.
Otros comandos pueden revelar su número TTY. El who
comando mostrará información de todos los usuarios registrados, incluido usted.
Alec y Mary están conectados de forma remota a la computadora Linux. Están conectados a PTS uno y dos.
El usuario dave se muestra conectado a “: 0”.
Esto representa la pantalla y el teclado conectados físicamente a la computadora. Aunque la pantalla y el teclado son dispositivos de hardware, aún están conectados al multiplexor a través de un archivo de dispositivo. tty
revela que es / dev / pts / 2.
OMS
tty
Puede acceder a una sesión TTY de pantalla completa manteniendo presionadas las teclas Ctrl + Alt y presionando una de las teclas de función.
Ctrl + Alt + F3 hará que aparezca el mensaje de inicio de sesión de tty3.
Si tty
inicia sesión y emite el comando, verá que está conectado a / dev / tty3.
Este no es un pseudo-teletipo (emulado en software); es un teletipo virtual (emulado en hardware). Está usando la pantalla y el teclado conectados a su computadora, para emular un teletipo virtual como solía hacer el DEC VT100.
Puede usar las teclas de función Ctrl + Alt con las teclas de función F3 a F6 y tener cuatro sesiones TTY abiertas si lo desea. Por ejemplo, puede iniciar sesión en tty3 y presionar Ctrl + Alt + F6 para ir a tty6.
Para volver a su entorno de escritorio gráfico, presione Ctrl + Alt + F2.
Si presiona Ctrl + Alt + F1, regresará al indicador de inicio de sesión de su sesión de escritorio gráfico.
En un momento, Ctrl + Alt + F1 hasta Ctrl + Alt + F6 abrirían las consolas TTY de pantalla completa, y Ctrl + Alt + F7 lo devolverían a su entorno de escritorio gráfico. Si está ejecutando una distribución de Linux anterior, este podría ser el comportamiento de su sistema.
Esto se probó en las versiones actuales de Manjaro, Ubuntu y Fedora y todos se comportaron así:
Tener acceso a estas consolas de pantalla completa permite a las personas que utilizan instalaciones de Linux únicamente desde la línea de comandos, y muchos servidores Linux están configurados de esta manera, tener varias consolas disponibles.
¿Alguna vez ha estado trabajando en una máquina Linux con un entorno de escritorio gráfico y algo provocó que su sesión se congelara? Ahora puede saltar a una de las sesiones de la consola TTY para poder intentar rectificar la situación.
Puede usar top
y ps
para tratar de identificar la aplicación fallida, luego usar kill
para terminarla, o simplemente usar shutdown
para intentar cerrar con tanta elegancia como lo permita el estado de la computadora.
El tty
comando recibe su nombre de un dispositivo de finales de 1800, apareció en Unix en 1971 y es parte de los sistemas operativos Linux y similares a Unix hasta el día de hoy.
El pequeño tiene una gran historia detrás de él.
El mundo del gaming ha experimentado un crecimiento exponencial en los últimos años. La…
Stokkete/Shutterstock.com ¿Sigue utilizando una unidad flash USB obsoleta para almacenar sus archivos? ¿Por qué no…
LG Los fabricantes siempre intentan mejorar el rendimiento de imagen de los monitores. Como resultado,…
Patty Chan/Shutterstock.com Si cree en lo que ve en las redes sociales, puede pensar en…
Seksan.TH/Shutterstock.com Los servicios de suscripción como Netflix, Game Pass y Spotify nos permiten consumir tantas…
fatmawati achmad zaenuri/Shutterstock El acceso a Internet, oa cualquier otra red, se rige por la…