【发布时间】:2014-03-03 17:24:08
【问题描述】:
我使用 PuTTY 会话通过 TCP/IP 上的 SSH 与运行 QNX 6.4.1 的嵌入式设备通信。
今天,我的一个系统神秘地不允许我一次打开多个 PuTTY 会话。如果我尝试开始第二个会话,我可以使用用户名和密码进行身份验证,但是登录横幅会在每行之间打印出一个额外的空白行,并且会影响我按 Enter 的能力。除了 Control-C 或关闭 PuTTY 窗口之外,我无法执行任何看起来远程有效的操作。
我怀疑包含横幅的文本文件有坏行 结局,但它没有。
我怀疑终端设置有问题,但如果我有一个会话打开它 作品。没有更改设置,只是尝试打开第二个会话 没有。
我想知道
.profile是否被破坏了,但事实并非如此 似乎也是这样。现在我只能说“也许 ssh 搞砸了,重新启动会解决 吗?”但我很犹豫是否要重新启动它,因为如果我们丢失了 TCP/IP 连接到它,这是几个小时的工作(体力劳动) 恢复。
关于出了什么问题以及如何解决它有什么想法吗?
我正在使用 PuTTY 0.62 从 64 位 Windows 7 连接到 QNX 6.4.1。 openssh/openssl 版本是现代的。
更新
几天后问题又出现了。使用下面 Guntram Blohm 的建议,我至少能够通过“阅读横幅后按 Enter”屏幕。然后我按照他的建议运行stty sane ctrl-j。这是stty的输出:
在我运行 stty sane ctrl-j 之后很糟糕(并且手动将其重新格式化为可读)
Name: /dev/ttyp1
Type: pseudo
Opens: 3
+raw +echo
+osflow
intr=^C quit=^\ erase=^? kill=^U eof=^D start=^Q stop=^S susp=^Z
lnext=^V min=01 time=00 pr1=^[ pr2=5B left=44 right=43 up=41
down=42 ins=40 del=50 home=48 end=59
然后我在此之后立即打开了另一个 PuTTY 会话,它工作正常。这让我感到困惑,它有时是如何工作的,而对其他人却不起作用。怎么会这样?有什么不同?
好
Name: /dev/ttyp2
Type: pseudo
Opens: 2
+edit
+osflow
intr=^C quit=^\ erase=^? kill=^U eof=^D start=^Q stop=^S susp=^Z
lnext=^V min=01 time=00 pr1=^[ pr2=5B left=44 right=43 up=41
down=42 ins=40 del=50 home=48 end=59
所以现在我打开了一个好的 PuTTY 终端,一个坏的终端。我还能做些什么来隔离这个问题?
【问题讨论】:
-
您可以尝试在该终端窗口的命令提示符处输入
stty sane <ctrl-j>。您的终端设置(不是腻子设置,设备上终端驱动程序的设置!)似乎搞砸了;在这种情况下,回车键可能会被解释为\r而不是\n,但 ctrl-j 应该可以工作。 -
@GuntramBlohm 感谢您的提示。我不知道发生了什么变化,但是当我从实验室回来时,它又起作用了。我不喜欢在我不理解原因的情况下自行解决的问题。如果/当它再次发生时,我会尝试你的建议。谢谢!
-
@GuntramBlohm 问题又回来了。您的 control-j 提示非常棒。我跑了
stty sane ctrl-j,现在我可以真正使用我的回车键了。它不能解决所有问题,但它至少可以让我发挥作用。我仍然不知道事情是如何变得如此混乱的,但他们显然做到了。在我重新启动设备之前,我还能做些什么来诊断这个问题吗?