Cygwin tmux: “falha ao conectar ao servidor: sem erro”

7

Assim como o título diz, sempre que eu tento iniciar o tmux no Cygwin 64-bit (Win7), com algum ou nenhum argumento além de --help , recebo o seguinte erro:

$ tmux
failed to connect to server: No error

Não consigo reproduzir isso no Linux. Qualquer ajuda seria muito apreciada.

Obrigado!

    
por kevlar1818 30.05.2014 / 04:41

5 respostas

6

Isso funciona para mim também no Win7 de 32 bits. Mas eu preciso apagar o diretório toda vez antes de iniciar o tmux, então eu acabei de adicionar um alias para .bashrc.

alias tmux='rm -rf /tmp/tmux* && tmux'
    
por 30.05.2014 / 13:30
4

O método de alias sugerido pelo bender não funciona realmente se você está tentando reconectar, porque ele mata a (s) sessão (ões) existente (s). O seguinte parece ter resolvido o problema para mim:

  1. Salve o script Perl no link para "~ / bin / tmux" ou em outro lugar no caminho, à frente de / usr / bin.

  2. Conceda permissões de execução: "chmod + x ~ / bin / tmux".

  3. Saia e reabra o Cygwin.

  4. Execute comandos do tmux normalmente.

Isso funciona porque detecta o estado em que o tmux foi fechado completamente, mas não removeu seu diretório temporário, que ele resolve removendo o diretório temporário (como sugerido pelo bender), mas depois executa o comando desejado.

    
por 01.06.2014 / 01:02
2

experimente o comando strace -f -o strace.out tmux new e, em seguida, verifique o arquivo strace.out por possíveis razões. Eu tive o mesmo erro e excluí a pasta / tmp / tmux-XXXXX que tinha permissões incorretas.

    
por 30.05.2014 / 09:01
2

Muitas das soluções para apenas remover os arquivos tmux em / tmp irão quebrar a reconexão em uma sessão separada se o tmux estiver realmente funcionando.

Esta solução é semelhante à solução perl, pois possui alguns protetores antes de remover o material em / tmp, mas é implementada no bash.

Adicione isto ao seu ~ / .bashrc

tmux() {
  local tmux_cmd
  if ! tmux_cmd=$(which tmux); then
    echo "error: tmux not installed" >&2
    return 1
  fi
  if ! $tmux_cmd ls > /dev/null 2>&1; then
    # tmux ls returned error, so lets try cleaning up /tmp
    /bin/rm -rf /tmp/tmux*
  fi
  $tmux_cmd "$@"
}
    
por 29.06.2014 / 21:28
-1

apenas remova a pasta / tmp / tmux- * na inicialização:

cat rm -r / tmp / tmux- * > > ~ / .bashrc

    
por 13.06.2014 / 10:55

Tags