tmux đã chết và nói rằng không có phiên nào mà thôi - có cách nào để phục hồi không?


18

Điều này thật tệ

$ tmux attach-session
no sessions

Sysadmin của tôi đã nâng cấp tmux và bây giờ tôi không thể gắn lại. Quá trình của tôi vẫn đang chạy theo ps ux. Có bất kỳ hy vọng để phục hồi phiên của tôi?

Cập nhật : Có một ổ cắm /tmp/tmux-1234, vì vậy tôi đã thử tmux -L /tmp/tmux-1234/default attach, nhưng tmux không làm gì cả. Hoan hô.

Câu trả lời:


36

Cách nhanh nhất này để xác định xem bạn có thể phục hồi hay không là:

killall -10 tmux

Điều đó sẽ gửi tín hiệu để tạo lại tất cả các tệp ổ cắm cho bất kỳ quy trình tmux nào đang chạy. Nếu bạn không root, không có vấn đề gì, nó sẽ chỉ báo hiệu quá trình tmux của bạn.

Câu chuyện dài, nếu tmux không chạy (ps xu | grep tmux), bạn sẽ bị lừa :(


2
Điều này hoạt động, nhưng tôi đã nhầm lẫn về lý do tại sao nó hoạt động. Hóa ra tín hiệu 10 là tín hiệu do người dùng xác địnhtmux nói rằng nó sẽ "tạo lại ổ cắm máy chủ trên SIGUSR1" .
DaoWen

Vì nó có thể giúp những người khác: Tôi đã phải tìm ra PID của quy trình tmux đang chạy phiên bị mất của tôi và làm kill -10 "PID".
dùng35915

(1) Cảm ơn câu trả lời này, nó đã giúp tôi tiết kiệm rất nhiều công việc :) (2) Tôi nghĩ sẽ hữu ích khi đề cập đến những tin nhắn bạn nhận được khi một người dùng khác cũng đang chạy tmux, cụ thể là tmux(12345): Operation not permitted, được mong đợi.
David Z

@DaoWen theo tín hiệu man (7), giá trị tín hiệu 10 không tương ứng với SIGUSR1, vì vậy tất cả đều ổn
spinup

2

tmux không được đảm bảo để tương thích trên các bản cập nhật; yêu cầu sysadmin của bạn cho bạn biết trước khi thực hiện nâng cấp hoặc sử dụng bản sao bạn đã tạo tại địa phương mà anh ta ít gặp rắc rối hơn.

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.