我在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删除它,然后我可以重新连接,一切都工作了.
Log*_*tar 10
如果可以丢失会话,请尝试删除tmux-NNNNNNN目录下的目录,其中NNNNNNN是一个数字/tmp。根据tmux手册,如果TMPDIR设置了环境变量,tmux-NNNNNNN将放在TMPDIR.
tmux 将服务器套接字存储在 /tmp(或 TMPDIR,如果设置)下的目录中;
这解决了我无法运行tmux与会话相关的命令的问题。我也尝试了以下方法,但它们不起作用:
killall -9 tmuxtmux我无法轻松重新启动操作系统,因为它是由其他人管理的共享服务器。
tmux我刚开始就停止了。Ctrl-Q而且Ctrl-C什么也没做。
固定于
killall -9 tmux
Run Code Online (Sandbox Code Playgroud)
(可能是一个不同的问题,但是这个问题出现在Google中。)
我遇到过同样的问题。原因是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 帮助我解决这个问题!