一段时间以来,我一直在使用Byobu为我管理屏幕会话。但是,我遇到了一个奇怪的问题:会话不断锁定。锁定是指我无法输入任何内容,只有等到几个小按钮才可以解锁并完成之前输入的所有内容。
目前情况越来越糟。会话每分钟左右锁定一次。即使重新启动Putty,从“私钥认证”切换为“密码认证”,甚至更改了Putty安装,它仍然冻结。到了我将要登录且当前窗口被冻结的地步,但是我能够切换到另一个窗口,仅在几秒钟后就冻结了。
另一个新发展是,有时当我第一次登录Byobu时,甚至不会出现,它只会坐在“ Last login”行之后。有一次我遇到了一个WriteMessage: Broken pipe
错误,它在没有byobu的情况下跌落到普通的shell中。
奇怪的是,我打开的隧道仍在工作。我能够检查CPU图表,发现服务器没有承受任何负载,这意味着该会话不会冻结,因为它还有其他事情要做。
对于如何解决这个问题,有任何的建议吗?
它是否仅发生在来自特定客户端的特定服务器上,还是可以在多台计算机上重现?是否有客户端不会发生这种情况(在同一服务器上)?客户端和服务器之间的网络是什么样的?scp's文件有问题吗?会话是否在输入过程中锁定,或者仅在闲置了一段时间后才锁定?我想知道您是否遇到MTU问题或NAT损坏。
—
吉尔(Gilles)“所以,别再邪恶了”,
@在我的有限测试中,这不会影响Linux客户端,但会影响Windows客户端(仍在测试Ubuntu)。降级主要发生在安装了2个Putty的XP上。最近在使用SCP时,我遇到了一个问题,那就是在我完全禁用Byobu之前,我无法连接。但是,这只是一次。随着冻结时间的推移,它会随机锁定:在打字过程中或当我不理会它时(有时)。而且我只有一台CentOS服务器要测试,因此我不确定它是否会影响其他计算机。正如我所说,我仍在测试Byobu是否在Ubuntu中锁定。
—
TheLQ 2011年
您可以键入“ ctrl-a:重置”,还是冻结屏幕退出键?
—
barrycarter 2011年
@barry我从未尝试过
—
TheLQ 2011年
reset
,尽管我认为它不起作用,因为更改窗口也被冻结了。
由于在Byobu行动起来之后,您仍然可以在计算机上运行命令,因此下一次进行调查。运行
—
吉尔(Gilles)'所以
top
以查看是否占用了CPU时间。运行strace -p1234
(其中1234是screen
PID)以查看其运行情况,并对该SCREEN
过程进行同样的处理。您需要运行screen
的不是setuid或setgid,或者strace
以root身份运行。