将安全隧道分配为TTY但在后台

时间:2017-02-12 04:52:15

标签: ssh tty ssh-tunnel

要运行sudo我需要强制tty,但我不能在后台分配一个,除非我说-t -t。你有没有机会解释它的区别是什么?

#fails
ssh -t host1 'sudo command' &
ssh -t host2 'sudo command' &
wait

以上失败“失败,你必须运行tty”和

#works
ssh -t -t host1 'sudo command' &
ssh -t -t host2 'sudo command' &
wait

的作品?这是不是意味着tty内的tty?

1 个答案:

答案 0 :(得分:0)

ssh的手册页解释了:

  

-t   强制伪终端分配。这可用于在远程机器上执行任意基于屏幕的程序,这可能非常有用,例如,实现菜单服务时。 多个-t选项强制tty分配,即使ssh没有本地tty。

如果在后台运行该命令,则本地tty将不会保持与命令的连接,因此不会使用单个-t远程分配。另一方面,使用两个-tt将最终强制分配。