Tmux 新会话返回:“无法创建套接字”

Tmux 新会话返回:“无法创建套接字”

我意外终止了一个byobu会话(kill -9 byobuSessionId),现在当我尝试启动另一个byobu命令时失败,并显示“无法创建套接字”。

tmux new-session返回:“无法创建套接字”

我尝试过sudo service screen-cleanup start但是没有成功!

知道如何解决吗?

答案1

如果你检查输出,问题可能是由死机的 tmux 进程引起的 strace -f -e trace=文件 tmu​​x命令。

你会看到 tmux 创建的套接字文件,在我的例子中,它位于 /tmp//tmux-1001/默认/

您只需删除该文件并再次运行屏风命令。

答案2

检查目录的权限/tmp/tmux*/。它们应该归您所有,并且其他任何人都无法访问。

因此将权限更改为:

chmod 700 -R /tmp/tmux*

重要的是,套接字目录归您所有,并且不是每个人都可以访问,否则任何用户都可能使用您的 tmux 服务器。有一段时间,tmux 错误地跳过了访问模式检查,这个问题在 2.0 中得到了修复。

如果您的系统不支持在 /tmp 中创建具有正确所有权的目录,则必须使用 -S 将其明确指向套接字。检查很重要,我们不支持没有 Unix 文件权限语义的系统。

答案3

我遇到了同样的问题,以下是我的解决方案:

  1. 新建一个文件夹:/tmp/$(id -u)
  2. 更改所有者:chown -R $(id -nu):$(id -nu) /tmp/$(id -u)
  3. 更改权限:chmod -R 700 /tmp/$(id -u)

有用!

答案4

在 Mac 上,这些命令可以达到这样的效果:

sudo rm -r '/tmp/tmux-'$(id -u)
sudo chmod -R 4777 /tmp/

相关内容