Bài viết này sẽ giới thiệu về File System và Một Số FUSE File System Thông Dụng. Nếu bạn cần hỗ trợ, xin vui lòng liên hệ VinaHost qua Hotline 1900 6046 ext.3, email về support@vinahost.vn hoặc chat với VinaHost qua livechat https://livechat.vinahost.vn/chat.php.
1. File system in user space
Thông thường các file system được định nghĩa và hoạt động trên kernel interface,
Trong một vài trường hợp, người phát triển hệ thống cần tạo ra các file system riêng nhằm phục vụ một số yêu cầu xác định mà các file system mặc định chưa thể hỗ trợ như truy cập và sử dụng data từ một remote file system qua giao thức bảo mật như ssh hoặc sftp, hoặc truy cập và sử dụng data từ một file nén tar mà không cần giải nén.
Để định nghĩa được một file system mới trên kernel space sẽ tốn rất nhiều thời gian, công sức ngoài ra còn có thể gây lỗi phía kernel space làm hỏng toàn bộ hệ thống.
Do vậy người ta cho phép thiết kế file system trên user space FUSE (File System in USErspace) để dễ dàng triển khai và xử lý lỗi trong quá trình thử nghiệm.
2. Cách thức hoạt động FUSE
- Để triển khai một file system mới, cần phải viết một chương trình xử lý liên kết với thư viện libfuse. Chương trình này chỉ ra cho hệ thống biết phải xử các yêu cầu read/write/stat trên file system mới này như thế nào.
- Chương trình này cũng dùng để mount file system mới này. Khi file system được mount, trình xử lý đăng ký (registered) với kernel. Các thao tác read/write/stat thực hiện trên thư mục mount này sẽ được kernel gửi đến trình xử lý và trả về kết quả cho người dùng.
- FUSE thường rất hữu dụng trong việc ghi trên virtual file systems (VFS). VFS không thực sự lưu trữ dữ liệu, mà hoạt động như một trung gian để hiển thị hoặc biên dịch cho file system có sẵn hoặc thiết bị lưu trữ.
3. Một số FUSE file system thông dụng
Hiện nay theo nhu cầu sử dụng, các nhà phát triển đã thiết kế nên nhiều loại file system FUSE khác nhau cho nhiều mục đích riêng biệt.
Dưới đây là một số FUSE file system được sử dụng phổ biến:
- SSHFS: file system người dùng có thể mount và tương tác với thư mục từ máy chủ từ xa thông qua giao thức ssh.
- GmailFS: file system được viết để sử dụng Google email storage như một file system. Các file được lưu trữ như một attachment của email trên Google email storage thông qua giao thức IMAP
- EncFS: file system tự động mã hóa cho linux. Dữ liệu khi được ghi vào file system này sẽ tự động được mã hóa.
- archivemount: file system hỗ trợ mount các file nén như tar (.tar), gziped tar (.tar.gz) thành một file system trên hệ thống. Giúp người dùng tương tác với dữ liệu trong file nén mà không cần giải nén.
- MountableHDFS: file system hỗ trợ mount Hadoop file system (HDFS) và tương tác với dữ liệu bên trong.
- s3fs: file system hỗ trợ mount S3 bucket như một file system trên hệ thống.
Chúc bạn thực hiện thành công!
THAM KHẢO CÁC DỊCH VỤ TẠI VINAHOST
>> SERVER – COLOCATION – CDN
>> HOSTING
>> WEBSITE
>> TÊN MIỀN