-
Bắt đầu hướng dẫn viết hệ thống tệp FUSE bằng Python
- Sau cuộc trò chuyện với Eeveelweezel tại DebConf22, tác giả được mời chuẩn bị một buổi trình bày cho Chicago Python User Group.
- Dù không thường xuyên dùng Python, tác giả vẫn giảng dạy bằng một ngôn ngữ mà sinh viên có thể dễ dàng hiểu được.
- Tác giả đang sử dụng một hệ thống tệp đơn giản tên là FIUnamFS cho dự án môn học, và khuyến khích sinh viên dùng FUSE để cung cấp một giao diện trong suốt.
-
Khó khăn khi triển khai hệ thống tệp FUSE
- Việc xây dựng hệ thống tệp dựa trên FUSE trong Python không hề dễ dàng.
- Có nhiều ví dụ và trang web liên quan, nhưng phần lớn đã cũ và khó làm theo.
- Trong Python có nhiều giao diện khác nhau như python-fuse, Pyfuse và Fusepy.
-
Bắt đầu dự án GitLab
- Tác giả đã tạo một dự án trên GitLab để cung cấp hướng dẫn viết hệ thống tệp dựa trên FUSE bằng Python.
- Dự án bổ sung theo từng bước nhiều phần việc, bao gồm cả triển khai hệ thống tệp dựa trên RAM và hệ thống tệp passthrough.
- Để sinh viên có thể học qua các ví dụ thú vị và hữu ích, tác giả thêm các ý tưởng như hệ thống tệp DNS, hệ thống tệp biên dịch Markdown theo thời gian thực, hệ thống tệp giải nén và hệ thống tệp loại bỏ chú thích.
-
Kế hoạch trình bày và giảng dạy
- Tác giả dự kiến sẽ trình bày tại ChiPy, đồng thời cũng sẽ trình bày tại Jornadas Regionales de Software Libre ở Santa Fe, Argentina và tại nerdear.la ở Mexico City.
- Tác giả có kế hoạch chia sẻ dự án này với sinh viên và khơi gợi sự quan tâm của họ đối với việc triển khai FUSE trong Python.
-
Tổng kết của GN⁺
- Bài viết này cung cấp thông tin hữu ích cho những ai quan tâm đến việc triển khai hệ thống tệp FUSE bằng Python.
- Nhờ nhiều ví dụ đa dạng và hướng dẫn từng bước, nội dung này giúp sinh viên dễ học hơn.
- Nỗ lực giải quyết những khó khăn trong việc triển khai FUSE là điểm nổi bật, và ý định đóng góp cho cộng đồng Python được đánh giá tích cực.
- Các dự án có chức năng tương tự gồm có Dokan và WinFsp.
1 bình luận
Ý kiến Hacker News
Trong GitHub của libfuse có những ví dụ hay cho thấy độ phức tạp ngày càng tăng của C/C++
passthrough.cphản chiếu hệ thống tệp hiện có nhưng hiệu năng không tốtpassthrough_fh.ccó hiệu năng nhỉnh hơn một chútpassthrough_ll.cđược triển khai bằng API cấp thấp nên là bản tốt nhất trong ba bảnpassthrough_hp.cclà phiên bản hiệu năng cao được viết bằng C++Ngoài FUSE ra, cũng có thể triển khai hệ thống tệp ảo thông qua giao thức 9p
py9ptốt hơnfuse-pythondiod 9pĐã bắt đầu một dự án dùng FUSE để biến Jira thành một hệ thống tệp
issue-type-with-summaryNhững ai quan tâm đến FUSE có thể cũng sẽ quan tâm đến dự án CUSE
Có nhiều tùy chọn mount FUSE khác nhau, và JuiceFS khá thú vị trong việc mount object storage thành hệ thống tệp POSIX
Gần đây ngày càng có nhiều người triển khai hệ thống tệp dựa trên NFS
rclonehỗ trợ việc nàyazuline/rosélà một trình quản lý nhạc có hệ thống tệp ảo, cung cấp codebase tốt để học hỏiDùng FUSE để Makefile có thể chỉ định DAG cho các tài nguyên tùy ý
Đã tạo một hệ thống tệp FUSE bằng Python để tương tác với dokuwiki
easyfuseđể triển khai API cấp thấp không liên quan đến dokuwikiĐã viết một dự án nhỏ dùng FUSE để phơi bày kho lưu trữ git
.git, mọi commit và branch đều được phơi bày thành thư mục riêng