.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.ie \nF \{\
.    de IX
.    tm Index:\\$1\t\\n%\t"\\$2"
..
.    nr % 0
.    rr F
.\}
.el \{\
.    de IX
..
.\}
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
.    \" fudge factors for nroff and troff
.if n \{\
.    ds #H 0
.    ds #V .8m
.    ds #F .3m
.    ds #[ \f1
.    ds #] \fP
.\}
.if t \{\
.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
.    ds #V .6m
.    ds #F 0
.    ds #[ \&
.    ds #] \&
.\}
.    \" simple accents for nroff and troff
.if n \{\
.    ds ' \&
.    ds ` \&
.    ds ^ \&
.    ds , \&
.    ds ~ ~
.    ds /
.\}
.if t \{\
.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
.    \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
.    \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
.    \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
.    ds : e
.    ds 8 ss
.    ds o a
.    ds d- d\h'-1'\(ga
.    ds D- D\h'-1'\(hy
.    ds th \o'bp'
.    ds Th \o'LP'
.    ds ae ae
.    ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "VOS_RELEASE 1"
.TH VOS_RELEASE 1 "2012-01-23" "OpenAFS" "AFS Command Reference"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
vos_release \- Updates read\-only volumes to match the read/write source volume
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
\&\fBvos release\fR \fB\-id\fR\ <\fIvolume\ name\ or\ \s-1ID\s0\fR> [\fB\-force\fR]
    [\fB\-cell\fR\ <\fIcell\ name\fR>]
    [\fB\-noauth\fR] [\fB\-localauth\fR]
    [\fB\-verbose\fR] [\fB\-encrypt\fR] [\fB\-noresolve\fR] [\fB\-help\fR]
.PP
\&\fBvos rel\fR \fB\-i\fR\ <\fIvolume\ name\ or\ \s-1ID\s0\fR>
    [\fB\-f\fR] [\fB\-c\fR\ <\fIcell\ name\fR>]
    [\fB\-noa\fR] [\fB\-l\fR] [\fB\-v\fR] [\fB\-e\fR] [\fB\-nor\fR] [\fB\-h\fR]
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
The \fBvos release\fR command copies the contents of the indicated read/write
source volume to each read-only site defined in the source volume's Volume
Location Database (\s-1VLDB\s0) entry. (Use the \fBvos addsite\fR command to define
sites as necessary before issuing this command). Each read-only copy has
the same name as read/write source with the addition of a \f(CW\*(C`.readonly\*(C'\fR
extension.
.PP
For users to have a consistent view of the file system, the release of the
new volume version must be atomic: either all read-only sites receive the
new version, or all sites keep the version they currently have. The \fBvos
release\fR command is designed to ensure that all copies of the volume's
read-only version match both the read/write source and each other. In
cases where problems such as machine or server process outages prevent
successful completion of the release operation, \s-1AFS\s0 uses two mechanisms to
alert the administrator.
.PP
First, the command interpreter generates an error message on the standard
error stream naming each read-only site that did not receive the new
volume version. Second, during the release operation the Volume Location
(\s-1VL\s0) Server marks site definitions in the \s-1VLDB\s0 entry with flags (\f(CW\*(C`New
release\*(C'\fR and \f(CW\*(C`Old release\*(C'\fR) that indicate whether or not the site has the
new volume version. If any flags remain after the operation completes, it
was not successful. The Cache Manager refuses to access a read-only site
marked with the \f(CW\*(C`Old release\*(C'\fR flag, which potentially imposes a greater
load on the sites marked with the \f(CW\*(C`New release\*(C'\fR flag. It is important to
investigate and eliminate the cause of the failure and then to issue the
\&\fBvos release\fR command as many times as necessary to complete the release
without errors.
.PP
The pattern of site flags remaining in the volume's \s-1VLDB\s0 entry after a
failed release operation can help determine the point at which the
operation failed. Use the \fBvos examine\fR or \fBvos listvldb\fR command to
display the \s-1VLDB\s0 entry. The \s-1VL\s0 Server sets the flags in concert with the
Volume Server's operations, as follows:
.IP "\(bu" 4
Before the operation begins, the \s-1VL\s0 Server sets the \f(CW\*(C`New release\*(C'\fR flag on
the read/write site definition in the \s-1VLDB\s0 entry and the \f(CW\*(C`Old release\*(C'\fR
flag on read-only site definitions (unless the read-only site has been
defined since the last release operation and has no actual volume, in
which case its site flag remains \f(CW\*(C`Not released\*(C'\fR).
.IP "\(bu" 4
If necessary, the Volume Server creates a temporary copy (a \fIclone\fR) of
the read/write source called the ReleaseClone (see the following
discussion of when the Volume Server does or does not create a new
ReleaseClone.) It assigns the ReleaseClone its own volume \s-1ID\s0 number, which
the \s-1VL\s0 Server records in the \f(CW\*(C`RClone\*(C'\fR field of the source volume's \s-1VLDB\s0
entry.
.IP "\(bu" 4
The Volume Server distributes a copy of the ReleaseClone to each read-only
site defined in the \s-1VLDB\s0 entry. As the site successfully receives the new
clone, the \s-1VL\s0 Server sets the site's flag in the \s-1VLDB\s0 entry to \f(CW\*(C`New
release\*(C'\fR.
.IP "\(bu" 4
When all the read-only copies are successfully released, the \s-1VL\s0 Server
clears all the \f(CW\*(C`New release\*(C'\fR site flags. The ReleaseClone is no longer
needed, so the Volume Server deletes it and the \s-1VL\s0 Server erases its \s-1ID\s0
from the \s-1VLDB\s0 entry.
.PP
By default, the Volume Server determines automatically whether or not it
needs to create a new ReleaseClone:
.IP "\(bu" 4
If there are no flags (\f(CW\*(C`New release\*(C'\fR, \f(CW\*(C`Old release\*(C'\fR, or \f(CW\*(C`Not released\*(C'\fR)
on site definitions in the \s-1VLDB\s0 entry, the previous \fBvos release\fR command
completed successfully and all read-only sites currently have the same
volume. The Volume Server infers that the current \fBvos release\fR command
was issued because the read/write volume has changed. The Volume Server
creates a new ReleaseClone and distributes it to all of the read-only
sites.
.IP "\(bu" 4
If any site definition in the \s-1VLDB\s0 entry is marked with a flag, either the
previous release operation did not complete successfully or a new
read-only site was defined since the last release. The Volume Server does
not create a new ReleaseClone, instead distributing the existing
ReleaseClone to sites marked with the \f(CW\*(C`Old release\*(C'\fR or \f(CW\*(C`Not released\*(C'\fR
flag. As previously noted, the \s-1VL\s0 Server marks each \s-1VLDB\s0 site definition
with the \f(CW\*(C`New release\*(C'\fR flag as the site receives the ReleaseClone, and
clears all flags after all sites successfully receive it.
.PP
To override the default behavior, forcing the Volume Server to create and
release a new ReleaseClone to the read-only sites, include the \fB\-force\fR
flag. This is appropriate if, for example, the data at the read/write site
has changed since the existing ReleaseClone was created during the
previous release operation.
.SH "OPTIONS"
.IX Header "OPTIONS"
.IP "\fB\-id\fR <\fIvolume name or id\fR>" 4
.IX Item "-id <volume name or id>"
Specifies either the complete name or volume \s-1ID\s0 number of a read/write
volume.
.IP "\fB\-force\fR" 4
.IX Item "-force"
Creates a new ReleaseClone and distributes it all read-only sites
regardless of whether or not any site definitions in the \s-1VLDB\s0 entry are
marked with a flag.
.IP "\fB\-cell\fR <\fIcell name\fR>" 4
.IX Item "-cell <cell name>"
Names the cell in which to run the command. Do not combine this argument
with the \fB\-localauth\fR flag. For more details, see \fIvos\fR\|(1).
.IP "\fB\-noauth\fR" 4
.IX Item "-noauth"
Assigns the unprivileged identity \f(CW\*(C`anonymous\*(C'\fR to the issuer. Do not
combine this flag with the \fB\-localauth\fR flag. For more details, see
\&\fIvos\fR\|(1).
.IP "\fB\-localauth\fR" 4
.IX Item "-localauth"
Constructs a server ticket using a key from the local
\&\fI/usr/afs/etc/KeyFile\fR file. The \fBvos\fR command interpreter presents it
to the Volume Server and Volume Location Server during mutual
authentication. Do not combine this flag with the \fB\-cell\fR argument or
\&\fB\-noauth\fR flag. For more details, see \fIvos\fR\|(1).
.IP "\fB\-verbose\fR" 4
.IX Item "-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.
.IP "\fB\-encrypt\fR" 4
.IX Item "-encrypt"
Encrypts the command so that the operation's results are not transmitted
across the network in clear text. This option is available in OpenAFS
versions 1.4.11 or later and 1.5.60 or later.
.IP "\fB\-noresolve\fR" 4
.IX Item "-noresolve"
Shows all servers as \s-1IP\s0 addresses instead of the \s-1DNS\s0 name. This is very
useful when the server address is registered as 127.0.0.1 or when dealing
with multi-homed servers. This option is available in OpenAFS
versions 1.4.8 or later and 1.5.35 or later.
.IP "\fB\-help\fR" 4
.IX Item "-help"
Prints the online help for this command. All other valid options are
ignored.
.SH "EXAMPLES"
.IX Header "EXAMPLES"
The following command clones the read/write volume usr and releases it to
the read-only sites defined in its \s-1VLDB\s0 entry.
.PP
.Vb 1
\&   % vos release usr
.Ve
.SH "PRIVILEGE REQUIRED"
.IX Header "PRIVILEGE REQUIRED"
The issuer must be listed in the \fI/usr/afs/etc/UserList\fR file on the
machine specified with the \fB\-server\fR argument and on each database server
machine. If the \fB\-localauth\fR flag is included, the issuer must instead be
logged on to a server machine as the local superuser \f(CW\*(C`root\*(C'\fR.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fIvos\fR\|(1),
\&\fIvos_addsite\fR\|(1),
\&\fIvos_examine\fR\|(1),
\&\fIvos_listvldb\fR\|(1)
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
\&\s-1IBM\s0 Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
.PP
This documentation is covered by the \s-1IBM\s0 Public License Version 1.0.  It was
converted from \s-1HTML\s0 to \s-1POD\s0 by software written by Chas Williams and Russ
Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.