fusefs4
File system in userspace
Usage
To link into the kernel:
options FUSEFS
To load as a loadable kernel module:
kldload fusefs
Overview
The fusefs driver implements a file system that is serviced by a userspace program.
There are many uses for fusefs. Userspace daemons can access libraries or programming languages that cannot run in kernel-mode, for example. fusefs is also useful for developing and debugging file systems, because a crash of the daemon will not take down the entire operating system. Finally, the fusefs API is portable. Many daemons can run on multiple operating systems with minimal modifications.
Sysctl variables
The following sysctl(8) variables are available:
- vfs.fusefs.kernelabi_major
-
Major version of the FUSE kernel ABI supported by this driver.
- vfs.fusefs.kernelabi_minor
-
Minor version of the FUSE kernel ABI supported by this driver.
- vfs.fusefs.data_cache_mode
-
Controls how
fusefswill cache file data for pre-7.23 file systems. A value of 0 will disable caching entirely. Every data access will be forwarded to the daemon. A value of 1 will select write-through caching. Reads will be cached in the VFS layer as usual. Writes will be immediately forwarded to the daemon, and also added to the cache. A value of 2 will select write-back caching. Reads and writes will both be cached, and writes will occasionally be flushed to the daemon by the page daemon. Write-back caching is usually unsafe, especially for FUSE file systems that require network access.FUSE file systems using protocol 7.23 or later specify their cache behavior on a per-mountpoint basis, ignoring this sysctl.
- vfs.fusefs.stats.filehandle_count
-
Current number of open FUSE file handles.
- vfs.fusefs.stats.lookup_cache_hits
-
Total number of lookup cache hits.
- vfs.fusefs.stats.lookup_cache_misses
-
Total number of lookup cache misses.
- vfs.fusefs.stats.node_count
-
Current number of allocated FUSE vnodes.
- vfs.fusefs.stats.ticket_count
-
Current number of allocated FUSE tickets, which is roughly equal to the number of FUSE operations currently being processed by daemons.
Releases
Unchanged in 3 releases since FreeBSD 15.0-RELEASE.