我运行的关键应用程序在screen
下有很多输出。最终它阻塞了。调查表明,原因是screen
与unblock scrolling
一起使用Ctrl-A q
或其他技巧,同时阻止了该应用程序。有什么方法可以防止屏幕阻塞应用程序,无论它输出多少?
答案 0 :(得分:0)
这听起来很奇怪-对我来说,screen
(在不同的主机,不同的OS版本,不同的屏幕版本等上)永远不会阻止其应用程序,无论它们输出多少。最终,当回滚缓冲区已满时,旧行将被清除,但输出将继续显示。
如果您提到ctrl-a q
,或者看一下flow control settings,则可以使屏幕完全忽略XON / XOFF(ctrl-s
,ctrl-q
)... < / p>
编辑:关于您的评论,我确实相信您所描述的确实发生了。我只想指出,可能不是screen
造成的,或者可能是因为它与其他事物的怪异组合。我刚在while true ; do date ; done
中运行screen
-导致最大程度的垃圾邮件。到目前为止,已经编写了成千上万的行,并且没有任何阻塞。这是在screen
的未经修改的全新安装中进行的,默认安装是在相对较新的Debian 9.4安装中进行的。
我还尝试了您提到的命令(ssh -t user@host screen
),然后执行无穷循环,这也是正确的-长时间后没有阻塞。
请注意,ssh
在键盘(控制台)不活动时具有超时功能;也许那些罪魁祸首?