tmux:挂起并且不加载,并且不响应任何选项命令

mem*_*imo 28 linux tmux

我在Fedora的本地空间上安装了源代码的tmux.到目前为止它工作得很好.但突然无法再运行了,当运行tmux时,它就停止了.尝试了不同的命令选项,如ls-sessions,无效.杀死了我的用户的所有进程,删除了tmux的所有文件libevnet,并从头开始重新安装它们.仍然相同,终端中的tmux命令只是冻结而没有任何实际错误.

Has*_*ken 44

我已经遇到这个问题很长一段时间了,经过一番搜索后我发现这是因为我意外地点击了Ctrl+ S(Ctrl+ A+ S是我切换窗格的快捷方式),这关闭了终端的流控制并停止了终端接受输入.可以通过按Ctrl+ 重新启用它Q.

资料来源: https ://superuser.com/a/553349/137226


dsu*_*rsl 29

有一个类似的问题,我有一个带有两个缓冲区的tmux会话.我没有看到任何我输入的内容,但是当我在缓冲区之间切换时,之前键入的内容将显示在屏幕上.stty sane没用.

我分开了Ctrl-b+ d,并注意到我看到时还有一个客户端tmux list-clients.tmux detach-client删除它,然后我可以重新连接,一切都工作了.

  • 哇!这解决了我经常遇到的问题...谢谢 (2认同)

Log*_*tar 10

如果可以丢失会话,请尝试删除tmux-NNNNNNN目录下的目录,其中NNNNNNN是一个数字/tmp。根据tmux手册,如果TMPDIR设置了环境变量,tmux-NNNNNNN将放在TMPDIR.

tmux 将服务器套接字存储在 /tmp(或 TMPDIR,如果设置)下的目录中;

这解决了我无法运行tmux与会话相关的命令的问题。我也尝试了以下方法,但它们不起作用:

  • killall -9 tmux
  • 重新安装 tmux
  • 重新启动外壳会话

我无法轻松重新启动操作系统,因为它是由其他人管理的共享服务器。


fif*_*nce 6

tmux我刚开始就停止了。Ctrl-Q而且Ctrl-C什么也没做。

固定于

killall -9 tmux
Run Code Online (Sandbox Code Playgroud)

(可能是一个不同的问题,但是这个问题出现在Google中。)


Rea*_*aas 6

我遇到过同样的问题。原因是tmux缓冲区已满,也可能是由于tmux会话中有多个客户端而发生。

要解决它,您需要从会话中分离所有客户端,然后重新附加它。

我发现解决它的最好方法是将~/.bashrc这个函数添加到文件中:

check_params() {
       if [[ $1 < $2 ]]; then
               echo -e "Usage:\n${3}"
               ok=0
       else
               ok=1
       fi

}

# detach all the clients from this session, and attach to it.
reattach_client() {
       check_params $# 1 "reattach_client <tmux_session_name>"
       if [[ $ok == 1 ]]; then
               tmux list-client | grep $1 | awk '{split($1, s, ":"); print s[1]}' | xargs tmux detach-client -t | true
               tmux attach -t $1
       fi
}
Run Code Online (Sandbox Code Playgroud)

然后运行source ~/.bashrc以在终端中进行这些更改。

现在附加会话类型:

reattach_client <session_name>
Run Code Online (Sandbox Code Playgroud)

解决了我的问题。

感谢 Alex Zelichenko 帮助我解决这个问题!


mem*_*imo 3

谢谢。我发现了问题。tmux进程处于D状态,我只好重启系统。问题来自于 kerberos 票证在一段时间后过期。并找到解决此问题的脚本: https: //iain.cx/src/ktmux/