svn commit: r42807 - projects/zfsupdate-201307/en_US.ISO8859-1/books/handbook/zfs
Benedict Reuschling
bcr at FreeBSD.org
Wed Oct 2 17:53:48 UTC 2013
Author: bcr
Date: Wed Oct 2 17:53:48 2013
New Revision: 42807
URL: http://svnweb.freebsd.org/changeset/doc/42807
Log:
Add basic information about ZFS delegation and small corrections to other
parts.
Submitted by: Allan Jude
Modified:
projects/zfsupdate-201307/en_US.ISO8859-1/books/handbook/zfs/chapter.xml
Modified: projects/zfsupdate-201307/en_US.ISO8859-1/books/handbook/zfs/chapter.xml
==============================================================================
--- projects/zfsupdate-201307/en_US.ISO8859-1/books/handbook/zfs/chapter.xml Wed Oct 2 16:19:37 2013 (r42806)
+++ projects/zfsupdate-201307/en_US.ISO8859-1/books/handbook/zfs/chapter.xml Wed Oct 2 17:53:48 2013 (r42807)
@@ -25,7 +25,7 @@
<itemizedlist>
<listitem>
<para>Data integrity: checksums are created when data is written
- and checked when data is read. If on-disk data corruption is
+ and checked when data is read. If on-disk data corruption is
detected, the user is notified and recovery methods are
initiated.</para>
</listitem>
@@ -476,7 +476,13 @@ errors: No known data errors</screen>
<sect2 id="zfs-zpool-attach">
<title>Adding & Removing Devices</title>
- <para></para>
+ <para>Creating a ZFS Storage Pool (<acronym>zpool</acronym>)
+ involves making a number of decisions that are relatively
+ permanent. Although additional vdevs can be added to a pool,
+ the layout of the pool cannot be changed once the pool has
+ been created, instead the data must be backed up and the pool
+ recreated. Currently, devices cannot be removed from a
+ zpool.</para>
</sect2>
<sect2 id="zfs-zpool-resilver">
@@ -574,14 +580,15 @@ data 288G 1.53T
<title>Creating & Destroying Volumes</title>
<para></para>
-
+
<para>A volume can be formatted with any filesystem on top of
- it. This will appear to the user as if they are working with
- that specific filesystem and not ZFS. This way, it can be
- used to augment non-ZFS filesystems with ZFS features that
- they do not have. For example, combining the ZFS compression
- property together with a 250 MB volume allows to create a
- compressed FAT filesystem.</para>
+ it. This will appear to the user as if they are working with
+ a regular disk using that specific filesystem and not ZFS.
+ In this way, non-ZFS file systems can be augmented with
+ ZFS features that they would not normally have. For example,
+ combining the ZFS compression property together with a
+ 250 MB volume allows to create a compressed FAT
+ filesystem.</para>
<screen>&prompt.root; <userinput>zfs create -V 250m -o compression=on tank/fat32</userinput>
&prompt.root; <userinput>zfs list tank</userinput>
@@ -608,15 +615,15 @@ Filesystem Size Used Avail Cap
<para></para>
<para>It is possible to set user-defined properties in ZFS.
- They become part of the pool configuration and can be used to
- provide additional information about the pool or it's
- contents. To distnguish these custom properties from the ones
- supplied by ZFS by default, the colon (<literal>:</literal>)
- is used in the property name.</para>
+ They become part of the dataset configuration and can be used
+ to provide additional information about the dataset or its
+ contents. To distnguish these custom properties from the
+ ones supplied as part of ZFS, a colon (<literal>:</literal>)
+ is used to create a custom namespace for the property.</para>
<screen>&prompt.root; <userinput>zfs set custom:costcenter=1234</userinput>
&prompt.root; <userinput>zfs get custom:costcenter</userinput>
-NAME PROPERTY VALUE SOURCE
+NAME PROPERTY VALUE SOURCE
tank custom:costcenter 1234 local</screen>
</sect2>
@@ -780,11 +787,52 @@ tank custom:costcenter 1234 local</scr
<para></para>
</sect2>
+ </sect1>
- <sect2 id="zfs-zfs-allow">
- <title>Delegated Administration</title>
+ <sect1 id="zfs-zfs-allow">
+ <title>Delegated Administration</title>
- <para></para>
+ <para>ZFS features a comprehensive delegation system to assign
+ permissions to performs the various ZFS administration functions
+ to a regular user. For example, if each users' home directory
+ is a dataset, then each user could be delegated permission to
+ create and destroy snapshots of their home directory. A backup
+ user could be assigned the permissions required to make use of
+ the ZFS replication features without requiring root access, or
+ isolate a usage collection script to run as an unprivledged user
+ with access to only the space utilization data of all users. It
+ is even possible to delegate the ability to delegate
+ permissions. It is possible to delegate permissions over each
+ ZFS subcommand and most ZFS properties.</para>
+
+ <sect2 id="zfs-zfs-allow-create">
+ <title>Delegating Dataset Creation</title>
+
+ <para>Using the <userinput>zfs allow
+ <replaceable>someuser</replaceable> create
+ <replaceable>mydataset</replaceable></userinput> command will
+ give the indicated user the required permissions to create
+ child datasets under the selected parent dataset. There is
+ a caveat, creating a new dataset involves mouting it, which
+ requires the <literal>vfs.usermount</literal> sysctl be
+ enabled in order to allow non-root users to mount a
+ filesystem. There is the further restriction that non-root
+ users must own the directory they are mounting the filesystem
+ to, in order to prevent abuse.</para>
+ </sect2>
+
+ <sect2 id="zfs-zfs-allow-allow">
+ <title>Delegating Permission Delegation</title>
+
+ <para>Using the <userinput>zfs allow
+ <replaceable>someuser</replaceable> allow
+ <replaceable>mydataset</replaceable></userinput> command will
+ give the indicated user the ability to assign any permission
+ they have on the target dataset (or its children) to other
+ users. If a user has the <literal>snapshot</literal>
+ permission and the <literal>allow</literal> permission that
+ user can then grant the snapshot permission to some other
+ users.</para>
</sect2>
</sect1>
@@ -1062,7 +1110,7 @@ vfs.zfs.vdev.cache.size="5M"</programlis
<para>In a <acronym>RAID-Z3</acronym> configuration
with 8 disks of 1 TB, the volume would
provide 5 TB of usable space and still be
- able to operate with three faulted disks. Sun
+ able to operate with three faulted disks. &sun;
recommends no more than 9 disks in a single vdev.
If the configuration has more disks, it is
recommended to divide them into separate vdevs and
More information about the svn-doc-projects
mailing list