如果 SSH 未连接,则 GNU 屏幕冻结会话

Posted

技术标签:

【中文标题】如果 SSH 未连接,则 GNU 屏幕冻结会话【英文标题】:GNU screen freeze session if SSH is not connected 【发布时间】:2017-01-03 17:28:00 【问题描述】:

我有一个专用服务器 (Inmotion),它通过 screen 会话运行 Java XMPP 服务器 以使其保持活动状态。有时,在很长一段时间后,这个 Java XMPP 服务器的执行会冻结,然后当我连接到 SSH 并重新连接 screen 会话以查看问题所在时,执行会自行解冻并执行所有待处理的内容(发送待处理的消息、查询到数据库等),然后它会恢复正常运行。

请注意,我什么都不做,我只是连接到 SSH 并重新附加 screen 会话以读取输出。

这种情况发生的时间是可变的,有时是几小时,有时是几天后。

我可以做些什么来避免这种行为?

【问题讨论】:

【参考方案1】:

我发现,如果我的一个屏幕中有一个 ssh 会话,并且该 ssh 会话被中断,它会冻结所有屏幕(无论它们是否正在 ssh)。为了摆脱这种情况,如果我导航到冻结的 ssh 屏幕,并发出以下序列来中断 ssh 会话,它将解冻所有屏幕会话:

<Enter> ~ .

【讨论】:

以上是关于如果 SSH 未连接,则 GNU 屏幕冻结会话的主要内容,如果未能解决你的问题,请参考以下文章

text 冻结的ssh会话断开连接

在屏幕会话中访问 SSH 客户端 IP 地址

保持SSH会话活动[关闭]

持久登录到 Unix 机器

在会话iphone中存储用户名和密码

如果背景音频处于活动状态,MPMoviePlayerController 将冻结