为什么 ssh 实用程序被视为 pty?

Arc*_*ing 1 ssh tty terminology console pty

我读过这里ssh被认为是一个PTY。为什么?如果我ssh在控制台中运行命令(比如在 Debian 服务器中),这里的“pty”方面从何而来ssh?对我来说,这就像我在使用任何其他实用程序,如catsed,那么这里的“pty”方面从何而来?

screen或者tmux使用这个术语似乎更合理(尽管我认为它很不常见,这些应该被命名为“多路复用器”)。

jdw*_*olf 5

ssh是客户端并通过本地机器上 tty 的标准输出与您的 tty 通信。在远程机器上,登录时sshd会创建一个 pty 。

sshd 然后执行你的 shell,将它连接到它的 pty,这样信息就不会显示在远程机器上,而是通过 ssh 转发到本地机器。

shell 连接到 pty,就像本地使用的 tty 一样,但发送到 pty 的信息不会打印到本地屏幕,而是定向到 sshd,然后将其发送到连接的 ssh 客户端,这使 sshd 成为伪终端。