LinuxCommandLibrary

gvfsd-fuse

Mount remote filesystems for GNOME

SYNOPSIS

gvfsd-fuse MOUNTPOINT [FUSE options]

PARAMETERS

-h, --help
    Print help information and exit

-V, --version
    Print version information and exit

-f, --foreground
    Run in foreground; do not daemonize (logs to stderr)

-r, --replace
    Replace any existing gvfsd-fuse instance

FUSE options
    All standard FUSE/fusermount options accepted (e.g., -o allow_other, -o nonempty)

DESCRIPTION

gvfsd-fuse is the userspace filesystem daemon providing FUSE (Filesystem in Userspace) support for GVFS, the GNOME Virtual File System. GVFS enables uniform access to diverse storage backends including remote protocols like FTP, SFTP, SMB/CIFS, WebDAV, NFS, as well as special locations such as Trash, Recent Files, and bookmarks, all via intuitive URIs (e.g., smb://server/share).

Through FUSE, gvfsd-fuse exposes these virtual filesystems as a regular directory hierarchy, typically mounted at $XDG_RUNTIME_DIR/gvfs (modern) or legacy $HOME/.gvfs. Subdirectories within this mountpoint correspond to individual GVFS volumes, allowing seamless integration with traditional Unix tools and apps lacking native GVFS/gio support.

The daemon proxies I/O requests via D-Bus to specialized gvfsd backends (e.g., gvfsd-smb, gvfsd-gphoto2). It is automatically launched by the GVFS manager during desktop sessions (e.g., GNOME) or on-demand via gio mount. Manual starts handle the FUSE mountpoint and kernel communication.

Key benefits include permission-respecting access (user-owned mounts) and kernel-level caching. However, it relies on the FUSE kernel module and can introduce latency for remote operations.

CAVEATS

Requires FUSE kernel module (modprobe fuse).
Manual invocation discouraged; prefer gio mount.
Remote mounts risk hangs/timeouts; use fusermount -u MOUNTPOINT to unmount.
~/.gvfs legacy path is insecure (world-readable).

DEFAULT MOUNT POINT

$XDG_RUNTIME_DIR/gvfs (e.g., /run/user/1000/gvfs).
Legacy: $HOME/.gvfs. Auto-created on first use.

MANAGEMENT

Controlled by master gvfsd via D-Bus.
Check status: gvfs-mounts; list: ls $XDG_RUNTIME_DIR/gvfs.

HISTORY

Introduced in GVFS 1.2 (2009) as part of GNOME 2.28 evolution. Matured with FUSE 2.x/3.x support; runtime dir migration in GVFS 1.20+ (2013).

SEE ALSO

gvfsd(1), gio(1), fusermount(1), mount.fuse(8)

Copied to clipboard