GVfs

GVfs
Stable release
1.56.0[1] Edit this on Wikidata / 13 September 2024
Repository
Operating systemLinux
PlatformGNOME
Typeabstraction layer for the files system
LicenseLGPL-2.0-or-later
Websitewiki.gnome.org/Projects/gvfs Edit this on Wikidata

GVfs (abbreviation for GNOME virtual file system) is GNOME's userspace virtual filesystem designed to work with the I/O abstraction of GIO, a library available in GLib since version 2.15.1. It installs several modules that are automatically used by applications using the APIs of libgio. There is also FUSE support that allows applications not using GIO to access the GVfs filesystems.

A cause of confusion is the fact that the file system abstraction used by the Linux kernel is also called the virtual file system (VFS) layer. This is however at a lower level.

The GVfs model differs from e.g. GnomeVFS, which it replaces, in that file systems must be mounted before they are used. There is a master daemon (gvfsd) that handles coordinating mounts, and then each mount is (typically) in its own daemon process (although mounts can share daemon process).

GVfs comes with a set of back-ends, including trash support, SFTP, FTP, WebDAV, SMB, and local data via Udev integration, OBEX, MTP and others.[2] GVfs does not seem to support the Files transferred over shell protocol (FISH).

GVfs also contains modules for GIO that implement volume monitors and the GNOME URI scheme handler configuration.

There is a set of arguments to the command line program "gio" that lets you run commands (like cat, ls, stat, mount, etc.) on files in the GVfs mounts.

Attached resources are exposed via a URI syntax, for example smb://server01/gamedata or ftp://username:[email protected]/public_html, but are also mounted in the traditional manner under ~/.gvfs/ or /run/user/$UID/gvfs or $XDG_RUNTIME_DIR/gvfs directory[3][4] to make them available to applications using standard POSIX commands and I/O.

  1. ^ "Release 1.56.0". 13 September 2024. Retrieved 21 September 2024.
  2. ^ GNOME 2.22 Release Notes, 6.1: GVfs and GIO
  3. ^ "gvfsd-fuse.1 - manned.org". manned.org. Retrieved 18 April 2018.
  4. ^ "Nautilus' remote folder default mount point". askubuntu.com. Retrieved 18 April 2018.