Bug 1285126 - GlusterFS NFS does not implement an all_squash volume setting
GlusterFS NFS does not implement an all_squash volume setting
Status: NEW
Product: GlusterFS
Classification: Community
Component: protocol (Show other bugs)
All All
unspecified Severity unspecified
: ---
: ---
Assigned To: bugs@gluster.org
: FutureFeature, Triaged
Depends On:
  Show dependency treegraph
Reported: 2015-11-24 18:52 EST by Earl Ruby
Modified: 2016-10-13 00:04 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Earl Ruby 2015-11-24 18:52:01 EST
Description of problem:

all_squash is a standard NFS volume export option that sets all incoming request UIDs to anonuid and all GIDs to anongid. root_squash is a standard NFS volume export option that sets incoming requests from root to anonuid and anongid. GlusterFS implements volume settings for anonuid (server.anonuid), anongid (server.anongid), and root_squash (server.root-squash), but does not implement all_squash (should be server.all-squash).

This option was requested in https://bugzilla.redhat.com/show_bug.cgi?id=1043886 but that part of the request was overlooked.

Version-Release number of selected component (if applicable): 3.7.6

How reproducible: always

Steps to Reproduce:
1. gluster volume set volume1 server.all-squash on

Actual results:
volume set: failed: option : server.all-squash does not exist
Did you mean server.root-squash?

Expected results:
volume set: success

Additional info:
Comment 1 Niels de Vos 2015-11-26 10:10:35 EST
Advanced configuration options for uid/gid squashing is available through NFS-Ganesha. Only very little work is put into Gluster/NFS, NFS-Ganesha will become the preferred NFS-server in the future. If you rely on this functionality, you probably should give NFS-Ganesha with FSAL_GLUSTER a try.


The server.*-squash options are not NFS specific, they are usable for FUSE mounts and libgfapi access as well.

It probably makes sense to provide a server.all-squash option that makes all access to the volume done through the anonymous user/group (anonuid/anongid). However, the server.root-squash is volume wide option, and can only be turned on/off. It might be more useful to have a server.all-squash option that checks for the IP-address instead of an all-or-nothing switch.

Earl, could you explain a little about the expected feature and config options that you would like to see?
Comment 2 Earl Ruby 2016-10-13 00:04:54 EDT
The request was to implement all_squash, anonuid and anongid. The example given in https://bugzilla.redhat.com/show_bug.cgi?id=1043886 was the export line:

/home/joe       pc001(rw,all_squash,anonuid=150,anongid=100)

... which will map all incoming user requests to UID 150, GID 100.

glusterfs-3.6.1 implements root_squash, anonuid and anongid.

root_squash maps UID 0 / GID 0 requests to anonuid / anongid.

all_squash should map ALL UIDs to anonuid and ALL GIDs to anongid.

Note You need to log in before you can comment on or make changes to this bug.