【问题标题】:How do you detach a remote screen session in byobu (tmux)?如何在 byobu (tmux) 中分离远程屏幕会话?
【发布时间】:2013-01-24 02:07:56
【问题描述】:

我目前正在一个 byobu-tmux 会话中,并且正在 ssh'ed 到一个屏幕会话中。如何在不分离 byobu-tmux 会话的情况下分离远程屏幕会话?有些事情需要注意,我无法运行 byobu-config,因为我在 osx 上并且没有安装 python-newt(w/snack)。而且,我已经在 Emacs 模式下运行了 byobu-ctrl-a,但这似乎不允许我从远程屏幕会话中退出。

【问题讨论】:

    标签: tmux gnu-screen byobu


    【解决方案1】:

    使用 tmux 命令很容易:

    byobu-tmux detach
    byobu-tmux
    

    甚至只是:

    byobu detach
    byobu
    

    【讨论】:

    • 我有一个远程用户连接到我必须分离的屏幕;这成功了,但如果 byubu 将窗口限制为比终端的宽度更窄,您可能必须多次发出命令和/或调整窗口大小。
    • 在一种情况下,这样的事情通过 ssh 为我完成了:$ byobu detach; byobu detach
    【解决方案2】:

    您应该能够使用 Ctrl-a 进行双重转义。

    要向内部 byobu-screen 会话发送分离消息,请按:

    Ctrl-a Ctrl-a d

    完全披露:我是Byobu 的作者和维护者。

    【讨论】:

    • 我试过了,但第二次按Ctrl-a 时,我在本地 byobu 会话中移动到 0 窗口。如何在远程屏幕会话中进行任何操作?
    • Ctrl+a Ctrl+a 只是在最后两个窗口之间切换。什么是双重转义,你是怎么做的?仅按 Ctrl+a 不会执行此操作。 Ctrl+a、Ctrl+a、d 只会将字母“d”发送到终端。
    • 'Ctrl+a a' 发送 ctrl+a
    • 如果我在设置 byobu 时禁用了 ctrl+a 会怎样?
    • 所以如果有人像我一样困惑,Ctrl + a 然后 d 为我工作。
    【解决方案3】:

    尝试在第一个a之后放开ctrl,所以顺序是ctrl-a,a,d。人屏:

    C-a C-a (other) 切换到显示的窗口 之前。请注意,这 绑定默认为键入两次的命令字符,除非 被覆盖。例如,如果您使用选项“-e]x”,这 命令变为“]]”。

    C-a a (meta) 发送命令字符 (C-a) 到 窗户。见逃逸com- 要求。

    或者,如果您使用 tmux 而不是屏幕的 Byobu,请尝试 ctrl-a d。 Byobu 的默认前缀键是 ctrl-b,所以如果您使用该默认值,请将 ctrl-a kbd> 不需要按键。

    来源:https://askubuntu.com/a/309215/106100

    【讨论】:

    • 非常好的提示,对我有用,而所有其他建议都失败了
    【解决方案4】:

    我可以通过列出当前客户端中的所有客户端来做到这一点:

    $ byobu list-clients
    /dev/pts/67: 1 [80x24 xterm] (utf8) 
    /dev/pts/70: 1 [157x48 xterm-256color] (utf8) 
    

    然后分离远程客户端(根据屏幕大小确定):

    $ byobu detach -t /dev/pts/67
    

    现在我可以使用完整的窗口大小

    【讨论】:

    【解决方案5】:

    也许与 tmux 无关,但对于 byobu,我发现以下命令非常有帮助:分离除当前会话之外的所有会话:

    /usr/lib/byobu/include/tmux-detach-all-but-current-client

    希望对你有帮助

    【讨论】:

    【解决方案6】:

    如果本地会话的前缀与远程会话冲突,您需要切换它。例如,如果两者都使用 CTRL+A 那么你就有麻烦了。您可以发送一个原始命令(有一个序列,但我不记得了),或者走简单的路线并将您的本地会话重新映射到 Ctrl+B,然后您可以输入 Ctrl+A 将被路由到远程会话。也与 tmux 无关,但 ssh 连接本身您可以输入“~”。它将与 ssh 会话断开连接。希望对您有所帮助。

    【讨论】:

    • 不确定是否有办法切换当前本地会话的前缀,我通过关闭本地会话解决了这个问题,通过运行 byobu-ctrl-a 切换配置,然后开始一个新的byobu 会议
    【解决方案7】:

    十年来,我一直是 Linux 上 byobu 的狂热用户。在这些年的大部分时间里,我一直在努力在 OSX 上配置 byobu 的 brew 安装,我终于设法以一种迂回的方式设置了我的 byobu 配置。首先我执行了这个:

    echo '/usr/local/lib/python2.7/site-packages' | sudo tee /Library/Python/2.7/site-packages/homebrew.pth
    

    然后我运行 byobu 配置文件:

    byobu-config
    

    我终于清理干净了

    sudo rm /Library/Python/2.7/site-packages/homebrew.pth
    

    Python 在此过程中崩溃并出现了一些弹出窗口,但是,byobu 现在可以正常工作了。当我想再次更改配置时,我确实需要重复这些步骤......仍在寻找更清洁的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-07
      • 2012-03-16
      • 2010-12-03
      • 2013-01-05
      • 2014-01-15
      相关资源
      最近更新 更多