O que é um TTY no Linux? (e como usar o comando tty)
O que faz o comando tty? Ele imprime o nome do terminal que você está usando. TTY significa “teletypewriter”. Qual é a história por trás do nome do comando? Isso explica um pouco mais.
Teleprinters a partir dos anos 1800
Nas décadas de 1830 e 1840, máquinas conhecidas como teleimpressores foram desenvolvidas. Essas máquinas podiam enviar mensagens digitadas “pelo fio” para locais distantes. As mensagens foram digitadas pelo remetente em um tipo de teclado. Eles foram impressos em papel no final do recebimento. Eles eram um passo evolucionário na telegrafia, que anteriormente se baseava em códigos Morse e similares.
As mensagens eram codificadas e transmitidas, depois recebidas, decodificadas e impressas. Havia várias técnicas usadas para codificar e decodificar as mensagens. O mais famoso, e um dos mais prolíficos, foi patenteado em 1874 por Émile Baudot, para quem a taxa de transmissão é nomeada. Seu esquema de codificação de caracteres pré-datava o ASCII em 89 anos.
A codificação da Baudot acabou se tornando a coisa mais próxima de um padrão na codificação de teleimpressores e foi adotada pela maioria dos fabricantes. O design de hardware original da Baudot tinha apenas cinco teclas, semelhantes às teclas do piano. O operador era obrigado a aprender uma determinada combinação de teclas para cada letra. Eventualmente, o sistema de codificação Baudot foi acoplado a um layout de teclado tradicional.
Para marcar esse avanço, as máquinas foram denominadas teletypewriters. Isto foi encurtado para teletipos e eventualmente para TTYs. Então é daí que obtemos a sigla TTY, mas o que a telegrafia tem a ver com a computação?
ASCII e Telex
Quando a ASCII chegou em 1963, foi adotada pelos fabricantes de teletipos . Apesar da invenção e do uso generalizado do telefone, os teletipos continuavam fortes.
A Telex era uma rede mundial de teletipos que permitia que mensagens escritas fossem enviadas para todo o mundo. Eles eram o principal meio de transmitir mensagens escritas no período que se seguiu à Segunda Guerra Mundial até o boom do aparelho de fax nos anos 80. Os computadores também estavam evoluindo. Eles estavam se tornando capazes de interagir com usuários em tempo real e de suportar vários usuários. O antigo método de lote de trabalho tornou-se insuficiente. As pessoas não queriam esperar 24 horas ou mais por seus resultados. Fazer pilhas de cartões perfurados e esperar durante a noite por resultados não era mais aceitável.
As pessoas precisavam de um dispositivo que lhes permitisse inserir instruções e obter resultados enviados de volta para eles. As pessoas queriam eficiência.
O teletipo foi reaproveitado
O teletipo era o candidato perfeito como dispositivo de entrada / saída. Era, afinal de contas, um dispositivo projetado para permitir que as mensagens fossem digitadas, codificadas, enviadas, recebidas, decodificadas e impressas.
O que o teletipo importava se o dispositivo na outra extremidade da conexão não fosse outro teletipo? Contanto que falasse a mesma linguagem de codificação e pudesse receber mensagens e enviar mensagens de volta, o teletipo estava feliz.
E, é claro, ele usava um teclado padrão mais ou menos. h2] Teletipos emulados por hardware
Os teletipos tornaram-se o meio padrão de interação com os grandes computadores mini e mainframe da época.
Eles foram substituídos por dispositivos que emularam essas máquinas eletromecânicas usando eletrônica. Estes tinham tubos de raios catódicos (CRTs) em vez de rolos de papel. Eles não tremeram ao entregar respostas do computador. Eles permitiram funcionalidades até então impossíveis, como mover o cursor pela tela, limpar a tela, negrito e assim por diante.
O DEC VT05 foi um dos primeiros exemplos de um teletipo virtual e um ancestral da tela. famoso DEC VT100. Milhões de DEC VT100 foram vendidos.
Teletipos Emulados por Software
No ambiente de desktop do Linux e outros sistemas operacionais semelhantes ao Unix, como macOS, a janela do terminal e aplicativos como o x- prazo e Konsole são exemplos de teletipos virtuais. Mas estes são emulados inteiramente em software. Eles são chamados pseudo-teletipos. Isso foi encurtado para PTS.
E é aí que entra o tty.
O que podemos dizer?
No Linux, existe um multiplexador de pseudo-teletipo que lida com as conexões de todos os pseudo-teletipos da janela do terminal (PTS). O multiplexador é o mestre e os PTS são os escravos. O multiplexador é endereçado pelo kernel através do arquivo de dispositivo localizado em / dev / ptmx.
O comando tty irá imprimir o nome do arquivo de dispositivo que seu escravo pseudo-teletipo está usando para fazer a interface com o mestre. E isso, efetivamente, é o número da sua janela de terminal.
Vamos ver quais são os relatórios tty para nossa janela de terminal:
tty
A resposta mostra que estamos conectados ao arquivo do dispositivo em / dev / pts / 0.
Nossa janela de terminal, que é uma emulação de software de um teletipo (TTY), tem interface com o pseudo teletipo multiplexador como um pseudo teletipo (PTS). E acontece de ser o número zero.
A opção silenciosa
A opção -s (silenciosa) faz com que tty não gere saída.
tty -s
Produz um valor de saída, no entanto:
- 0: se a entrada padrão vier de um dispositivo TTY, emulado ou físico.
- 1: se a entrada padrão não vier de um dispositivo TTY.
- 2: Erro de sintaxe, parâmetros de linha de comando incorretos foram usados.
- 3 : Ocorreu um erro de gravação.
Isso provavelmente será mais útil no script Bash. Mas, mesmo na linha de comando, podemos demonstrar como ter um comando executado apenas se você estiver executando em uma janela de terminal (uma sessão TTY ou PTS).
tty -s & & echo "Em um tty"
Como estamos executando em uma sessão TTY, nosso código de saída é 0 e o segundo comando é executado.
O comando who
Outros comandos podem revelar seu número TTY. O comando who listará informações de todos os usuários logados, incluindo você mesmo.
Alec e Mary estão conectados remotamente ao computador Linux. Eles estão conectados ao PTS um e dois.
User dave é mostrado como conectado a “: 0”.
Isto representa a tela e o teclado fisicamente conectados ao computador. Mesmo que a tela e o teclado sejam dispositivos de hardware, eles ainda estão conectados ao multiplexador por meio de um arquivo de dispositivo. tty revela que é / dev / pts / 2.
quem
tty
RELACIONADO : Como determinar a conta de usuário atual no Linux
Acessando um TTY
Você pode acessar uma sessão TTY de tela inteira pressionando as teclas Ctrl + Alt e pressionando uma das teclas de função.
Ctrl + Alt + F3 exibirá o prompt de login de tty3.
Se você fizer login e emitir o comando tty, Você verá que está conectado a / dev / tty3.
Este não é um pseudo-teletipo (emulado em software); é um teletipo virtual (emulado em hardware). Ele está usando a tela e o teclado conectados ao seu computador, para emular um teletipo virtual como o DEC VT100 costumava fazer.
Você pode usar as teclas de função Ctrl + Alt com as teclas de função F3 a F6 e ter quatro TTY sessões abertas se você escolher. Por exemplo, você poderia estar logado em tty3 e pressionar Ctrl + Alt + F6 para ir para tty6.
Para voltar ao ambiente gráfico da sua área de trabalho, pressione Ctrl + Alt + F2.
Pressionando Ctrl + Alt + F1, você retornará ao prompt de login da sua sessão de área de trabalho gráfica.
De uma só vez, Ctrl + Alt + F1 até Ctrl + Alt + F6 abriria os consoles TTY de tela cheia, e Ctrl + Alt + F7 retornariam ao seu ambiente gráfico de área de trabalho. Se você estiver executando uma distribuição Linux mais antiga, isso pode ser como o sistema se comporta.
Isso foi testado nas versões atuais do Manjaro, Ubuntu e Fedora e todos se comportaram assim: [ul ]
Ter acesso a esses consoles de tela cheia permite que as pessoas usem somente instalações de linha de comando do Linux - e muitos servidores Linux são configurados dessa maneira - para tem vários consoles disponíveis.
Já trabalhou em uma máquina Linux com um ambiente gráfico de área de trabalho e algo causou o congelamento de sua sessão? Agora você pode pular para uma das sessões de console do TTY para tentar corrigir a situação.
Você pode usar top e ps para tentar identificar o aplicativo com falha e usar kill para finalizá-lo, ou apenas usar o desligamento para tentar fechar tão graciosamente quanto o estado do computador permitirá.
RELACIONADO: Como matar processos do terminal Linux
Três letras pequenas com muito of History
O comando tty recebe seu nome de um dispositivo do final do século XIX, apareceu no Unix em 1971 e faz parte dos sistemas operacionais Linux e Unix até hoje.
O rapaz tem um conto por trás dele.
LEIA EM SEGUIDA & rsaquo; Você está assistindo a conteúdo 4K? Veja como saber "rsaquo; Como Alexa ouve para palavras de despertar & rsaquo; Como marcar uma assinatura Amazon Prime barata para Prime Day & rsaquo; Como Transmitir o UFC Fight Night 155 de Randamie vs. Ladd Online & rsaquo; Como acelerar sua conexão com a Internet
Via: How to Geek
Nenhum comentário