在tmux中启动新 session 时,出现以下错误:
launch_msg("SetUserEnvironment"): Socket is not connected
launch_msg("SetUserEnvironment"): Socket is not connected
我的信息:
Tmux仍在启动,我没有遇到任何大问题,但是我希望对为什么会发生有一些了解。我听说安装tmux-MacOSX-pasteboard可以“修复”此消息,但是如果我不需要它的功能,则宁愿不安装包装器。
最佳答案
当其setenv
命令(显然)无法与launchd对话时,该错误消息来自launchctl。
tmux不会自动使用launchctl,因此您必须深入了解特定的配置才能找到launchctl用法的来源。我的猜测是您的 shell 初始化文件中有一个或多个launchctl setenv …
。
如果您不关心launchctl调用是否失败,则可以通过将stderr发送到/dev/null
来抑制错误消息:
launchctl setenv somevar somevalue 2>/dev/null
我从未听说过我的包装程序有此特定应用程序,但它确实可以解决问题(至少在10.6以下)。
如果您需要成功启动launchctl调用,那么您确实需要包装器的功能(这不仅用于粘贴板访问;它还可以帮助需要访问“每用户 bootstrap namespace ”中的服务的任何功能)。如果您不想“在包装器下”运行 shell 程序(如其README中所述),则可以仅在其下运行各个launchctl调用:
/path/to/reattach-to-user-namespace launchctl setenv somevar somevalue
看来可以通过MacPort和Homebrew轻松安装包装器:
port install tmux-pasteboard
(MacPorts)brew install reattach-to-user-namespace
(自制)关于macos - OS X Lion上的tmux "Socket is not connected"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10193561/