svn commit: r44506 - in head/en_US.ISO8859-1/books/handbook: disks filesystems
Dru Lavigne
dru at FreeBSD.org
Wed Apr 9 15:41:55 UTC 2014
Author: dru
Date: Wed Apr 9 15:41:54 2014
New Revision: 44506
URL: http://svnweb.freebsd.org/changeset/doc/44506
Log:
Add section ID to ZFS Quotas so it can be referred to in Disk Quotas.
Editorial review of Disk Quotas.
Sponsored by: iXsystems
Modified:
head/en_US.ISO8859-1/books/handbook/disks/chapter.xml
head/en_US.ISO8859-1/books/handbook/filesystems/chapter.xml
Modified: head/en_US.ISO8859-1/books/handbook/disks/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/disks/chapter.xml Wed Apr 9 14:38:38 2014 (r44505)
+++ head/en_US.ISO8859-1/books/handbook/disks/chapter.xml Wed Apr 9 15:41:54 2014 (r44506)
@@ -2412,7 +2412,7 @@ Filesystem 1K-blocks Used Avail Capacity
</sect1>
<sect1 xml:id="quotas">
- <title>File System Quotas</title>
+ <title>Disk Quotas</title>
<indexterm>
<primary>accounting</primary>
@@ -2420,32 +2420,35 @@ Filesystem 1K-blocks Used Avail Capacity
</indexterm>
<indexterm><primary>disk quotas</primary></indexterm>
- <para>Quotas are an optional feature of the operating system that
+ <para>Disk quotas
can be used to limit the amount of disk space or the number of
files a user or members of a group may allocate on a per-file
- system basis. This is used most often on timesharing systems
- where it is desirable to limit the amount of resources any one
- user or group of users may allocate. This prevents one user or
+ system basis. This prevents one user or
group of users from consuming all of the available disk
space.</para>
+
+ <para>This section describes how to configure disk quotas for the
+ <acronym>UFS</acronym> file system. To configure quotas on the
+ <acronym>ZFS</acronym> file system, refer to <xref
+ linkend="zfs-quotas"/></para>
<sect2>
- <title>Configuring the System to Enable Disk Quotas</title>
+ <title>Enabling Disk Quotas</title>
- <para>Before using disk quotas, quota support must be added to
- the kernel by adding the following line to the kernel
- configuration file:</para>
+ <para>To determine if the &os; kernel provides support for disk
+ quotas:</para>
- <programlisting>options QUOTA</programlisting>
+ <screen>&prompt.user; <userinput>sysctl kern.features.ufs_quota</userinput>
+kern.features.ufs_quota: 1</screen>
- <para>Before &os; 9.2, the <filename>GENERIC</filename>
- kernel usually did not include this option.
- <command>sysctl kern.features.ufs_quota</command> can be used
- to test whether the current kernel supports quotas. If the
- option is not present, a custom kernel must be compiled.
- Refer to <xref linkend="kernelconfig"/> for more information
- on kernel configuration.</para>
+ <para>In this example, the <literal>1</literal> indicates quota
+ support. If the value is instead <literal>0</literal>,
+ add the following line to a custom kernel configuration file
+ and rebuild the kernel using the instructions in <xref
+ linkend="kernelconfig"/>:</para>
+ <programlisting>options QUOTA</programlisting>
+
<para>Next, enable disk quotas in
<filename>/etc/rc.conf</filename>:</para>
@@ -2455,8 +2458,7 @@ Filesystem 1K-blocks Used Avail Capacity
<primary>disk quotas</primary>
<secondary>checking</secondary>
</indexterm>
- <para>For finer control over quota startup, an additional
- configuration variable is available. Normally on bootup, the
+ <para>Normally on bootup, the
quota integrity of each file system is checked by
&man.quotacheck.8;. This program insures that the data in the
quota database properly reflects the data on the file system.
@@ -2467,41 +2469,35 @@ Filesystem 1K-blocks Used Avail Capacity
<programlisting>check_quotas="NO"</programlisting>
<para>Finally, edit <filename>/etc/fstab</filename> to enable
- disk quotas on a per-file system basis. This is when user or
- group quotas can be enabled on the file systems.</para>
-
- <para>To enable per-user quotas on a file system, add
+ disk quotas on a per-file system basis. To enable per-user quotas on a file system, add
<option>userquota</option> to the options field in the
<filename>/etc/fstab</filename> entry for the file system to
enable quotas on. For example:</para>
<programlisting>/dev/da1s2g /home ufs rw,userquota 1 2</programlisting>
- <para>To enable group quotas, instead use
- <option>groupquota</option>. To enable both user and group
- quotas, change the entry as follows:</para>
+ <para>To enable group quotas, use
+ <option>groupquota</option> instead. To enable both user and group
+ quotas, separate the options with a comma:</para>
<programlisting>/dev/da1s2g /home ufs rw,userquota,groupquota 1 2</programlisting>
- <para>By default, the quota files are stored in the root
+ <para>By default, quota files are stored in the root
directory of the file system as
<filename>quota.user</filename> and
<filename>quota.group</filename>. Refer to &man.fstab.5; for
- more information. Even though an alternate location for the
- quota files can be specified, this is not recommended because
- the various quota utilities do not seem to handle this
- properly.</para>
+ more information. Specifying an alternate location for the
+ quota files is not recommended.</para>
- <para>Once the configuration is complete, reboot the system
- with the new kernel. <filename>/etc/rc</filename> will
+ <para>Once the configuration is complete, reboot the system and
+ <filename>/etc/rc</filename> will
automatically run the appropriate commands to create the
initial quota files for all of the quotas enabled in
- <filename>/etc/fstab</filename>. There is no need to
- manually create any zero length quota files.</para>
+ <filename>/etc/fstab</filename>.</para>
<para>In the normal course of operations, there should be no
need to manually run &man.quotacheck.8;, &man.quotaon.8;, or
- &man.quotaoff.8;. However, one should read their manual pages
+ &man.quotaoff.8;. However, one should read these manual pages
to be familiar with their operation.</para>
</sect2>
@@ -2513,8 +2509,8 @@ Filesystem 1K-blocks Used Avail Capacity
<secondary>limits</secondary>
</indexterm>
- <para>Once the system has been configured to enable quotas,
- verify they really are enabled by running:</para>
+ <para>To
+ verify that quotas are enabled, run:</para>
<screen>&prompt.root; <userinput>quota -v</userinput></screen>
@@ -2523,13 +2519,13 @@ Filesystem 1K-blocks Used Avail Capacity
enabled on.</para>
<para>The system is now ready to be assigned quota limits with
- &man.edquota.8;.</para>
+ <command>edquota</command>.</para>
<para>Several options are available to enforce limits on the
amount of disk space a user or group may allocate, and how
many files they may create. Allocations can be limited based
on disk space (block quotas), number of files (inode quotas),
- or a combination of both. Each limits is further broken down
+ or a combination of both. Each limit is further broken down
into two categories: hard and soft limits.</para>
<indexterm><primary>hard limit</primary></indexterm>
@@ -2549,31 +2545,27 @@ Filesystem 1K-blocks Used Avail Capacity
are allowed. When the user drops back below the soft limit,
the grace period is reset.</para>
- <para>The following is an example output from &man.edquota.8;.
- When &man.edquota.8; is invoked, the editor specified by
+ <para>In the following example, the quota for the
+ <systemitem class="username">test</systemitem> account is being edited.
+ When <command>edquota</command> is invoked, the editor specified by
<envar>EDITOR</envar> is opened in order to edit the quota
limits. The default editor is set to
<application>vi</application>.</para>
- <screen>&prompt.root; <userinput>edquota -u test</userinput></screen>
-
- <programlisting>Quotas for user test:
+ <screen>&prompt.root; <userinput>edquota -u test</userinput>
+Quotas for user test:
/usr: kbytes in use: 65, limits (soft = 50, hard = 75)
inodes in use: 7, limits (soft = 50, hard = 60)
/usr/var: kbytes in use: 0, limits (soft = 50, hard = 75)
- inodes in use: 0, limits (soft = 50, hard = 60)</programlisting>
+ inodes in use: 0, limits (soft = 50, hard = 60)</screen>
<para>There are normally two lines for each file system that
has quotas enabled. One line represents the block limits and
the other represents the inode limits. Change the value to
- modify the quota limit. For example, to raise this
- user's block limit from a soft limit of 50 and a hard limit of
- 75 to a soft limit of 500 and a hard limit of 600,
- change:</para>
-
- <programlisting>/usr: kbytes in use: 65, limits (soft = 50, hard = 75)</programlisting>
-
- <para>to:</para>
+ modify the quota limit. For example, to raise the
+ block limit on <filename>/usr</filename>
+ to a soft limit of <literal>500</literal> and a hard limit of <literal>600</literal>,
+ change the values in that line as follows:</para>
<programlisting>/usr: kbytes in use: 65, limits (soft = 500, hard = 600)</programlisting>
@@ -2581,13 +2573,13 @@ Filesystem 1K-blocks Used Avail Capacity
editor.</para>
<para>Sometimes it is desirable to set quota limits on a range
- of UIDs. This can be done by passing <option>-p</option> to
- &man.edquota.8;. First, assign the desired quota limit to a
- user, then run
- <command>edquota -p protouser startuid-enduid</command>. For
- example, if <systemitem class="username">test</systemitem> has
- the desired quota limits, the following command will duplicate
- those quota limits for UIDs 10,000 through 19,999:</para>
+ of users. This can be done by first assigning the desired quota limit to a
+ user. Then, use <option>-p</option> to duplicate that quota
+ to a specified range of user IDs (<acronym>UID</acronym>s).
+ The following command will duplicate
+ those quota limits for <acronym>UID</acronym>s
+ <literal>10,000</literal> through
+ <literal>19,999</literal>:</para>
<screen>&prompt.root; <userinput>edquota -p test 10000-19999</userinput></screen>
@@ -2602,8 +2594,7 @@ Filesystem 1K-blocks Used Avail Capacity
<secondary>checking</secondary>
</indexterm>
- <para>Either &man.quota.1; or &man.repquota.8; can be used to
- check quota limits and disk usage. To check individual user
+ <para>To check individual user
or group quotas and disk usage, use &man.quota.1;. A user
may only examine their own quota and the quota of a group they
are a member of. Only the superuser may view all user and
@@ -2611,7 +2602,11 @@ Filesystem 1K-blocks Used Avail Capacity
for file systems with quotas enabled, use
&man.repquota.8;.</para>
- <para>The following is sample output from
+ <para>Normally, file systems that the user is not using any disk
+ space on will not show in the output of <command>quota</command>, even if
+ the user has a quota limit assigned for that file system. Use
+ <option>-v</option> to display those file systems. The
+ following is sample output from
<command>quota -v</command> for a user that has quota limits
on two file systems.</para>
@@ -2627,13 +2622,6 @@ Filesystem 1K-blocks Used Avail Capacity
days of grace period left. The asterisk <literal>*</literal>
indicates that the user is currently over the quota
limit.</para>
-
- <para>Normally, file systems that the user is not using any disk
- space on will not show in the output of &man.quota.1;, even if
- the user has a quota limit assigned for that file system. Use
- <option>-v</option> to display those file systems, such as
- <filename>/usr/var</filename> in the above
- example.</para>
</sect2>
<sect2>
@@ -2641,18 +2629,20 @@ Filesystem 1K-blocks Used Avail Capacity
<indexterm><primary>NFS</primary></indexterm>
- <para>Quotas are enforced by the quota subsystem on the NFS
+ <para>Quotas are enforced by the quota subsystem on the <acronym>NFS</acronym>
server. The &man.rpc.rquotad.8; daemon makes quota
- information available to &man.quota.1; on NFS clients,
+ information available to <command>quota</command> on <acronym>NFS</acronym> clients,
allowing users on those machines to see their quota
statistics.</para>
- <para>Enable <command>rpc.rquotad</command> in
- <filename>/etc/inetd.conf</filename> like so:</para>
+ <para>On the <acronym>NFS</acronym> server, enable
+ <command>rpc.rquotad</command> by removing the
+ <literal>#</literal> from this line in
+ <filename>/etc/inetd.conf</filename>:</para>
<programlisting>rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad</programlisting>
- <para>Now restart <command>inetd</command>:</para>
+ <para>Then, restart <command>inetd</command>:</para>
<screen>&prompt.root; <userinput>service inetd restart</userinput></screen>
</sect2>
Modified: head/en_US.ISO8859-1/books/handbook/filesystems/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/filesystems/chapter.xml Wed Apr 9 14:38:38 2014 (r44505)
+++ head/en_US.ISO8859-1/books/handbook/filesystems/chapter.xml Wed Apr 9 15:41:54 2014 (r44506)
@@ -545,7 +545,7 @@ errors: No known data errors</screen>
<acronym>ZFS</acronym> options.</para>
</sect3>
- <sect3>
+ <sect3 xml:id="zfs-quotas">
<title>ZFS Quotas</title>
<para>ZFS supports different types of quotas: the refquota,
More information about the svn-doc-head
mailing list