stdin: is not a TTY
我可以看到,关于机器之间 SSH 终端连接的错误消息,已经提出并回答了几个问题。但是,我正在使用X2goserver
客户端将基于 Fedora 22 的客户端连接到服务器(当前测试 Ubuntu 14.04,但也使用过其他版本),并且在连接后看到相同的错误。
我查看了 SSH 配置文件并进行了与 TTY 和交互式控制台相关的更改,这些更改看起来可能对这种情况有所帮助,但事实并非如此。我现在也向开发团队提出了一个错误x2go
,并在 Ubuntu 论坛上提问,但到目前为止还没有得到回复。
我认为 X2go 的目的是确保传递正确的参数,以确保创建一个会话,该会话提供为远程计算机打开 GUI 的适当功能,所以我认为这可能是 X2go 的一个错误 - 但是,没有其他人抱怨同样的问题让我有不同的想法。
作为参考,我在基于 OpenVZ 的远程服务器上使用模板,并且X2go
在 Fedora 20 和 XFCE 上运行得很好 - 但我现在需要升级,因为 Fedora 20 不再受支持。
谢谢
答案1
我昨天和今天早上也有过这个。我发现了问题。
作为会话建立的一部分,x2go
似乎在实际呈现会话之前执行.bashrc
并完成。.bash_profile
我发现它.bash_profile
正在执行mesg y
以及另一个尝试使用从tty
变量返回的值(即TTY=`tty`
)的 shell 脚本。由于这些语句不是从终端内执行的,因此它们失败了。解决方案是将它们放入测试中,如下所示:
if `tty -s`
then
mesg y
TTY=`tty`
else`
TTY='not a tty'
fi
这修复了我无法连接到的所有网站。我怀疑最近的变化可能使这一点成为焦点,因为自从我上次成功连接x2go
以来这些网站没有发生变化。x2go