SSHFS - nhánh fork SSHFS hiện đang được duy trì
(github.com/deadbeefsociety)- SSHFS cho phép mount hệ thống tệp từ xa bằng SFTP, và vì phần lớn máy chủ SSH hỗ trợ/kích hoạt truy cập SFTP theo mặc định nên có thể dùng mà không cần thao tác gì ở phía máy chủ
- Nhánh fork bảo trì deadbeefsociety/sshfs đã được lưu trữ vì SSHFS không còn ở trạng thái bị bỏ mặc nữa; đối tượng cần sử dụng là libfuse/sshfs
- SSHFS có trong các bản phân phối Linux chính và đã có lịch sử được dùng trong production trên nhiều hệ thống trong thời gian dài, nhưng hiện không có cộng tác viên hoạt động thường xuyên và các vấn đề đã biết nằm trong bugtracker
- Người bảo trì hiện tại vẫn tiếp tục áp dụng pull request và phát hành định kỳ, nhưng ngoài việc xử lý các vấn đề tác động lớn thì không còn nhiều nguồn lực phát triển; các báo cáo lỗi không kèm pull request hoặc các vấn đề không nghiêm trọng có khả năng cao sẽ không nhận được phản hồi
- Cú pháp chạy cơ bản là
sshfs [user@]hostname:[directory] mountpoint; nên chạy bằng người dùng thông thường và mountpoint phải thuộc sở hữu của người dùng đó- Nếu bỏ qua tên người dùng thì sẽ dùng tên người dùng cục bộ
- Nếu bỏ qua thư mục thì sẽ mount thư mục home từ xa
- Nếu cần mật khẩu,
sshdo sshfs chạy sẽ yêu cầu nhập mật khẩu
- Có thể chỉ định nhiều tùy chọn ssh, bao gồm
-oport=PORT; để unmount, dùngfusermount -u mountpointtrên Linux vàumount mountpointtrên BSD và macOS - Để build cần libfuse 3.1.0 trở lên hoặc giao diện tương thích libfuse3, Glib có kèm header phát triển, Meson 0.38 trở lên và Ninja; để chạy test cần mô-đun Python
py.test
1 bình luận
Các ý kiến trên Hacker News
Nếu bạn muốn thứ hoạt động ở không gian người dùng và thấy Emacs ổn, có TRAMP “Transparent Remote (file) Access, Multiple Protocol”: https://www.gnu.org/software/tramp/
Tôi thường dùng nó khi truy cập tệp trên máy chủ từ MacBook Pro
cdvào một thư mục trên hệ thống từ xa, bạn có thểcptệp từ thư mục làm việc hiện tại sang máy cục bộ hoặc một máy từ xa khác, và ngược lại cũng có thể sao chép từ máy cục bộ vào thư mục làm việc từ xa hiện tạiTrước khi dùng TRAMP, tôi phải SSH vào máy từ xa, dùng
cdvàlsđể tìm vị trí cần sao chép, ngắt phiên SSH rồi chuyển tệp bằngscphoặcrsync, và thường lại phải SSH vào lần nữadired,eshell,magitThú vị thật. Tôi luôn nghĩ sshfs là một phần của OpenSSH, ngày nào cũng học được điều mới
sshfs dùng trong Slackware cũng có vẻ đang bị bỏ bê: https://github.com/libfuse/sshfs
Nhìn vào đoạn trích trong liên kết, tôi tự hỏi liệu dự án này có trở thành “người kế nhiệm” đó không
Nhân tiện, trên Mac tôi đã dùng macFUSE + sshfs trong nhiều năm, nhưng giờ chỉ cài và dùng công cụ Mountain Duck rất tuyệt. Có thể truy cập các endpoint SFTP qua Finder và điểm mount
Đây là phần mềm rất tốt và với tôi là thứ không thể thiếu
Vài tháng trước vì chuyện này mà tôi đã thử ExpanDrive/StrongSync, còn Mountain Duck thì lần này mới nghe tới. Tôi thích Cyberduck. Giờ tôi định dùng thử; nếu nó đang hoạt động tốt, mong bạn cập nhật trang đó cho những người khác. Ngoài ra thì tôi là một khách hàng hài lòng
Phần triển khai sshfs cũng có tại https://github.com/macos-fuse-t/fuse-t/wiki#sample-filesyste...
Trên macOS, Libfuse/SSHFS đã trở nên khá phiền để dùng từ vài năm trước, nên tôi cũng chuyển sang Mountain Duck
Thật tiếc khi sshfs không còn được bảo trì nữa. Hồi ở trường, tôi đã dùng sshfs để chỉnh sửa code bằng vô số plugin Vim của mình mà không phải cài toàn bộ plugin Vim lên máy chủ tính toán từ xa
Tôi ngạc nhiên vì hệ thống hoạt động mượt hơn mình tưởng rất nhiều
Tôi nghĩ SFTP là một giao thức tốt nhưng bị đánh giá thấp. Có những trường hợp mirror hai chiều hợp lý hơn việc sao chép cây tệp từ bên này sang bên kia
Sau khi fork và xem mã SSHFS, tôi đã tổng hợp và duy trì các tài liệu liên quan cùng suy nghĩ cá nhân tại https://hackmd.io/@q/sftp-over-ws
Cả máy chủ OpenSSH lẫn GNU lsh đều chỉ cung cấp phiên bản giao thức cũ. Có lẽ là v2. Việc giữ cũ này là lựa chọn có chủ đích: https://marc.info/?l=openssh-unix-dev&m=168488976013498&w=2
Tổ hợp công nghệ thì hơi khác, nhưng một thời gian nay tôi dùng NFS trên WireGuard và khá hài lòng
Nó cũng triển khai nhiều tính năng hệ thống tệp hơn, nên báo cáo
dfphản ánh chính xác dung lượng sử dụng của hệ thống tệp từ xaNgoài ra, NFSv4 cung cấp “delegations”, cho phép trao toàn quyền kiểm soát một tệp cho client dưới dạng một lease có thời hạn. Các client NFS hiện đại còn có “polite delegations”, ngầm gia hạn thời hạn lease
SSHFS rất tiện để mount kiểu “nhanh và tạm được” với cấu hình tối thiểu
Sau khi đồng bộ tệp bằng một tiện ích lưu trữ DVFS rất đơn giản, tôi không còn nhìn lại nữa. Tôi thích có nhiều bản sao ở khắp nơi
Hiện nay khi cần chức năng kiểu sshfs thì chủ yếu dùng rclone mount. Hiệu năng, độ ổn định và các tùy chọn cache tốt hơn
sshfs cũng có thể có cùng hạn chế
Đáng tiếc là fork này trông không hoạt động sôi nổi lắm. Commit cuối cùng là vào tháng 3, hoạt động PR và issue cũng hầu như không có
Tôi sẽ không đặt kỳ vọng vào đây
Nautilus, tức trình quản lý tệp của Ubuntu, hỗ trợ mount thư mục SFTP. Bên trong có vẻ dùng
gvfsVì SFTP dùng kết nối SSH để truyền tệp, nên so với SSHFS tôi không thấy khác biệt gì về UI
Tôi không nhớ rõ
Có ai từng dùng rclone hoặc sshfs cùng với macFUSE/osxfuse trên Mac OS X chưa?
Mỗi server có một script nhỏ. Ví dụ
mount_fooserver.sh:umount -f ~/mounts/fooserversshfs -o kill_on_unmount,reconnect,allow_other,defer_permissions,direct_io username@server:/ ~/mounts/fooserver -ovolname=fooQuá trình thiết lập khá giống một cuộc phiêu lưu, vài lần tôi tự hỏi liệu có đúng không, nhưng cứ làm tiếp thì cuối cùng chạy tốt