xref: /freebsd-src/sys/contrib/openzfs/man/man8/zfs-allow.8 (revision bb2d13b686e3ccf6c3ccb36209dfb7dcc108b182)
1eda14cbcSMatt Macy.\"
2eda14cbcSMatt Macy.\" CDDL HEADER START
3eda14cbcSMatt Macy.\"
4eda14cbcSMatt Macy.\" The contents of this file are subject to the terms of the
5eda14cbcSMatt Macy.\" Common Development and Distribution License (the "License").
6eda14cbcSMatt Macy.\" You may not use this file except in compliance with the License.
7eda14cbcSMatt Macy.\"
8eda14cbcSMatt Macy.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*271171e0SMartin Matuska.\" or https://opensource.org/licenses/CDDL-1.0.
10eda14cbcSMatt Macy.\" See the License for the specific language governing permissions
11eda14cbcSMatt Macy.\" and limitations under the License.
12eda14cbcSMatt Macy.\"
13eda14cbcSMatt Macy.\" When distributing Covered Code, include this CDDL HEADER in each
14eda14cbcSMatt Macy.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15eda14cbcSMatt Macy.\" If applicable, add the following below this CDDL HEADER, with the
16eda14cbcSMatt Macy.\" fields enclosed by brackets "[]" replaced with your own identifying
17eda14cbcSMatt Macy.\" information: Portions Copyright [yyyy] [name of copyright owner]
18eda14cbcSMatt Macy.\"
19eda14cbcSMatt Macy.\" CDDL HEADER END
20eda14cbcSMatt Macy.\"
21eda14cbcSMatt Macy.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
22eda14cbcSMatt Macy.\" Copyright 2011 Joshua M. Clulow <josh@sysmgr.org>
23eda14cbcSMatt Macy.\" Copyright (c) 2011, 2019 by Delphix. All rights reserved.
24eda14cbcSMatt Macy.\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
25eda14cbcSMatt Macy.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
26eda14cbcSMatt Macy.\" Copyright (c) 2014 by Adam Stevko. All rights reserved.
27eda14cbcSMatt Macy.\" Copyright (c) 2014 Integros [integros.com]
28eda14cbcSMatt Macy.\" Copyright 2019 Richard Laager. All rights reserved.
29eda14cbcSMatt Macy.\" Copyright 2018 Nexenta Systems, Inc.
30eda14cbcSMatt Macy.\" Copyright 2019 Joyent, Inc.
31eda14cbcSMatt Macy.\"
32da5137abSMartin Matuska.Dd March 16, 2022
33eda14cbcSMatt Macy.Dt ZFS-ALLOW 8
34eda14cbcSMatt Macy.Os
3516038816SMartin Matuska.
36eda14cbcSMatt Macy.Sh NAME
377877fdebSMatt Macy.Nm zfs-allow
3816038816SMartin Matuska.Nd delegate ZFS administration permissions to unprivileged users
39eda14cbcSMatt Macy.Sh SYNOPSIS
407877fdebSMatt Macy.Nm zfs
41eda14cbcSMatt Macy.Cm allow
42eda14cbcSMatt Macy.Op Fl dglu
4316038816SMartin Matuska.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns …
44eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
4516038816SMartin Matuska.Ar setname Oc Ns …
46eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
477877fdebSMatt Macy.Nm zfs
48eda14cbcSMatt Macy.Cm allow
49eda14cbcSMatt Macy.Op Fl dl
50eda14cbcSMatt Macy.Fl e Ns | Ns Sy everyone
51eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
5216038816SMartin Matuska.Ar setname Oc Ns …
53eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
547877fdebSMatt Macy.Nm zfs
55eda14cbcSMatt Macy.Cm allow
56eda14cbcSMatt Macy.Fl c
57eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
5816038816SMartin Matuska.Ar setname Oc Ns …
59eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
607877fdebSMatt Macy.Nm zfs
61eda14cbcSMatt Macy.Cm allow
62eda14cbcSMatt Macy.Fl s No @ Ns Ar setname
63eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
6416038816SMartin Matuska.Ar setname Oc Ns …
65eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
667877fdebSMatt Macy.Nm zfs
67eda14cbcSMatt Macy.Cm unallow
68eda14cbcSMatt Macy.Op Fl dglru
6916038816SMartin Matuska.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns …
70eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
7116038816SMartin Matuska.Ar setname Oc Ns … Oc
72eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
737877fdebSMatt Macy.Nm zfs
74eda14cbcSMatt Macy.Cm unallow
75eda14cbcSMatt Macy.Op Fl dlr
76eda14cbcSMatt Macy.Fl e Ns | Ns Sy everyone
77eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
7816038816SMartin Matuska.Ar setname Oc Ns … Oc
79eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
807877fdebSMatt Macy.Nm zfs
81eda14cbcSMatt Macy.Cm unallow
82eda14cbcSMatt Macy.Op Fl r
83eda14cbcSMatt Macy.Fl c
84eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
8516038816SMartin Matuska.Ar setname Oc Ns … Oc
86eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
877877fdebSMatt Macy.Nm zfs
88eda14cbcSMatt Macy.Cm unallow
89eda14cbcSMatt Macy.Op Fl r
90eda14cbcSMatt Macy.Fl s No @ Ns Ar setname
91eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
9216038816SMartin Matuska.Ar setname Oc Ns … Oc
93eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
9416038816SMartin Matuska.
95eda14cbcSMatt Macy.Sh DESCRIPTION
96eda14cbcSMatt Macy.Bl -tag -width ""
97eda14cbcSMatt Macy.It Xo
987877fdebSMatt Macy.Nm zfs
99eda14cbcSMatt Macy.Cm allow
100eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
101eda14cbcSMatt Macy.Xc
102eda14cbcSMatt MacyDisplays permissions that have been delegated on the specified filesystem or
103eda14cbcSMatt Macyvolume.
104eda14cbcSMatt MacySee the other forms of
105eda14cbcSMatt Macy.Nm zfs Cm allow
106eda14cbcSMatt Macyfor more information.
107eda14cbcSMatt Macy.Pp
108eda14cbcSMatt MacyDelegations are supported under Linux with the exception of
109eda14cbcSMatt Macy.Sy mount ,
110eda14cbcSMatt Macy.Sy unmount ,
111eda14cbcSMatt Macy.Sy mountpoint ,
112eda14cbcSMatt Macy.Sy canmount ,
113eda14cbcSMatt Macy.Sy rename ,
114eda14cbcSMatt Macyand
115eda14cbcSMatt Macy.Sy share .
116eda14cbcSMatt MacyThese permissions cannot be delegated because the Linux
117eda14cbcSMatt Macy.Xr mount 8
118eda14cbcSMatt Macycommand restricts modifications of the global namespace to the root user.
119eda14cbcSMatt Macy.It Xo
1207877fdebSMatt Macy.Nm zfs
121eda14cbcSMatt Macy.Cm allow
122eda14cbcSMatt Macy.Op Fl dglu
12316038816SMartin Matuska.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns …
124eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
12516038816SMartin Matuska.Ar setname Oc Ns …
126eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
127eda14cbcSMatt Macy.Xc
128eda14cbcSMatt Macy.It Xo
1297877fdebSMatt Macy.Nm zfs
130eda14cbcSMatt Macy.Cm allow
131eda14cbcSMatt Macy.Op Fl dl
132eda14cbcSMatt Macy.Fl e Ns | Ns Sy everyone
133eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
13416038816SMartin Matuska.Ar setname Oc Ns …
135eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
136eda14cbcSMatt Macy.Xc
137eda14cbcSMatt MacyDelegates ZFS administration permission for the file systems to non-privileged
138eda14cbcSMatt Macyusers.
139eda14cbcSMatt Macy.Bl -tag -width "-d"
140eda14cbcSMatt Macy.It Fl d
141eda14cbcSMatt MacyAllow only for the descendent file systems.
142eda14cbcSMatt Macy.It Fl e Ns | Ns Sy everyone
143eda14cbcSMatt MacySpecifies that the permissions be delegated to everyone.
14416038816SMartin Matuska.It Fl g Ar group Ns Oo , Ns Ar group Oc Ns …
145eda14cbcSMatt MacyExplicitly specify that permissions are delegated to the group.
146eda14cbcSMatt Macy.It Fl l
147eda14cbcSMatt MacyAllow
148eda14cbcSMatt Macy.Qq locally
149eda14cbcSMatt Macyonly for the specified file system.
15016038816SMartin Matuska.It Fl u Ar user Ns Oo , Ns Ar user Oc Ns …
151eda14cbcSMatt MacyExplicitly specify that permissions are delegated to the user.
15216038816SMartin Matuska.It Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns …
153eda14cbcSMatt MacySpecifies to whom the permissions are delegated.
154eda14cbcSMatt MacyMultiple entities can be specified as a comma-separated list.
155eda14cbcSMatt MacyIf neither of the
156eda14cbcSMatt Macy.Fl gu
157eda14cbcSMatt Macyoptions are specified, then the argument is interpreted preferentially as the
158eda14cbcSMatt Macykeyword
159eda14cbcSMatt Macy.Sy everyone ,
160eda14cbcSMatt Macythen as a user name, and lastly as a group name.
161eda14cbcSMatt MacyTo specify a user or group named
162eda14cbcSMatt Macy.Qq everyone ,
163eda14cbcSMatt Macyuse the
164eda14cbcSMatt Macy.Fl g
165eda14cbcSMatt Macyor
166eda14cbcSMatt Macy.Fl u
167eda14cbcSMatt Macyoptions.
168eda14cbcSMatt MacyTo specify a group with the same name as a user, use the
169eda14cbcSMatt Macy.Fl g
170eda14cbcSMatt Macyoptions.
171eda14cbcSMatt Macy.It Xo
172eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
17316038816SMartin Matuska.Ar setname Oc Ns …
174eda14cbcSMatt Macy.Xc
175eda14cbcSMatt MacyThe permissions to delegate.
176eda14cbcSMatt MacyMultiple permissions may be specified as a comma-separated list.
177eda14cbcSMatt MacyPermission names are the same as ZFS subcommand and property names.
178eda14cbcSMatt MacySee the property list below.
179eda14cbcSMatt MacyProperty set names, which begin with
180eda14cbcSMatt Macy.Sy @ ,
181eda14cbcSMatt Macymay be specified.
182eda14cbcSMatt MacySee the
183eda14cbcSMatt Macy.Fl s
184eda14cbcSMatt Macyform below for details.
185eda14cbcSMatt Macy.El
186eda14cbcSMatt Macy.Pp
187eda14cbcSMatt MacyIf neither of the
188eda14cbcSMatt Macy.Fl dl
189eda14cbcSMatt Macyoptions are specified, or both are, then the permissions are allowed for the
190eda14cbcSMatt Macyfile system or volume, and all of its descendents.
191eda14cbcSMatt Macy.Pp
192eda14cbcSMatt MacyPermissions are generally the ability to use a ZFS subcommand or change a ZFS
193eda14cbcSMatt Macyproperty.
194eda14cbcSMatt MacyThe following permissions are available:
19516038816SMartin Matuska.TS
19616038816SMartin Matuskal l l .
197eda14cbcSMatt MacyNAME	TYPE	NOTES
19816038816SMartin Matuska_	_	_
19916038816SMartin Matuskaallow	subcommand	Must also have the permission that is being allowed
20016038816SMartin Matuskabookmark	subcommand
20116038816SMartin Matuskaclone	subcommand	Must also have the \fBcreate\fR ability and \fBmount\fR ability in the origin file system
20216038816SMartin Matuskacreate	subcommand	Must also have the \fBmount\fR ability. Must also have the \fBrefreservation\fR ability to create a non-sparse volume.
20316038816SMartin Matuskadestroy	subcommand	Must also have the \fBmount\fR ability
20416038816SMartin Matuskadiff	subcommand	Allows lookup of paths within a dataset given an object number, and the ability to create snapshots necessary to \fBzfs diff\fR.
205f9693befSMartin Matuskahold	subcommand	Allows adding a user hold to a snapshot
2061f88aa09SMartin Matuskaload-key	subcommand	Allows loading and unloading of encryption key (see \fBzfs load-key\fR and \fBzfs unload-key\fR).
2071f88aa09SMartin Matuskachange-key	subcommand	Allows changing an encryption key via \fBzfs change-key\fR.
20816038816SMartin Matuskamount	subcommand	Allows mounting/umounting ZFS datasets
20916038816SMartin Matuskapromote	subcommand	Must also have the \fBmount\fR and \fBpromote\fR ability in the origin file system
21016038816SMartin Matuskareceive	subcommand	Must also have the \fBmount\fR and \fBcreate\fR ability
21116038816SMartin Matuskarelease	subcommand	Allows releasing a user hold which might destroy the snapshot
21216038816SMartin Matuskarename	subcommand	Must also have the \fBmount\fR and \fBcreate\fR ability in the new parent
21316038816SMartin Matuskarollback	subcommand	Must also have the \fBmount\fR ability
214eda14cbcSMatt Macysend	subcommand
21516038816SMartin Matuskashare	subcommand	Allows sharing file systems over NFS or SMB protocols
21616038816SMartin Matuskasnapshot	subcommand	Must also have the \fBmount\fR ability
217eda14cbcSMatt Macy
218716fd348SMartin Matuskagroupquota	other	Allows accessing any \fBgroupquota@\fI…\fR property
219716fd348SMartin Matuskagroupobjquota	other	Allows accessing any \fBgroupobjquota@\fI…\fR property
220716fd348SMartin Matuskagroupused	other	Allows reading any \fBgroupused@\fI…\fR property
221716fd348SMartin Matuskagroupobjused	other	Allows reading any \fBgroupobjused@\fI…\fR property
222eda14cbcSMatt Macyuserprop	other	Allows changing any user property
223716fd348SMartin Matuskauserquota	other	Allows accessing any \fBuserquota@\fI…\fR property
224716fd348SMartin Matuskauserobjquota	other	Allows accessing any \fBuserobjquota@\fI…\fR property
225716fd348SMartin Matuskauserused	other	Allows reading any \fBuserused@\fI…\fR property
226716fd348SMartin Matuskauserobjused	other	Allows reading any \fBuserobjused@\fI…\fR property
227716fd348SMartin Matuskaprojectobjquota	other	Allows accessing any \fBprojectobjquota@\fI…\fR property
228716fd348SMartin Matuskaprojectquota	other	Allows accessing any \fBprojectquota@\fI…\fR property
229716fd348SMartin Matuskaprojectobjused	other	Allows reading any \fBprojectobjused@\fI…\fR property
230716fd348SMartin Matuskaprojectused	other	Allows reading any \fBprojectused@\fI…\fR property
231eda14cbcSMatt Macy
232eda14cbcSMatt Macyaclinherit	property
2331f88aa09SMartin Matuskaaclmode	property
234eda14cbcSMatt Macyacltype	property
235eda14cbcSMatt Macyatime	property
236eda14cbcSMatt Macycanmount	property
237eda14cbcSMatt Macycasesensitivity	property
238eda14cbcSMatt Macychecksum	property
239eda14cbcSMatt Macycompression	property
2401f88aa09SMartin Matuskacontext	property
241eda14cbcSMatt Macycopies	property
2421f88aa09SMartin Matuskadedup	property
2431f88aa09SMartin Matuskadefcontext	property
244eda14cbcSMatt Macydevices	property
2451f88aa09SMartin Matuskadnodesize	property
2461f88aa09SMartin Matuskaencryption	property
247eda14cbcSMatt Macyexec	property
248eda14cbcSMatt Macyfilesystem_limit	property
2491f88aa09SMartin Matuskafscontext	property
2501f88aa09SMartin Matuskakeyformat	property
2511f88aa09SMartin Matuskakeylocation	property
2521f88aa09SMartin Matuskalogbias	property
2531f88aa09SMartin Matuskamlslabel	property
254eda14cbcSMatt Macymountpoint	property
255eda14cbcSMatt Macynbmand	property
256eda14cbcSMatt Macynormalization	property
2571f88aa09SMartin Matuskaoverlay	property
2581f88aa09SMartin Matuskapbkdf2iters	property
259eda14cbcSMatt Macyprimarycache	property
260eda14cbcSMatt Macyquota	property
261eda14cbcSMatt Macyreadonly	property
262eda14cbcSMatt Macyrecordsize	property
2631f88aa09SMartin Matuskaredundant_metadata	property
264eda14cbcSMatt Macyrefquota	property
265eda14cbcSMatt Macyrefreservation	property
2661f88aa09SMartin Matuskarelatime	property
267eda14cbcSMatt Macyreservation	property
2681f88aa09SMartin Matuskarootcontext	property
269eda14cbcSMatt Macysecondarycache	property
270eda14cbcSMatt Macysetuid	property
271eda14cbcSMatt Macysharenfs	property
272eda14cbcSMatt Macysharesmb	property
2731f88aa09SMartin Matuskasnapdev	property
274eda14cbcSMatt Macysnapdir	property
275eda14cbcSMatt Macysnapshot_limit	property
2761f88aa09SMartin Matuskaspecial_small_blocks	property
2771f88aa09SMartin Matuskasync	property
278eda14cbcSMatt Macyutf8only	property
279eda14cbcSMatt Macyversion	property
280eda14cbcSMatt Macyvolblocksize	property
2811f88aa09SMartin Matuskavolmode	property
282eda14cbcSMatt Macyvolsize	property
283eda14cbcSMatt Macyvscan	property
284eda14cbcSMatt Macyxattr	property
285eda14cbcSMatt Macyzoned	property
28616038816SMartin Matuska.TE
287eda14cbcSMatt Macy.It Xo
2887877fdebSMatt Macy.Nm zfs
289eda14cbcSMatt Macy.Cm allow
290eda14cbcSMatt Macy.Fl c
291eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
29216038816SMartin Matuska.Ar setname Oc Ns …
293eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
294eda14cbcSMatt Macy.Xc
295eda14cbcSMatt MacySets
296eda14cbcSMatt Macy.Qq create time
297eda14cbcSMatt Macypermissions.
298eda14cbcSMatt MacyThese permissions are granted
299eda14cbcSMatt Macy.Pq locally
300eda14cbcSMatt Macyto the creator of any newly-created descendent file system.
301eda14cbcSMatt Macy.It Xo
3027877fdebSMatt Macy.Nm zfs
303eda14cbcSMatt Macy.Cm allow
304eda14cbcSMatt Macy.Fl s No @ Ns Ar setname
305eda14cbcSMatt Macy.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
30616038816SMartin Matuska.Ar setname Oc Ns …
307eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
308eda14cbcSMatt Macy.Xc
309eda14cbcSMatt MacyDefines or adds permissions to a permission set.
310eda14cbcSMatt MacyThe set can be used by other
311eda14cbcSMatt Macy.Nm zfs Cm allow
312eda14cbcSMatt Macycommands for the specified file system and its descendents.
313eda14cbcSMatt MacySets are evaluated dynamically, so changes to a set are immediately reflected.
314eda14cbcSMatt MacyPermission sets follow the same naming restrictions as ZFS file systems, but the
315eda14cbcSMatt Macyname must begin with
316eda14cbcSMatt Macy.Sy @ ,
317eda14cbcSMatt Macyand can be no more than 64 characters long.
318eda14cbcSMatt Macy.It Xo
3197877fdebSMatt Macy.Nm zfs
320eda14cbcSMatt Macy.Cm unallow
321eda14cbcSMatt Macy.Op Fl dglru
32216038816SMartin Matuska.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns …
323eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
32416038816SMartin Matuska.Ar setname Oc Ns … Oc
325eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
326eda14cbcSMatt Macy.Xc
327eda14cbcSMatt Macy.It Xo
3287877fdebSMatt Macy.Nm zfs
329eda14cbcSMatt Macy.Cm unallow
330eda14cbcSMatt Macy.Op Fl dlr
331eda14cbcSMatt Macy.Fl e Ns | Ns Sy everyone
332eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
33316038816SMartin Matuska.Ar setname Oc Ns … Oc
334eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
335eda14cbcSMatt Macy.Xc
336eda14cbcSMatt Macy.It Xo
3377877fdebSMatt Macy.Nm zfs
338eda14cbcSMatt Macy.Cm unallow
339eda14cbcSMatt Macy.Op Fl r
340eda14cbcSMatt Macy.Fl c
341eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
34216038816SMartin Matuska.Ar setname Oc Ns … Oc
343eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
344eda14cbcSMatt Macy.Xc
345eda14cbcSMatt MacyRemoves permissions that were granted with the
346eda14cbcSMatt Macy.Nm zfs Cm allow
347eda14cbcSMatt Macycommand.
348eda14cbcSMatt MacyNo permissions are explicitly denied, so other permissions granted are still in
349eda14cbcSMatt Macyeffect.
350eda14cbcSMatt MacyFor example, if the permission is granted by an ancestor.
351eda14cbcSMatt MacyIf no permissions are specified, then all permissions for the specified
352eda14cbcSMatt Macy.Ar user ,
353eda14cbcSMatt Macy.Ar group ,
354eda14cbcSMatt Macyor
355eda14cbcSMatt Macy.Sy everyone
356eda14cbcSMatt Macyare removed.
357eda14cbcSMatt MacySpecifying
358eda14cbcSMatt Macy.Sy everyone
359eda14cbcSMatt Macy.Po or using the
360eda14cbcSMatt Macy.Fl e
361eda14cbcSMatt Macyoption
362eda14cbcSMatt Macy.Pc
363eda14cbcSMatt Macyonly removes the permissions that were granted to everyone, not all permissions
364eda14cbcSMatt Macyfor every user and group.
365eda14cbcSMatt MacySee the
366eda14cbcSMatt Macy.Nm zfs Cm allow
367eda14cbcSMatt Macycommand for a description of the
368eda14cbcSMatt Macy.Fl ldugec
369eda14cbcSMatt Macyoptions.
370eda14cbcSMatt Macy.Bl -tag -width "-r"
371eda14cbcSMatt Macy.It Fl r
372eda14cbcSMatt MacyRecursively remove the permissions from this file system and all descendents.
373eda14cbcSMatt Macy.El
374eda14cbcSMatt Macy.It Xo
3757877fdebSMatt Macy.Nm zfs
376eda14cbcSMatt Macy.Cm unallow
377eda14cbcSMatt Macy.Op Fl r
378eda14cbcSMatt Macy.Fl s No @ Ns Ar setname
379eda14cbcSMatt Macy.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
38016038816SMartin Matuska.Ar setname Oc Ns … Oc
381eda14cbcSMatt Macy.Ar filesystem Ns | Ns Ar volume
382eda14cbcSMatt Macy.Xc
383eda14cbcSMatt MacyRemoves permissions from a permission set.
384eda14cbcSMatt MacyIf no permissions are specified, then all permissions are removed, thus removing
385eda14cbcSMatt Macythe set entirely.
386eda14cbcSMatt Macy.El
387da5137abSMartin Matuska.
388da5137abSMartin Matuska.Sh EXAMPLES
389da5137abSMartin Matuska.\" These are, respectively, examples 17, 18, 19, 20 from zfs.8
390da5137abSMartin Matuska.\" Make sure to update them bidirectionally
391da5137abSMartin Matuska.Ss Example 1 : No Delegating ZFS Administration Permissions on a ZFS Dataset
392da5137abSMartin MatuskaThe following example shows how to set permissions so that user
393da5137abSMartin Matuska.Ar cindys
394da5137abSMartin Matuskacan create, destroy, mount, and take snapshots on
395da5137abSMartin Matuska.Ar tank/cindys .
396da5137abSMartin MatuskaThe permissions on
397da5137abSMartin Matuska.Ar tank/cindys
398da5137abSMartin Matuskaare also displayed.
399da5137abSMartin Matuska.Bd -literal -compact -offset Ds
400da5137abSMartin Matuska.No # Nm zfs Cm allow Sy cindys create , Ns Sy destroy , Ns Sy mount , Ns Sy snapshot Ar tank/cindys
401da5137abSMartin Matuska.No # Nm zfs Cm allow Ar tank/cindys
402da5137abSMartin Matuska---- Permissions on tank/cindys --------------------------------------
403da5137abSMartin MatuskaLocal+Descendent permissions:
404da5137abSMartin Matuska        user cindys create,destroy,mount,snapshot
405da5137abSMartin Matuska.Ed
406da5137abSMartin Matuska.Pp
407da5137abSMartin MatuskaBecause the
408da5137abSMartin Matuska.Ar tank/cindys
409da5137abSMartin Matuskamount point permission is set to 755 by default, user
410da5137abSMartin Matuska.Ar cindys
411da5137abSMartin Matuskawill be unable to mount file systems under
412da5137abSMartin Matuska.Ar tank/cindys .
413da5137abSMartin MatuskaAdd an ACE similar to the following syntax to provide mount point access:
414da5137abSMartin Matuska.Dl # Cm chmod No A+user : Ns Ar cindys Ns :add_subdirectory:allow Ar /tank/cindys
415da5137abSMartin Matuska.
416da5137abSMartin Matuska.Ss Example 2 : No Delegating Create Time Permissions on a ZFS Dataset
417da5137abSMartin MatuskaThe following example shows how to grant anyone in the group
418da5137abSMartin Matuska.Ar staff
419da5137abSMartin Matuskato create file systems in
420da5137abSMartin Matuska.Ar tank/users .
421da5137abSMartin MatuskaThis syntax also allows staff members to destroy their own file systems, but not
422da5137abSMartin Matuskadestroy anyone else's file system.
423da5137abSMartin MatuskaThe permissions on
424da5137abSMartin Matuska.Ar tank/users
425da5137abSMartin Matuskaare also displayed.
426da5137abSMartin Matuska.Bd -literal -compact -offset Ds
427da5137abSMartin Matuska.No # Nm zfs Cm allow Ar staff Sy create , Ns Sy mount Ar tank/users
428da5137abSMartin Matuska.No # Nm zfs Cm allow Fl c Sy destroy Ar tank/users
429da5137abSMartin Matuska.No # Nm zfs Cm allow Ar tank/users
430da5137abSMartin Matuska---- Permissions on tank/users ---------------------------------------
431da5137abSMartin MatuskaPermission sets:
432da5137abSMartin Matuska        destroy
433da5137abSMartin MatuskaLocal+Descendent permissions:
434da5137abSMartin Matuska        group staff create,mount
435da5137abSMartin Matuska.Ed
436da5137abSMartin Matuska.
437da5137abSMartin Matuska.Ss Example 3 : No Defining and Granting a Permission Set on a ZFS Dataset
438da5137abSMartin MatuskaThe following example shows how to define and grant a permission set on the
439da5137abSMartin Matuska.Ar tank/users
440da5137abSMartin Matuskafile system.
441da5137abSMartin MatuskaThe permissions on
442da5137abSMartin Matuska.Ar tank/users
443da5137abSMartin Matuskaare also displayed.
444da5137abSMartin Matuska.Bd -literal -compact -offset Ds
445da5137abSMartin Matuska.No # Nm zfs Cm allow Fl s No @ Ns Ar pset Sy create , Ns Sy destroy , Ns Sy snapshot , Ns Sy mount Ar tank/users
446da5137abSMartin Matuska.No # Nm zfs Cm allow staff No @ Ns Ar pset tank/users
447da5137abSMartin Matuska.No # Nm zfs Cm allow Ar tank/users
448da5137abSMartin Matuska---- Permissions on tank/users ---------------------------------------
449da5137abSMartin MatuskaPermission sets:
450da5137abSMartin Matuska        @pset create,destroy,mount,snapshot
451da5137abSMartin MatuskaLocal+Descendent permissions:
452da5137abSMartin Matuska        group staff @pset
453da5137abSMartin Matuska.Ed
454da5137abSMartin Matuska.
455da5137abSMartin Matuska.Ss Example 4 : No Delegating Property Permissions on a ZFS Dataset
456da5137abSMartin MatuskaThe following example shows to grant the ability to set quotas and reservations
457da5137abSMartin Matuskaon the
458da5137abSMartin Matuska.Ar users/home
459da5137abSMartin Matuskafile system.
460da5137abSMartin MatuskaThe permissions on
461da5137abSMartin Matuska.Ar users/home
462da5137abSMartin Matuskaare also displayed.
463da5137abSMartin Matuska.Bd -literal -compact -offset Ds
464da5137abSMartin Matuska.No # Nm zfs Cm allow Ar cindys Sy quota , Ns Sy reservation Ar users/home
465da5137abSMartin Matuska.No # Nm zfs Cm allow Ar users/home
466da5137abSMartin Matuska---- Permissions on users/home ---------------------------------------
467da5137abSMartin MatuskaLocal+Descendent permissions:
468da5137abSMartin Matuska        user cindys quota,reservation
469da5137abSMartin Matuskacindys% zfs set quota=10G users/home/marks
470da5137abSMartin Matuskacindys% zfs get quota users/home/marks
471da5137abSMartin MatuskaNAME              PROPERTY  VALUE  SOURCE
472da5137abSMartin Matuskausers/home/marks  quota     10G    local
473da5137abSMartin Matuska.Ed
474da5137abSMartin Matuska.
475da5137abSMartin Matuska.Ss Example 5 : No Removing ZFS Delegated Permissions on a ZFS Dataset
476da5137abSMartin MatuskaThe following example shows how to remove the snapshot permission from the
477da5137abSMartin Matuska.Ar staff
478da5137abSMartin Matuskagroup on the
479da5137abSMartin Matuska.Sy tank/users
480da5137abSMartin Matuskafile system.
481da5137abSMartin MatuskaThe permissions on
482da5137abSMartin Matuska.Sy tank/users
483da5137abSMartin Matuskaare also displayed.
484da5137abSMartin Matuska.Bd -literal -compact -offset Ds
485da5137abSMartin Matuska.No # Nm zfs Cm unallow Ar staff Sy snapshot Ar tank/users
486da5137abSMartin Matuska.No # Nm zfs Cm allow Ar tank/users
487da5137abSMartin Matuska---- Permissions on tank/users ---------------------------------------
488da5137abSMartin MatuskaPermission sets:
489da5137abSMartin Matuska        @pset create,destroy,mount,snapshot
490da5137abSMartin MatuskaLocal+Descendent permissions:
491da5137abSMartin Matuska        group staff @pset
492da5137abSMartin Matuska.Ed
493