Fuse2-2.9.9

#### Supplemental Linux® From Scratch - Version 13.0

### Chapter 2. General Libraries

- Prev

  enet-1.3.18

- Next

  Glaze-7.0.2

- Up
- Home

# Fuse2-2.9.9

## Introduction to Fuse2

FUSE, or Filesystem in Userspace, allows userspace programs to create virtual filesystems. This is a really helpful technology, and the current Fuse version is major version 3. Fuse2 on the otherhand is still used by AppImages which rely on this technology. You may extract AppImages as you wish which would bypass this requirement, but other people opt to just install Fuse2 and run the AppImages directly.

- Download: https://github.com/libfuse/libfuse/releases/download/fuse-2.9.9/fuse-2.9.9.tar.gz

### Additional Downloads

- Required patch: https://gitlab.archlinux.org/archlinux/packaging/packages/fuse2/-/raw/main/conditionally-define-closefrom.patch

## Kernel Configuration

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

    File systems --->
      <*/M> FUSE (Filesystem in Userspace) support                         [FUSE_FS]
      <*/M>   Character device in Userspace support                           [CUSE]

## Installation of Fuse2

First apply a patch to fix compatibility with glibc-2.34 and up and regenerate the `configure` script:

    patch -Np1 -i ../conditionally-define-closefrom.patch &&
    autoreconf -i -I/usr/share/gettext/m4

Install Fuse2 by running the following commands:

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

    make

Now, as the `root` user:

    make install &&

    rm -rf  /tmp/init.d &&

    install -vDm644 doc/{how-fuse-works,kernel.txt} \
            -t /usr/share/doc/fuse-2.9.9/

## Configuring Fuse2

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.
    #
    #user_allow_other
    EOF

## Contents

Installed Programs: fusermount, mount.fuse, and ulockmgr_server
Installed Libraries: libfuse and libulockmgr
Installed Directories: /usr/include/fuse and /usr/share/doc/fuse-2.9.9

### Short Descriptions

fusermount | is a suid root program to mount and unmount Fuse2 filesystems
mount.fuse | is the command mount calls to mount a Fuse2 filesystem
ulockmgr_server | is the Userspace Lock Manager Server for Fuse2 filesystems
`libfuse` | contains the Fuse2 API functions
`libulockmgr` | starts ulockmgr_server and helps with its execution

- Prev

  enet-1.3.18

- Next

  Glaze-7.0.2

- Up
- Home