=head1 NAME

vos_create - Creates a read/write volume and associated VLDB entry

=head1 SYNOPSIS

=for html
<div class="synopsis">

B<vos create> S<<< B<-server> <I<machine name>> >>> S<<< B<-partition> <I<partition name>> >>>
    S<<< B<-name> <I<volume name>> >>> S<<< [B<-maxquota> <I<initial quota (KB)>>] >>>
    S<<< [B<-cell> <I<cell name>>] >>> [B<-noauth>] [B<-localauth>] [B<-verbose>]
    [B<-help>]

B<vos cr> S<<< B<-s> <I<machine name>> >>> S<<< B<-p> <I<partition name>> >>>
    S<<< B<-na> <I<volume name>> >>> S<<< [B<-m> <I<initial quota (KB)>>] >>>
    S<<< [B<-c> <I<cell name>>] >>> [B<-no>] [B<-l>] [B<-v>] [B<-h>]

=for html
</div>

=head1 DESCRIPTION

The B<vos create> command creates a read/write volume with the name
specified by the B<-name> argument at the site specified by the B<-server>
and B<-partition> arguments. In addition, the command allocates or sets
the following:

=over 4

=item *

Volume ID numbers for the read/write volume and its associated read-only
and backup volumes (this command does not actually create the latter two
types of volume). A volume ID number is an identification number
guaranteed to be unique within a cell.

=item *

An access control list (ACL) associated with the volume's root directory,
which takes the same name as volume's mount point when the volume is
mounted with the B<fs mkmount> command. An entry that grants all seven
permissions to the members of the system:administrators group is
automatically placed on the ACL. (In addition, the File Server by default
always implicitly grants the C<l> (lookup) and C<a> (administer)
permissions on every ACL to members of the system:administrators group,
even when the group does not appear on an ACL; use the B<-implicit>
argument to the B<fileserver> initialization command to alter the set of
rights on a server-by-server basis if desired.)

=item *

The volume's space quota, set to 5000 kilobyte blocks by default. Use the
B<-maxquota> argument to specify a different quota, or use the B<fs
setquota> command to change the volume's quota after mounting the volume
with the B<fs mkmount> command.

=back

The volume is empty when created. To access it via the Cache Manager,
mount it in the file space by using the B<fs mkmount> command.

=head1 CAUTIONS

Currently, the maximum size of a volume is 2 terabytes (2^31 bytes)
and the maximum size of a /vicepX partition on a fileserver is also 2
terabytes. The fileserver will not report an error when it has access
to a partition larger than 2 terabytes, but it will probably fail if
the administrator attempts to use more than 2 terabytes of space. In
addition, there are reports of erroneous disk usage numbers when
B<vos partinfo> or other OpenAFS disk reporting tools are used with
partitions larger than 2 terabytes.

=head1 OPTIONS

=over 4

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

Identifies the file server machine on which to create the read/write
volume. Provide the machine's IP address or its host name (either fully
qualified or using an unambiguous abbreviation). For details, see
L<vos(1)>.

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

Identifies the partition on which to create the read/write volume, on the
file server machine specified by the B<-server> argument.  Provide the
partition's complete name with preceding slash (for example, C</vicepa>)
or use one of the three acceptable abbreviated forms. For details, see
L<vos(1)>.

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

Specifies a name for the read/write volume. The maximum length is 22
characters, which can include any alphanumeric or punctuation
character. By convention, periods separate the fields in a name.  Do not
apply the C<.backup> or C<.readonly> extension to a read/write volume
name; they are reserved for the Volume Server to add to the read/write
name when creating those backup and read-only volumes respectively.

=item B<-maxquota> <I<volume quota>>

Specifies the maximum amount of disk space the volume can use, as a number
of kilobyte blocks (a value of C<1024> is one megabyte). The value C<0>
(zero) grants an unlimited quota, but the size of the disk partition that
houses the volume places an absolute limit on its size.  If this argument
is omitted, the default value is C<5000>.

=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<-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

The Volume Server produces the following message to confirm that it
created the volume:

   Volume <volume_ID> created on partition <partition_name> of <machine_name>

=head1 EXAMPLES

The following command creates the read/write volume C<user.pat> on the
F</vicepf> partition of the file server machine C<fs4.abc.com>.

   % vos create -server fs4.abc.com -partition /vicepf -name user.pat
   Volume user.pat created on partition /vicepf of fs4.abc.com

=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<vos(1)>

=head1 COPYRIGHT

IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.

This documentation is covered by the IBM Public License Version 1.0.  It was
converted from HTML to POD by software written by Chas Williams and Russ
Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.
