FreeBSD manual
download PDF document: fusefs.5.pdf
FUSEFS(5) FreeBSD File Formats Manual FUSEFS(5)
NAME
fusefs - File system in USErspace
SYNOPSIS
To link into the kernel:
options FUSEFS
To load as a loadable kernel module:
kldload fusefs
DESCRIPTION
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 fusefs will 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
SEE ALSO
mount_fusefs(8)
HISTORY
The fuse driver was written as the part of the FreeBSD implementation of
the FUSE userspace file system framework (see
https://github.com/libfuse/libfuse) and first appeared in the
sysutils/fusefs-kmod port, supporting FreeBSD 6.0. It was added to the
base system in FreeBSD 10.0, and renamed to fusefs for FreeBSD 12.1.
AUTHORS
The fuse driver was originally written by Csaba Henk as a Google Summer
of Code project in 2005. It was further developed by Ilya Putsikau
during Google Summer of Code 2011, and that version was integrated into
the base system by Attilio Rao <attilio@FreeBSD.org>.
This manual page was written by Alan Somers <asomers@FreeBSD.org>.
FreeBSD 14.2-RELEASE July 31, 2019 FreeBSD 14.2-RELEASE