GlusterFS(8)

πŸ“¦
version 11.2 Β· 3 versions
, in debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’… GlusterFS(8) β€” the mount.glusterfs glow-up

okay bestie, pull up a chair, we're doing the GlusterFS(8) page from Red Hat, Inc. and it's lowkey a whole vibe. this is mount.glusterfs, the script that mounts a native GlusterFS volume. let's get into it 🫢


✨ NAME ✨

mount.glusterfs β€” the little script that mounts your native GlusterFS volume. that's it, that's the job. πŸ‘‘


🌸 SYNOPSIS 🌸

mount -t glusterfs [-o <options>] <volumeserver>:/<volume>[/<subdir>]
<mountpoint>

mount -t glusterfs [-o <options>] <server1>,<server2>,
       <server3>,..<serverN>:/<volname>[/<subdir>] <mount_point>

mount -t glusterfs [-o <options>] <path/to/volumefile> <mountpoint>

three ways to do the thing. pick your fighter. ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

so this tool is part of the glusterfs(8) package, and it's the one that does the mounting using the GlusterFS native binary. periodt.

mount.glusterfs is meant to be called by the mount(8) command to mount the native GlusterFS client. but here's the tea: this subcommand can also be run as a standalone command β€” just with limited functionality. so it's giving "I can do it alone, but I shine in a group." πŸ’…


πŸŽ€ OPTIONS πŸŽ€

πŸ’– Basic options πŸ’–

  • log-file=LOG-FILE β€” the file where your logging goes. [default: /var/log/glusterfs/glusterfs.log]
  • log-level=LOG-LEVEL β€” how loud do you want the logging to be? valid options are TRACE, DEBUG, WARNING, ERROR, CRITICAL INFO and NONE. [default: INFO]
  • acl β€” mount the filesystem with POSIX ACL support 🫢
  • fopen-keep-cache[=BOOL] β€” do not purge the cache on file open. (default: false)
  • worm β€” mount the filesystem in 'worm' mode πŸͺ±
  • aux-gfid-mount β€” enables access to the filesystem through gfid directly
  • ro β€” mount the filesystem read-only, no writing bestie
  • enable-ino32=BOOL β€” use 32-bit inodes when mounting, as a workaround for broken apps that can't handle 64-bit inodes 😭
  • mem-accounting β€” enable internal memory accounting
  • capability β€” enable file capability setting and retrival
  • thin-client β€” enables thin mount and connects via the gfproxyd daemon
  • localtime-logging β€” use local timestamps instead of UTC in your mount log entries

πŸ”₯ Advanced options πŸ”₯

  • attribute-timeout=SECONDS β€” set the attribute timeout to SECONDS for inodes in the fuse kernel module. [default: 1]
  • entry-timeout=SECONDS β€” set the entry timeout to SECONDS in the fuse kernel module. [default: 1]
  • background-qlen=N β€” set the fuse module's background queue length to N. [default: 64]
  • gid-timeout=SECONDS β€” set the auxiliary group list timeout to SECONDS for the fuse translator. [default: 0]
  • negative-timeout=SECONDS β€” set the negative timeout to SECONDS in the fuse kernel module. [default: 0]
  • volume-name=VOLUME-NAME β€” the volume name to be used for MOUNT-POINT. [default: top most volume in VOLUME-FILE]
  • direct-io-mode=BOOL|auto β€” specify the fuse direct I/O strategy. [default: auto]
  • congestion-threshold=N β€” set the fuse module's congestion threshold to N. [default: 48]
  • ubdir-mount=N β€” set the subdirectory mount option. [default: NULL, ie, no subdirectory mount]
  • backup-volfile-servers=SERVERLIST β€” provide a list of backup volfile servers in the format below. [default: None] ⚠️ if you use an IPv6 address in SERVERLIST, you have to wrap that IPv6 address in '[' and ']'.
$ mount -t glusterfs -obackup-volfile-servers=<server2>:
       <server3>:...:<serverN> <server1>:/<volname> <mount_point>
$ mount -t glusterfs -obackup-volfile-servers=<[ipv6_addr2]>:
       <[ipv6_addr3]>:...:<[ipv6_addrN]> <ipv6_addr1>:/<volname>
<mount_point>
  • backupvolfile-server=SERVER β€” provide a list of backup volfile servers in the format below. [default: None]
$ mount -t glusterfs -obackupvolfile-server=<server2>
        <server1>:/<volname> <mount_point>
  • fetch-attempts=N β€” 🚨 deprecated option β€” it's just chilling here for backward compatibility. [default: 1]
  • lru-limit=N β€” set the fuse module's limit for the number of inodes kept in the LRU list to N. [default: 65536]
  • inode-table-size=N β€” set the inode hash table size to N β€” this must be a power of 2 greater than or equal to 65536, and it'll get rounded up if it's not. [default: 65536]
  • invalidate-limit=N β€” suspend fuse invalidations implied by 'lru-limit' if the number of outstanding invalidations reaches N
  • background-qlen=N β€” set the fuse module's background queue length to N. [default: 64]
  • no-root-squash=BOOL β€” disable root squashing for the trusted client. [default: off]
  • root-squash=BOOL β€” enable root squashing for the trusted client. [default: on]
  • use-readdirp=BOOL β€” use readdirp() mode in the fuse kernel module. [default: on]
  • dump-fuse=PATH β€” dump fuse traffic to PATH
  • kernel-writeback-cache=BOOL β€” enable fuse in-kernel writeback cache. [default: off]
  • attr-times-granularity=NS β€” declare the supported granularity of file attributes. [default: 0]
  • auto-invalidation=BOOL β€” controls whether fuse-kernel can auto-invalidate attribute, dentry and page-cache. 🚨 only disable this if the same files/directories are not accessed across two different mounts concurrently. [default: on]

🧚 FILES 🧚

  • /etc/fstab β€” a typical GlusterFS entry in /etc/fstab looks like this:
server1:/mirror  /mnt/mirror  glusterfs log-
file=/var/log/mirror.log,acl   0  0
  • /proc/mounts β€” and an example entry of a GlusterFS mountpoint in /proc/mounts looks like this:
server1:/mirror /mnt/glusterfs fuse.glusterfs
rw,allow_other,default_permissions,max_read=131072 0 0

πŸ‘‘ SEE ALSO πŸ‘‘

glusterfs(8), mount(8), gluster(8)

go read those too, iykyk πŸ’œ


Copyright(c) 2006-2013 Red Hat, Inc. <http://www.redhat.com>


okay that's the whole page bestie, you ate that. πŸ’…βœ¨

and for the cute sign-off: this little masterpiece comes from Red Hat, Inc., it's the Cluster Filesystem manual, and the page is dated 14 September 2013. no cap, that's the whole footer, we're done here πŸŽ€πŸ¦‹πŸ’–

πŸ“¦ where this page comes from