Questão tmux sai com [exited] no mac os x


Acabei de instalar tmux (um multiplexador terminal) com homebrew. Quando eu tento executá-lo, sempre sai com [exited] Nada aparece.

Quando tento correr tmux list-session Eu recebo um erro:

Falha ao conectar-se ao servidor: Conexão recusada

Eu tentei correr tmux start-server, mas novamente nada acontece.

O que eu posso fazer?


80


origem


comece a usar a opção -v para aumentar a verbosidade - Florenz Kley
Verifique seu default-command e default-shell opções. E se tmux está tendo problemas para executar seu comando padrão (ou shell) ele responderá como você está descrevendo. Para uma investigação mais aprofundada, você pode usar algo como tmux new /bin/zsh para começar explicitamente com (por exemplo) /bin/zsh em vez de confiar em default-command ou default-shell. - Chris Johnsen
tmux new /bin/zsh trabalhou para mim. Obrigado. - Stevens
Er, minha sugestão foi feita como uma etapa de diagnóstico, não uma solução final. Há provavelmente algo buggy sobre o seu default-shell ou default-command configuração. - Chris Johnsen
Eu encontrei recentemente (pela primeira vez) que, se 1) .tmux.conf existe, mas tem erros de sintaxe ou 2) .tmux.conf é um link simbólico que liga para nada, o tmux não abre. Pode ser bom tentar primeiro com o arquivo de configuração padrão, então primeiro mv $HOME/.tmux.conf $HOME/.tmux.conf.backup e veja se o tmux começa. A @ChrisJohnsen está certa, sua solução significa simplesmente que existe um bug em andamento. - scicalculator


Respostas:


Eu tenho esse mesmo problema. Foi causado por ter set-option -g default-command "reattach-to-user-namespace -l zsh" no meu .tmux.conf sem ter reconecte-para-usuário-namespace instalado.

A solução era instalar o "reanexar-para-usuário-namespace" via Homebrew (brew install reattach-to-user-namespace)


169



ótimo thx! Exatamente o que faltava no meu sistema para que funcionasse! - DannyRe
+1 Obrigado uma tonelada! Eu tive exatamente o mesmo problema. Você conhece alguma maneira de definir as opções condicionalmente para não falhar em um sistema que não tem reattach-to-user-namespace instalado? - Patrick Oscity
@padde Veja esta solução. - jrhorn424
Alguma idéia de como conseguir isso no Ubuntu? Tentei procurar uma maneira de baixar reattach-to-user-namespace mas meus esforços eram fúteis. - DaMainBoss
@ DaMainBoss reattach-to-user-namespace é apenas para o tmux. Se você está no Ubuntu basta comentar essa linha do seu arquivo .tmux.conf - pho79


Certifique-se de que o shell padrão opção contém apenas o caminho do executável e não contém opções.

Dentro /etc/tmux.conf ou ~/.tmux.conf

set-option -g default-shell "/ bin / bash"
set-option -g default-command "bash -l"
set-option -g default-path $ HOME
set-option -g default-terminal "tela-256 cores"

6



Essa resposta me levou à verdadeira razão, eu tinha acabado de desinstalar o tcsh, e meu shell padrão e o comando padrão ainda estavam configurados para ele. Mudando para / bin / ksh, ou um shell instalado padrão de sua escolha, corrigiu para mim. - Jason Robinson


Se você estiver usando um script para embrulhar reattach-to-user-namespace, conforme descrito por jimeh, não esqueça de tornar o script executável com chmod +x ~/bin/login-shell.


0