Làm thế nào để tránh sshfs đóng băng?


23

Vì vậy, vấn đề là đây:

Tôi đã cài đặt sshfs trên Ubuntu 12.04 và tôi đang cố gắng kết nối với một vài máy chủ từ xa. Vì vậy, ban đầu gắn kết có vẻ thành công. Đôi khi Gnome thậm chí nhặt nó lên và hiển thị hộp "tìm thấy thiết bị mới" ở cuối màn hình. nhưng từ đây trở đi không có nhiều hoạt động. Hoặc ít nhất là không còn nữa. Một vài lần đầu tiên tôi kết nối có vẻ hoạt động tốt và tôi đã có thể chuyển một số tệp, sau đó tôi ngắt kết nối bằng cách sử dụng fusermount -u <folder>và sau khi kết nối lại một chút sau đó, sự cố bắt đầu. Bây giờ sau khi thực thi sshfs -o ServerAliveInterval=15 -o reconnect -C -o workaround=all -o idmap=user root@<host>:/ <folder>, khi tôi thay đổi thư mục vào điểm gắn kết, trình bao chỉ đóng băng. Kỳ lạ ls -al <folder>hoạt động khi liệt kê chỉ là root của hệ thống từ xa, nhưng không có gì hơn. Ngoài ra, mọi trình thám hiểm tệp tôi đã thử đóng băng giống như cd <folder>.

Đối với tôi có vẻ như có một loại sợi zombie hoặc thứ gì đó treo trên hệ thống của tôi, do thực tế là nó đã hoạt động lần đầu tiên, vì vậy tôi đã thử khởi động lại nhưng không gặp may.

sshfs -V đưa ra điều này:

SSHFS version 2.3
FUSE library version: 2.8.6
fusermount version: 2.8.6
using FUSE kernel interface version 7.12

Vậy có, ý tưởng nào không?

Câu trả lời:


17

Nếu bạn đã bắt đầu sshfs với -o reconnect, việc giết quá trình SSH bị treo sẽ khiến nó kết nối lại.

Trước tiên, tìm SSH phù hợp, ví dụ:

ps -ef
...
user 9644 1 0 11:15 ? 00:00:00 ssh -x -a -oClearAllForwardings=yes -2 <host> -s sftp
...

Bạn có thể phân biệt nó bằng bộ tùy chọn đặc biệt và máy chủ bạn đang kết nối sshfs với. Sau đó, giết nó, SIGTERM thường xuyên là đủ:

kill 9644

Điều này sẽ làm cho SSHFS bắt đầu một phiên SSH mới và hệ thống tệp được gắn sẽ trở lại phản hồi và tất cả các quy trình treo trên đó sẽ tiếp tục như không có gì xảy ra.


FYI: Giải pháp này có vẻ rất hữu ích để cải thiện sự mạnh mẽ của các kết nối sshfs của chúng tôi ở vị trí đầu tiên: askubfox.com/a/716618/327339 . Đồng thời xem # 11 trong Câu hỏi thường gặp tại đây: github.com/libfuse/sshfs/blob/master/FAQ
Gabriel Staples

1

Đã bao lâu bạn chờ đợi sự đóng băng để giải quyết? Nó có thể chỉ là vấn đề truyền tải giữa bạn và máy chủ được đề cập.

Tôi sử dụng sshfs giữa hệ thống của tôi và một người bạn sống ở boonies (thuật ngữ chính thức!), Anh ấy ở trên mạng không dây đôi khi bị rơi ra (chúng tôi nghĩ rằng máy thu của anh ấy đang vẫy trong gió, mất khóa tín hiệu).

Nếu tôi chờ đợi, cuối cùng nó sẽ đồng bộ hóa và thực hiện mọi thứ, nhưng đôi khi nó sẽ chỉ bị treo trong vài phút.

Kiên nhẫn Grasshopper!


2
Tôi đã cố đợi một chút, có thể 10-20 phút, nhưng không gặp may. Có lẽ nó chỉ cần một vài giờ? ^^,
Andreas Hagen

Ai đó sẽ không hy vọng !! Bạn có thể thử đăng nhập bằng sshfs -d' or sshfs -o LogLevel = Debug` (hoặc 'Debug2') để bật chế độ dài dòng ... xem có gì được chiếu sáng không.
lornix

0

Đây là một bài viết cũ và tôi không đưa ra một giải pháp tối ưu cho vấn đề này, nhưng tôi nghĩ rằng tôi đã gặp vấn đề tương tự (trên Ubuntu 14.04) và trong trường hợp của tôi, lười biếng không đếm được và làm lại các tác phẩm (mặc dù nó hơi khó chịu):

fusermount -u -z /local/folder
sshfs -C user@server:/remote/folder /local/folder

Tôi nghi ngờ bạn chỉ nhìn vào kết quả lưu trữ với ls -al <folder>.

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.