Introduction to Fuse

FUSE (Filesystem in Userspace) is a simple interface for userspace programs to export a virtual filesystem to the Linux kernel. Fuse also aims to provide a secure method for non privileged users to create and mount their own filesystem implementations.

This package is known to build and work properly using an LFS-7.9 platform.

Package Information

Fuse Dependencies


Doxygen-1.8.11 (to build the API documentation)

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/fuse

Kernel Configuration

Enable the following options in the kernel configuration and recompile the kernel if necessary:

File systems  --->
  <*/M> FUSE (Filesystem in Userspace) support [CONFIG_FUSE_FS]

Installation of Fuse



After the configure script has finished you will see a warning shown below. You can safely disregard this warning.

configure: WARNING:
* Please install util-linux version 2.18 or later which supports *
* --fake and --no-canonicalize options in mount and umount       *

Install Fuse by running the following commands:

sed -i 's/2:9:4/2:9:5/' lib/Makefile.in &&

./configure --prefix=/usr    \
            --disable-static \
            INIT_D_PATH=/tmp/init.d &&


If you have Doxygen-1.8.11 installed and wish to build the API documentation, issue doxygen doc/Doxyfile.

This package does not come with a test suite.

Now, as the root user:

make install &&

mv -v   /usr/lib/libfuse.so.* /lib &&
ln -sfv ../../lib/libfuse.so.2.9.5 /usr/lib/libfuse.so &&
rm -rf  /tmp/init.d &&

install -v -m755 -d /usr/share/doc/fuse-2.9.5 &&
install -v -m644    doc/{how-fuse-works,kernel.txt} \

If you built the API documentation, install it as the root user by issuing the following commands:

install -v -m755 -d /usr/share/doc/fuse-2.9.5/api &&
install -v -m644    doc/html/* \

Command Explanations

sed -i ... lib/Makefile.in This command fixes libfuse so version.

--disable-static: This switch prevents installation of static versions of the libraries.

INIT_D_PATH=/tmp/init.d: This parameter installs the bootscript into /tmp/init.d as a bootscript is not required.

mv -v /usr/lib/libfuse.so.* /lib: This moves the FUSE library to the root filesystem so that it is available early in the boot process in case /usr is mounted on a separate partition and ntfs-3g-2015.3.14 is built with a system-installed version of FUSE.

rm -rf /tmp/init.d: This removes the unneeded bootscript.

Configuring fuse

Config Files

Some options regarding mount policy can be set in the file /etc/fuse.conf. To install the file run the following command as the root user:

cat > /etc/fuse.conf << "EOF"
# Set the maximum number of FUSE mounts allowed to non-root users.
# The default is 1000.
#mount_max = 1000

# Allow non-root users to specify the 'allow_other' or 'allow_root'
# mount options.

Additional information about the meaning of the configuration options are found in the man page.


Installed Programs: fusermount, mount.fuse, and ulockmgr_server
Installed Libraries: libfuse.so and libulockmgr.so
Installed Directory: /usr/include/fuse and /usr/share/doc/fuse-2.9.5

Short Descriptions


is a set users ID root program to mount and unmount Fuse filesystems.


is the command mount would call to mount a Fuse filesystem.


is the Userspace Lock Manager Server for Fuse filesystems.


contains the FUSE API functions.


contains the Userspace Lock Manager API functions.

Last updated on 2016-02-21 19:34:40 -0800