什么是伪TTY分配?(SSH和Github)

use*_*667 105 ssh openssh github

我正在尝试按照本教程设置与Github的SSH连接:https:
//help.github.com/articles/testing-your-ssh-connection/

我遇到了以下命令:

$ ssh -T git@github.com 
# Attempts to ssh to github
Run Code Online (Sandbox Code Playgroud)

好奇,我看了ssh手册.它说如下:

 -T      Disable pseudo-tty allocation.
Run Code Online (Sandbox Code Playgroud)

什么是tty分配?tty代表什么?我们为什么要禁用它?
我认真地试着查一查,但我甚至找不到定义.

Von*_*onC 89

如" gitolite:通道0上的PTY分配请求失败 "中所述,使用-T进行ssh测试连接很重要,因为如果请求text-terminal(tty),某些服务器可能会完全中止该事务.

-T 避免请求所述终端,因为GitHub无意为您提供交互式安全shell,您可以在其中键入命令.

GitHub只想回复你的ssh请求,以确定ssh命令是否正常工作(你拥有正确的公钥/私钥,并且公共密钥已经注册到你的GitHub帐户)

PuTTy将是终端仿真器,串行控制台和网络文件传输应用程序的示例.它支持多种网络协议,包括SCP,SSH,Telnet和rlogin.
名称" PuTTY" 没有明确的含义,虽然"tty"是Unix传统中终端的名称,通常被认为是Teletype的缩写.

  • @Tim不,在传输二进制文件(http://serverfault.com/a/746638/783)或在远程服务器上执行命令时,它可能很有用(禁用tty)(http://unix.stackexchange.com /一个/七千四百九十零分之八万八千六百十六) (5认同)
  • 谢谢。-T 仅用于测试连接,因为它避免分配 tty? (2认同)