=head1 NAME

vos_setfields - Sets the quota or clear the access counter on a volume.

=head1 SYNOPSIS

=for html
<div class="synopsis">

B<vos setfields> S<<< B<-id> <I<volume name or ID>> >>>
    S<<< B<-maxquota> <I<quota (KB)>> >>> [B<-clearuse>]
    S<<< [B<-cell> <I<cell name>>] >>> [B<-noauth>] [B<-localauth>]
    [B<-verbose>] [B<-encrypt>] [b<-noresolve>] [B<-help>]

B<vos se> S<<< B<-id> <I<volume name or ID>> >>>
    S<<< B<-maxquota> <I<quota (KB)>> >>> [B<-clearuse>]
    S<<< [B<-cell> <I<cell name>>] >>> [B<-noauth>] [B<-localauth>]
    [B<-verbose>] [B<-encrypt>] [b<-noresolve>] [B<-help>]

=for html
</div>

=head1 DESCRIPTION

The B<vos setfields> command can set the quota on a volume, and it can
clear the access counter on a volume. This command differs from
B<fs setquota> because only the volume name is needed to set the quota,
whereas the path to the volume is needed with B<fs setquota>.

If the B<-maxquota> and B<-clearuse> flags are missing, then no action is
taken.

=head1 CAUTIONS

This command is not effective on read-only or backup volumes.

=head1 OPTIONS

=over 4

=item B<-id> <I<volume name or id>>

Identifies the volume on which to operate, either by its complete name or
volume ID number.

=item B<-maxquota> <I<cell name>>

Sets the maximum amount of file server disk space the volume can
occupy. Specify the number of one-kilobyte blocks as a positive integer
(C<1024> is one megabyte). A value of C<0> sets an unlimited quota, but
the size of the disk partition that houses the volume places an absolute
limit on the volume's size.

=item B<-clearuse>

Clears the access counter on a volumes, which is shown as C<X accesses in
the past day (i.e., vnode references)> in the B<vos examine> output.

=item B<-cell> <I<cell name>>

Names the cell in which to run the command. Do not combine this argument
with the B<-localauth> flag. For more details, see L<vos(1)>.

=item B<-noauth>

Assigns the unprivileged identity C<anonymous> to the issuer. Do not
combine this flag with the B<-localauth> flag. For more details, see
L<vos(1)>.

=item B<-localauth>

Constructs a server ticket using a key from the local
F</usr/afs/etc/KeyFile> file. The B<vos> command interpreter presents it
to the Volume Server and Volume Location Server during mutual
authentication. Do not combine this flag with the B<-cell> argument or
B<-noauth> flag. For more details, see L<vos(1)>.

=item B<-encrypt>

Encrypts the command so that the operation's results are not transmitted
across the network in clear text.

=item B<-noresolve>

Shows all servers as IP addresses instead of the DNS name. This is very
useful when the server address is registered as 127.0.0.1 or when dealing
with multi-homed servers. The B<-noresolve> option is available in OpenAFS
versions 1.4.8 or later and 1.5.35 or later.

=item B<-verbose>

Produces on the standard output stream a detailed trace of the command's
execution. If this argument is omitted, only warnings and error messages
appear.

=item B<-help>

Prints the online help for this command. All other valid options are
ignored.

=back

=head1 OUTPUT

This command produces no output other than error messages.

=head1 EXAMPLES

To set a 123KB quota on the root.cell volume, the following command may be
used:

   % vos setfields -id root.cell -maxquota 123

To clear the access counter on the root.cell volume, use the following
command:

   % vos setfields -id root.cell -clearuse

The above commands may be combined as follows:

   % vos setfields -id root.cell -maxquota 123 -clearuse

=head1 PRIVILEGE REQUIRED

The issuer must be listed in the F</usr/afs/etc/UserList> file on the
machine specified with the B<-server> argument and on each database server
machine. If the B<-localauth> flag is included, the issuer must instead be
logged on to a server machine as the local superuser C<root>.

=head1 SEE ALSO

L<fs_setquota(1)>,
L<vos(1)>,
L<vos_examine(1)>

=head1 COPYRIGHT

Copyright 2009 Jason Edgecombe <jason@rampaginggeek.com>

This documentation is covered by the BSD License as written in the
doc/LICENSE file. This man page was written by Jason Edgecombe for
OpenAFS.
