29 releases

0.7.1 Mar 26, 2024
0.6.1 Jan 15, 2023
0.6.0 Dec 21, 2022
0.5.1 Sep 22, 2022
0.1.0-beta1.3 May 24, 2020

#147 in Filesystem

Download history 5354/week @ 2023-12-29 7827/week @ 2024-01-05 7375/week @ 2024-01-12 7385/week @ 2024-01-19 6377/week @ 2024-01-26 968/week @ 2024-02-02 68/week @ 2024-02-09 389/week @ 2024-02-16 387/week @ 2024-02-23 203/week @ 2024-03-01 227/week @ 2024-03-08 142/week @ 2024-03-15 373/week @ 2024-03-22 197/week @ 2024-03-29 215/week @ 2024-04-05

974 downloads per month
Used in 3 crates

MIT license

320KB
7.5K SLoC

fuse3

an async version fuse library for rust

Cargo Documentation License

feature

  • support unprivileged mode by using fusermount3
  • support readdirplus to improve read dir performance
  • support posix file lock
  • support handles the O_TRUNC open flag
  • support async direct IO
  • support enable no_open and no_open_dir option

still not support

  • ioctl implement
  • fuseblk mode
  • macos support

unstable

  • poll
  • notify_reply

Supported Rust Versions

The minimum supported version is 1.75.

License

MIT


lib.rs:

FUSE user-space library async version implementation.

This is an improved rewrite of the FUSE user-space library to fully take advantage of Rust's architecture.

This library doesn't depend on libfuse, unless enable unprivileged feature, this feature will support mount the filesystem without root permission by using fusermount3 binary.

Features:

  • file-lock: enable POSIX file lock feature.
  • async-io-runtime: use async_io and async-global-executor to drive async io and task.
  • tokio-runtime: use tokio runtime to drive async io and task.
  • unprivileged: allow mount filesystem without root permission by using fusermount3.

Notes:

You must enable async-io-runtime or tokio-runtime feature.

Dependencies

~3–17MB
~206K SLoC