【问题标题】:Cannot detach screen session无法分离屏幕会话
【发布时间】:2009-02-10 00:29:43
【问题描述】:

我对屏幕很陌生,我点击的是 C-Something 而不是 C-a。现在我无法分离或执行任何其他命令。我可以做些什么来分离我的屏幕会话?

【问题讨论】:

    标签: linux gnu-screen


    【解决方案1】:

    如果一切都失败了,从另一个终端登录并输入:screen -raAdx。这会将您的屏幕重新连接为共享屏幕,并允许您将其分离。

    【讨论】:

    • 如果 screen -ls 将您的屏幕显示为已连接,但您没有终端,这将非常方便
    • 如果有人有两个附加的屏幕会话,[可能]一个在另一个中,我必须使用 screen -d -R <screen id> 来分离外部会话,否则内部会话是唯一的分离。
    • 黑魔法!这实际上奏效了。我遇到了 Ascherer 描述的奇怪问题,这解决了它。
    【解决方案2】:

    可能你得到了C-s(s 代表“停止”)尝试C-q 恢复...

    【讨论】:

      【解决方案3】:

      ctrl-a+d 分离

      如果您不需要屏幕上的信息,您可以简单地终止该进程。

      不确定是否有任何命令会导致屏幕无响应。

      【讨论】:

      • ^D (C-D) 不会终止屏幕!它可能会注销您的 shell 会话,从而关闭 shell 会话,从而关闭您的屏幕会话,但如果您运行多个窗口、前台应用程序和其他东西,情况就不会如此。
      【解决方案4】:

      我今天遇到了类似的问题。我正在通过 1MBps 的链接传输一个 100GB 的文件,当我的工作站崩溃时,传输已经进行到一半了。我恢复了 PuTTY 并进入了我的终端服务器,但分离/重新连接命令的组合都不起作用。我决定我会杀死屏幕,所以我检查了 ps 以获取 PID。当我查看 PS 输出时,我注意到我用来启动 Screen 的 BASH 会话仍在运行。一时兴起,我决定终止该会话而不是屏幕,认为“这应该就像关闭 PuTTY 窗口,它允许我重新附加。”果然,我能够成功运行“screen -dr”。

      【讨论】:

        【解决方案5】:

        您也可以只注销,通过终止终端会话,然后再次登录并重新连接 screen 会话。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-12-03
          • 2013-01-05
          • 1970-01-01
          • 1970-01-01
          • 2022-10-24
          • 2014-01-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多