tmux keluar dengan [keluar] di mac os x

88

Saya baru saja menginstal tmux (terminal multiplexer) dengan homebrew. Ketika saya mencoba menjalankannya, selalu keluar dengan [exited]Tidak ada yang muncul.

Ketika saya mencoba menjalankan tmux list-sessionsaya mendapatkan kesalahan:

gagal terhubung ke server: Koneksi ditolak

Saya mencoba berlari tmux start-server, tetapi sekali lagi tidak ada yang terjadi.

Apa yang dapat saya?

Stevens
sumber
2
mulai menggunakan opsi -v untuk meningkatkan verbositas
Florenz Kley
3
Periksa opsi default-commanddan Anda default-shell. Jika tmux mengalami kesulitan menjalankan perintah default Anda (atau shell) itu akan merespon seperti yang Anda gambarkan. Untuk penyelidikan lebih lanjut, Anda dapat menggunakan melakukan sesuatu seperti tmux new /bin/zshuntuk secara eksplisit memulai dengan (misalnya) /bin/zshalih-alih mengandalkan default-commandatau default-shell.
Chris Johnsen
3
tmux new /bin/zshbekerja untukku. Terima kasih.
Stevens
Eh, saran saya dimaksudkan sebagai langkah diagnostik, bukan penyelesaian akhir. Mungkin ada sesuatu kereta sekitar Anda default-shellatau default-commandpengaturan.
Chris Johnsen
Saya baru-baru ini menemukan (untuk pertama kalinya) bahwa jika 1) .tmux.conf ada tetapi memiliki kesalahan sintaks atau 2) .tmux.conf adalah tautan simbolis yang terhubung dengan ketiadaan, tmux tidak akan terbuka. Mungkin baik untuk mencoba terlebih dahulu dengan file konfigurasi default jadi pertama mv $HOME/.tmux.conf $HOME/.tmux.conf.backupdan lihat apakah tmux dimulai. @ ChrisJohnsen benar, solusi Anda berarti ada bug yang sedang terjadi.
scicalculator

Jawaban:

178

Saya punya masalah yang sama. Itu disebabkan oleh memiliki set-option -g default-command "reattach-to-user-namespace -l zsh"di saya .tmux.conftanpa memasang kembali-ke-pengguna-namespace diinstal.

Cara mengatasinya adalah menginstal "reattach-to-user-namespace" melalui Homebrew ( brew install reattach-to-user-namespace)

robenkleene
sumber
2
terima kasih bagus Persis apa yang hilang pada sistem saya untuk membuatnya bekerja!
DannyRe
1
+1Terima kasih banyak! Saya memiliki masalah yang persis sama. Apakah Anda tahu cara mengatur opsi secara kondisional sehingga tidak akan gagal pada sistem yang tidak reattach-to-user-namespacediinstal?
Patrick Oscity
2
@padde Lihat solusi ini .
jrhorn424
Adakah cara untuk mencapai ini di Ubuntu? Sudah mencoba mencari cara untuk mengunduh reattach-to-user-namespacetetapi usaha saya sia-sia.
DaMainBoss
@DaMainBoss reattach-to-user-namespacehanya untuk tmux. Jika Anda berada di ubuntu, cukup komentari baris itu dari file .tmux.conf Anda
pho79
6

Pastikan opsi default-shell hanya berisi path yang dapat dieksekusi dan tidak mengandung opsi.

Di /etc/tmux.confatau~/.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 terminal default "screen-256color"
AskApache
sumber
Jawaban ini membawa saya ke alasan sebenarnya, saya baru saja menghapus tcsh, dan shell default dan perintah default saya masih diatur untuk itu. Mengubahnya ke / bin / ksh, atau shell yang diinstal default pilihan Anda, memperbaikinya untuk saya.
Jason Robinson
0

Jika Anda menggunakan skrip untuk membungkus reattach-to-user-namespace, seperti yang dijelaskan oleh jimeh , jangan lupa untuk membuat skrip tersebut dapat dieksekusi chmod +x ~/bin/login-shell.

jrhorn424
sumber