Che cos'è la pseudo allocazione TTY? (SSH e Github)


111

Stavo cercando di configurare una connessione SSH con Github seguendo questo tutorial:
https://help.github.com/articles/testing-your-ssh-connection/

Mi sono imbattuto nel seguente comando:

$ ssh -T git@github.com 
# Attempts to ssh to github

Curioso, ho guardato il manuale ssh. Diceva quanto segue:

 -T      Disable pseudo-tty allocation.

Cos'è l'allocazione tty? Cosa significa tty? Perché lo stiamo disabilitando?
Ho provato seriamente a cercarlo ma non sono riuscito a trovare nemmeno una definizione.


1
Forse ha qualcosa a che fare con i terminali pseudo ? Inoltre, non hai trovato davvero nulla di utile quando hai cercato su Google la pseudo allocazione tty ?

1
Chi sapeva che gli pseudo terminali avessero qualcosa a che fare con tty. In realtà ho trovato quel collegamento ma pensavo che non avesse nulla a che fare con l'assegnazione di tty, eh. Grazie!
user2316667

4
Stavo impostando la connessione SSH, stavo seguendo lo stesso tutorial, ed ero come questa opzione -T, per curiosità ho guardato la pagina man di ssh, e poi ho avuto le stesse domande che avevi tu!
Siddhartha

Risposte:


99

Come spiegato in " gitolite: richiesta di allocazione PTY fallita sul canale 0 ", è importante eseguire un test di connessione ssh con -T, perché alcuni server potrebbero interrompere completamente la transazione se viene richiesto un terminale di testo (tty) .

-T evita di richiedere detto terminale, dal momento che GitHub non ha intenzione di darti una shell sicura interattiva, dove potresti digitare command.

GitHub vuole solo rispondere alla tua richiesta ssh, al fine di verificare che il comando ssh funzioni (hai le chiavi pubbliche / private corrette e quella pubblica è stata registrata sul tuo account GitHub )

PuTTy sarebbe un esempio di emulatore di terminale , console seriale e applicazione di trasferimento file di rete. Supporta diversi protocolli di rete, inclusi SCP, SSH, Telnet e rlogin.
Il nome " PuTTY" non ha un significato definitivo , sebbene "tty" sia il nome di un terminale nella tradizione Unix, generalmente ritenuto l'abbreviazione di Teletype .


Altri casi d'uso per -T(oltre ai test)


2
Grazie. -T è usato solo per testare la connessione, poiché evita di allocare tty?
Tim

6
@Tim No, può essere utile (per disabilitare tty) durante il trasferimento di file binari ( serverfault.com/a/746638/783 ) o per eseguire comandi su un server remoto ( unix.stackexchange.com/a/88616/7490 )
VonC
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.