tmux thoát với [thoát] trên mac os x


88

Tôi vừa cài đặt tmux (một bộ ghép kênh đầu cuối) với homebrew. Khi tôi cố chạy nó, nó luôn thoát với [exited]Không có gì xuất hiện.

Khi tôi cố chạy tmux list-sessiontôi gặp lỗi:

không thể kết nối với máy chủ: Kết nối bị từ chối

Tôi đã thử chạy tmux start-server, nhưng một lần nữa không có gì xảy ra.

Tôi có thể làm gì?


2
bắt đầu sử dụng tùy chọn -v để tăng mức độ chi tiết
Florenz Kley

3
Kiểm tra default-commanddefault-shellcác tùy chọn của bạn . Nếu tmux gặp sự cố khi chạy lệnh (hoặc shell) mặc định của bạn, nó sẽ phản hồi như bạn đang mô tả. Để điều tra thêm, bạn có thể sử dụng làm một cái gì đó như tmux new /bin/zshđể bắt đầu rõ ràng với (ví dụ) /bin/zshthay vì dựa vào default-commandhoặc default-shell.
Chris Johnsen

3
tmux new /bin/zshđã làm cho tôi. Cảm ơn bạn.
Stevens

Er, đề nghị của tôi có nghĩa là một bước chẩn đoán, không phải là một cách giải quyết cuối cùng. Có lẽ có một cái gì đó lỗi về default-shellhoặc default-commandthiết lập của bạn .
Chris Johnsen

Gần đây tôi đã tìm thấy (lần đầu tiên) rằng nếu 1) .tmux.conf tồn tại nhưng có lỗi cú pháp hoặc 2) .tmux.conf là một liên kết tượng trưng liên kết đến không có gì, tmux sẽ không mở. Có thể tốt để thử lúc đầu với tệp cấu hình mặc định trước tiên mv $HOME/.tmux.conf $HOME/.tmux.conf.backupvà xem tmux có bắt đầu không. @ChrisJohnsen đã đúng, giải pháp của bạn chỉ đơn giản là có lỗi.
scicalculator

Câu trả lời:


178

Tôi có vấn đề này như nhau. Điều này được gây ra bởi việc set-option -g default-command "reattach-to-user-namespace -l zsh"tôi .tmux.confđã cài đặt không gian tên reattach-to-user-user .

Cách khắc phục là cài đặt "không gian tên reattach-to-user" thông qua Homebrew ( brew install reattach-to-user-namespace)


2
tuyệt vời Chính xác những gì còn thiếu trên hệ thống của tôi để làm cho nó hoạt động!
DannyRe

1
+1Cảm ơn rất nhiều! Tôi đã có chính xác cùng một vấn đề. Bạn có biết cách nào để đặt tùy chọn một cách có điều kiện để nó không bị lỗi trên hệ thống chưa reattach-to-user-namespacecài đặt không?
Patrick Oscarity

2
@padde Xem giải pháp này .
jrhorn424

Bất kỳ ý tưởng làm thế nào để đạt được điều này trong Ubuntu? Đã thử tìm cách tải xuống reattach-to-user-namespacenhưng những nỗ lực của tôi là vô ích.
DaMainBoss

@DaMainBoss reattach-to-user-namespacechỉ dành cho tmux. Nếu bạn đang sử dụng Ubuntu, hãy bình luận dòng đó từ tệp .tmux.conf của bạn
pho79

6

Đảm bảo rằng tùy chọn shell mặc định chỉ chứa đường dẫn thực thi và không chứa tùy chọn.

Trong /etc/tmux.confhoặc~/.tmux.conf

set-tùy chọn -g default-shell "/ bin / bash"
set-tùy chọn -g mặc định-lệnh "bash -l"
set-tùy chọn -g đường dẫn mặc định $ HOME
set-option -g default-terminal "screen-256color"

Câu trả lời này dẫn tôi đến lý do thực sự, tôi vừa gỡ cài đặt tcsh, và lệnh mặc định và lệnh mặc định của tôi vẫn được đặt thành nó. Thay đổi nó thành / bin / ksh hoặc shell được cài đặt mặc định theo lựa chọn của bạn, đã sửa nó cho tôi.
Jason Robinson

0

Nếu bạn đang sử dụng tập lệnh để bọc reattach-to-user-namespace, như được phác thảo bởi jimeh , đừng quên làm cho tập lệnh có thể thực thi được chmod +x ~/bin/login-shell.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.