diff options
author | Jinshan Xiong <[email protected]> | 2016-10-04 11:46:10 -0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2016-10-07 09:45:13 -0700 |
commit | 1de321e6260f5b83eb943b6ce2166a3879f42df4 (patch) | |
tree | 5af1627e1f4b9efc0bf67eff965d480e6d603396 /man/man8/zfs.8 | |
parent | af322debaa11b22c4fe7b6bc8941e562694eabb2 (diff) |
Add support for user/group dnode accounting & quota
This patch tracks dnode usage for each user/group in the
DMU_USER/GROUPUSED_OBJECT ZAPs. ZAP entries dedicated to dnode
accounting have the key prefixed with "obj-" followed by the UID/GID
in string format (as done for the block accounting).
A new SPA feature has been added for dnode accounting as well as
a new ZPL version. The SPA feature must be enabled in the pool
before upgrading the zfs filesystem. During the zfs version upgrade,
a "quotacheck" will be executed by marking all dnode as dirty.
ZoL-bug-id: https://github.com/zfsonlinux/zfs/issues/3500
Signed-off-by: Jinshan Xiong <[email protected]>
Signed-off-by: Johann Lombardi <[email protected]>
Diffstat (limited to 'man/man8/zfs.8')
-rw-r--r-- | man/man8/zfs.8 | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/man/man8/zfs.8 b/man/man8/zfs.8 index e543ba51d..d8c150629 100644 --- a/man/man8/zfs.8 +++ b/man/man8/zfs.8 @@ -663,6 +663,8 @@ The amount of space consumed by snapshots of this dataset. In particular, it is .sp .ne 2 .na +\fB\fBuserobjused@\fR\fIuser\fR\fR +.br \fB\fBuserused@\fR\fIuser\fR\fR .ad .sp .6 @@ -699,6 +701,11 @@ The \fBuserused@\fR... properties are not displayed by \fBzfs get all\fR. The us .RE Files created on Linux always have POSIX owners. +.RS 4n +The \fBuserobjused\fR is similar to \fBuserused\fR but instead it counts the number of objects consumed by \fIuser\fR. This feature doesn't count the internal objects used by ZFS, therefore it may under count a few objects comparing with the results of third-party tool such as \fBdfs -i\fR. +When the property \fBxattr=on\fR is set on a fileset, ZFS will create additional objects per-file to store extended attributes. These additional objects are reflected in the \fBuserobjused\fR value and are counted against the user's \fBuserobjquota\fR. When a filesystem is configured to use \fBxattr=sa\fR no additional internal objects are required. +.RE + .sp .ne 2 .na @@ -713,6 +720,8 @@ This property is set to the number of user holds on this snapshot. User holds ar .ne 2 .na \fB\fBgroupused@\fR\fIgroup\fR\fR +.br +\fB\fBgroupobjused@\fR\fIgroup\fR\fR .ad .sp .6 .RS 4n @@ -721,6 +730,11 @@ The amount of space consumed by the specified group in this dataset. Space is ch Unprivileged users can only access their own groups' space usage. The root user, or a user who has been granted the \fBgroupused\fR privilege with \fBzfs allow\fR, can access all groups' usage. .RE +.RS 4n +The \fBgroupobjused\fR is similar to \fBgroupused\fR but instead it counts the number of objects consumed by \fIgroup\fR. +When the property \fBxattr=on\fR is set on a fileset, ZFS will create additional objects per-file to store extended attributes. These additional objects are reflected in the \fBgroupobjused\fR value and are counted against the group's \fBgroupobjquota.\fR. When a filesystem is configured to use \fBxattr=sa\fR no additional internal objects are required. +.RE + .sp .ne 2 .na @@ -1081,6 +1095,8 @@ a zone. This feature must be enabled to be used (see \fBzpool-features\fR(5)). .ne 2 .na \fB\fBuserquota@\fR\fIuser\fR=\fBnone\fR | \fIsize\fR\fR +.br +\fB\fBuserobjquota@\fR\fIuser\fR=\fBnone\fR | \fIcount\fR\fR .ad .sp .6 .RS 4n @@ -1118,16 +1134,26 @@ This property is not available on volumes, on file systems before version 4, or .RE Files created on Linux always have POSIX owners. +.RS 4 +The \fBuserobjquota\fR is similar to \fBuserquota\fR but it limits the number of objects a \fIuser\fR can create. +Please refer to \fBuserobjused\fR for more information about how ZFS counts object usage. +.RE + .sp .ne 2 .na \fB\fBgroupquota@\fR\fIgroup\fR=\fBnone\fR\fR | \fIsize\fR +.br +\fB\fBgroupobjquota@\fR\fIgroup\fR=\fBnone\fR\fR | \fIcount\fR .ad .sp .6 .RS 4n Limits the amount of space consumed by the specified group. Group space consumption is identified by the \fBuserquota@\fR\fIuser\fR property. .sp Unprivileged users can access only their own groups' space usage. The root user, or a user who has been granted the \fBgroupquota\fR privilege with \fBzfs allow\fR, can get and set all groups' quotas. + +The \fBgroupobjquota\fR is similar to \fBgroupquota\fR but it limits that the \fIgroup\fR can consume \fIcount\fR number of objects at most. +Please refer to \fBuserobjused\fR for more information about how zfs counts object usage. .RE .sp @@ -2386,8 +2412,8 @@ Upgrades to the specified \fIversion\fR. If the \fB-V\fR flag is not specified, .sp .6 .RS 4n Displays space consumed by, and quotas on, each user in the specified -filesystem or snapshot. This corresponds to the \fBuserused@\fR\fIuser\fR and -\fBuserquota@\fR\fIuser\fR properties. +filesystem or snapshot. This corresponds to the \fBuserused@\fR\fIuser\fR, \fBuserobjused@\fR\fIuser\fR, +\fBuserquota@\fR\fIuser\fR, and \fBuserobjquota@\fR\fIuser\fR properties. .sp .ne 2 .na @@ -3141,10 +3167,14 @@ send subcommand share subcommand Allows sharing file systems over NFS or SMB protocols snapshot subcommand Must also have the 'mount' ability +groupobjquota other Allows accessing any groupobjquota@... property groupquota other Allows accessing any groupquota@... property +groupobjused other Allows reading any groupobjused@... property groupused other Allows reading any groupused@... property userprop other Allows changing any user property +userobjquota other Allows accessing any userobjquota@... property userquota other Allows accessing any userquota@... property +userobjused other Allows reading any userobjused@... property userused other Allows reading any userused@... property acltype property |