tmux quitte avec [sorti] sur mac os x

88

Je viens d'installer tmux (un multiplexeur de terminal) avec homebrew. Lorsque j'essaie de l'exécuter, il se ferme toujours sans que [exited]rien ne s'affiche.

Lorsque j'essaie de courir, tmux list-sessionj'obtiens une erreur:

Échec de la connexion au serveur: connexion refusée

J'ai essayé de courir tmux start-server, mais encore une fois rien ne se passe.

Que puis-je faire?

Stevens
la source
2
commencez à utiliser l'option -v pour augmenter la verbosité
Florenz Kley
3
Vérifiez votre default-commandet les default-shelloptions. Si tmux rencontre des difficultés pour exécuter votre commande (ou shell) par défaut, il répondra comme vous le décrivez. Pour un examen plus approfondi, vous pouvez utiliser quelque chose comme tmux new /bin/zshcommencer explicitement avec (par exemple) /bin/zshau lieu de compter sur default-commandou default-shell.
Chris Johnsen
3
tmux new /bin/zsha travaillé pour moi. Je vous remercie.
Stevens
Euh, ma suggestion était conçue comme une étape de diagnostic et non comme une solution de contournement finale. Il y a probablement quelque chose qui cloche chez vous default-shellou dans votre default-commandenvironnement.
Chris Johnsen
J'ai récemment constaté (pour la première fois) que si 1) .tmux.conf existait mais que la syntaxe était erronée ou 2) .tmux.conf est un lien symbolique qui ne mène à rien, tmux ne s'ouvre pas. Il peut être intéressant d’essayer d’abord avec le fichier de configuration par défaut afin de mv $HOME/.tmux.conf $HOME/.tmux.conf.backupvoir d’abord si tmux démarre. @ChrisJohnsen a raison, votre solution signifie simplement qu'il y a un bug qui se prépare.
scicalculator

Réponses:

178

J'ai eu le même problème. Cela a été provoqué par le fait d'avoir set-option -g default-command "reattach-to-user-namespace -l zsh"dans mon .tmux.confsans avoir installé un espace de nommage attachez-en-utilisateur .

Le correctif consistait à installer "l'espace de nommage" en rattachant l'utilisateur "via Homebrew ( brew install reattach-to-user-namespace)

Robenkleene
la source
2
Grand merci! Exactement ce qui manquait sur mon système pour le faire fonctionner!
DannyRe
1
+1Merci beaucoup! J'ai eu exactement le même problème. Connaissez-vous un moyen de définir des options de manière conditionnelle afin d'éviter toute défaillance d'un système non reattach-to-user-namespaceinstallé?
Patrick Oscity
2
@padde Voir cette solution .
jrhorn424
Une idée de comment réaliser cela dans Ubuntu? J'ai essayé de chercher un moyen de télécharger reattach-to-user-namespacemais mes efforts ont été vains.
DaMainBoss
@DaMainBoss reattach-to-user-namespaceest réservé à tmux. Si vous êtes sur Ubuntu, commentez cette ligne à partir de votre fichier
.tmux.conf
6

Assurez-vous que l' option default-shell contient uniquement le chemin de l'exécutable et non les options.

Dans /etc/tmux.confou~/.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 "screen-256color"
AskApache
la source
Cette réponse m'a conduit à la vraie raison, je venais de désinstaller tcsh, et mon shell et ma commande par défaut étaient toujours configurés. Le changer pour / bin / ksh, ou un shell installé par défaut de votre choix, le corrigea pour moi.
Jason Robinson
0

Si vous utilisez un script pour boucler reattach-to-user-namespace, comme indiqué par jimeh , n'oubliez pas de rendre le script exécutable avec chmod +x ~/bin/login-shell.

jrhorn424
la source