O que é Pseudo TTY-Allocation? (SSH e Github)

111

Eu estava tentando configurar uma conexão SSH com Github seguindo este tutorial:
https://help.github.com/articles/testing-your-ssh-connection/

Me deparei com o seguinte comando:

$ ssh -T [email protected] 
# Attempts to ssh to github

Curioso, olhei o manual do SSH. Dizia o seguinte:

 -T      Disable pseudo-tty allocation.

O que é alocação de tty? O que tty representa? Por que estamos desativando isso?
Eu tentei seriamente pesquisar, mas não consegui encontrar nem mesmo uma definição.

user2316667
fonte
1
Talvez tenha algo a ver com Pseudo terminais ? Além disso, você realmente não encontrou nada útil ao pesquisar pseudo-alocação de tty no Google ?
1
Quem diria que os pseudoterminais têm algo a ver com tty. Na verdade, encontrei esse link, mas pensei que não tinha nada a ver com a alocação de tty, heh. Obrigado!
user2316667
4
Eu estava configurando a conexão SSH, estava seguindo o mesmo tutorial, e fiquei tipo o que é essa opção -T, por curiosidade eu olhei a página de manual do ssh e então tive as mesmas perguntas que você!
Siddhartha

Respostas:

99

Conforme explicado em " gitolite: a solicitação de alocação de PTY falhou no canal 0 ", é importante fazer o teste ssh com a conexão -T, porque algum servidor pode abortar a transação inteiramente se um terminal de texto (tty) for solicitado.

-T evita solicitar o referido terminal, já que o GitHub não tem a intenção de fornecer um shell seguro interativo, onde você possa digitar o comando.

O GitHub deseja apenas responder à sua solicitação de ssh, a fim de verificar se o comando ssh funciona (você tem as chaves públicas / privadas corretas e a pública foi registrada em sua conta do GitHub )

O PuTTy seria um exemplo de emulador de terminal , console serial e aplicativo de transferência de arquivos de rede. Ele suporta vários protocolos de rede, incluindo SCP, SSH, Telnet e rlogin.
O nome " PuTTY" não tem significado definitivo , embora "tty" seja o nome de um terminal na tradição do Unix, geralmente considerado como abreviação de teletipo .


Outros casos de uso para -T(além do teste)

VonC
fonte
2
obrigado. é -T usado apenas para testar a conexão, uma vez que evita alocar tty?
Tim
6
@Tim Não, pode ser útil (para desativar tty) ao transferir arquivos binários ( serverfault.com/a/746638/783 ) ou para executar comandos em um servidor remoto ( unix.stackexchange.com/a/88616/7490 )
VonC