DEVEL15-man-page-syntax-errors-20090518
[openafs.git] / doc / man-pages / pod1 / vos_release.pod
1 =head1 NAME
2
3 vos_release - Updates read-only volumes to match the read/write source volume
4
5 =head1 SYNOPSIS
6
7 =for html
8 <div class="synopsis">
9
10 B<vos release> S<<< B<-id> <I<volume name or ID>> >>> [B<-f>]
11     S<<< [B<-cell> <I<cell name>>] >>> [B<-noauth>] [B<-localauth>] [B<-verbose>]
12     [B<-help>]
13
14 B<vos rel> S<<< B<-i> <I<volume name or ID>> >>> [B<-f>] S<<< [B<-c> <I<cell name>>] >>>
15     [B<-n>] [B<-l>] [B<-v>] [B<-h>]
16
17 =for html
18 </div>
19
20 =head1 DESCRIPTION
21
22 The B<vos release> command copies the contents of the indicated read/write
23 source volume to each read-only site defined in the source volume's Volume
24 Location Database (VLDB) entry. (Use the B<vos addsite> command to define
25 sites as necessary before issuing this command). Each read-only copy has
26 the same name as read/write source with the addition of a C<.readonly>
27 extension.
28
29 For users to have a consistent view of the file system, the release of the
30 new volume version must be atomic: either all read-only sites receive the
31 new version, or all sites keep the version they currently have. The B<vos
32 release> command is designed to ensure that all copies of the volume's
33 read-only version match both the read/write source and each other. In
34 cases where problems such as machine or server process outages prevent
35 successful completion of the release operation, AFS uses two mechanisms to
36 alert the administrator.
37
38 First, the command interpreter generates an error message on the standard
39 error stream naming each read-only site that did not receive the new
40 volume version. Second, during the release operation the Volume Location
41 (VL) Server marks site definitions in the VLDB entry with flags (C<New
42 release> and C<Old release>) that indicate whether or not the site has the
43 new volume version. If any flags remain after the operation completes, it
44 was not successful. The Cache Manager refuses to access a read-only site
45 marked with the C<Old release> flag, which potentially imposes a greater
46 load on the sites marked with the C<New release> flag. It is important to
47 investigate and eliminate the cause of the failure and then to issue the
48 B<vos release> command as many times as necessary to complete the release
49 without errors.
50
51 The pattern of site flags remaining in the volume's VLDB entry after a
52 failed release operation can help determine the point at which the
53 operation failed. Use the B<vos examine> or B<vos listvldb> command to
54 display the VLDB entry. The VL Server sets the flags in concert with the
55 Volume Server's operations, as follows:
56
57 =over 4
58
59 =item *
60
61 Before the operation begins, the VL Server sets the C<New release> flag on
62 the read/write site definition in the VLDB entry and the C<Old release>
63 flag on read-only site definitions (unless the read-only site has been
64 defined since the last release operation and has no actual volume, in
65 which case its site flag remains C<Not released>).
66
67 =item *
68
69 If necessary, the Volume Server creates a temporary copy (a I<clone>) of
70 the read/write source called the ReleaseClone (see the following
71 discussion of when the Volume Server does or does not create a new
72 ReleaseClone.) It assigns the ReleaseClone its own volume ID number, which
73 the VL Server records in the C<RClone> field of the source volume's VLDB
74 entry.
75
76 =item *
77
78 The Volume Server distributes a copy of the ReleaseClone to each read-only
79 site defined in the VLDB entry. As the site successfully receives the new
80 clone, the VL Server sets the site's flag in the VLDB entry to C<New
81 release>.
82
83 =item *
84
85 When all the read-only copies are successfully released, the VL Server
86 clears all the C<New release> site flags. The ReleaseClone is no longer
87 needed, so the Volume Server deletes it and the VL Server erases its ID
88 from the VLDB entry.
89
90 =back
91
92 By default, the Volume Server determines automatically whether or not it
93 needs to create a new ReleaseClone:
94
95 =over 4
96
97 =item *
98
99 If there are no flags (C<New release>, C<Old release>, or C<Not released>)
100 on site definitions in the VLDB entry, the previous B<vos release> command
101 completed successfully and all read-only sites currently have the same
102 volume. The Volume Server infers that the current B<vos release> command
103 was issued because the read/write volume has changed. The Volume Server
104 creates a new ReleaseClone and distributes it to all of the read-only
105 sites.
106
107 =item *
108
109 If any site definition in the VLDB entry is marked with a flag, either the
110 previous release operation did not complete successfully or a new
111 read-only site was defined since the last release. The Volume Server does
112 not create a new ReleaseClone, instead distributing the existing
113 ReleaseClone to sites marked with the C<Old release> or C<Not released>
114 flag. As previously noted, the VL Server marks each VLDB site definition
115 with the C<New release> flag as the site receives the ReleaseClone, and
116 clears all flags after all sites successfully receive it.
117
118 =back
119
120 To override the default behavior, forcing the Volume Server to create and
121 release a new ReleaseClone to the read-only sites, include the B<-f>
122 flag. This is appropriate if, for example, the data at the read/write site
123 has changed since the existing ReleaseClone was created during the
124 previous release operation.
125
126 =head1 OPTIONS
127
128 =over 4
129
130 =item B<-id> <I<volume name or id>>
131
132 Specifies either the complete name or volume ID number of a read/write
133 volume.
134
135 =item B<-f>
136
137 Creates a new ReleaseClone and distributes it all read-only sites
138 regardless of whether or not any site definitions in the VLDB entry are
139 marked with a flag.
140
141 =item B<-cell> <I<cell name>>
142
143 Names the cell in which to run the command. Do not combine this argument
144 with the B<-localauth> flag. For more details, see L<vos(1)>.
145
146 =item B<-noauth>
147
148 Assigns the unprivileged identity C<anonymous> to the issuer. Do not
149 combine this flag with the B<-localauth> flag. For more details, see
150 L<vos(1)>.
151
152 =item B<-localauth>
153
154 Constructs a server ticket using a key from the local
155 F</usr/afs/etc/KeyFile> file. The B<vos> command interpreter presents it
156 to the Volume Server and Volume Location Server during mutual
157 authentication. Do not combine this flag with the B<-cell> argument or
158 B<-noauth> flag. For more details, see L<vos(1)>.
159
160 =item B<-verbose>
161
162 Produces on the standard output stream a detailed trace of the command's
163 execution. If this argument is omitted, only warnings and error messages
164 appear.
165
166 =item B<-help>
167
168 Prints the online help for this command. All other valid options are
169 ignored.
170
171 =back
172
173 =head1 EXAMPLES
174
175 The following command clones the read/write volume usr and releases it to
176 the read-only sites defined in its VLDB entry.
177
178    % vos release usr
179
180 =head1 PRIVILEGE REQUIRED
181
182 The issuer must be listed in the F</usr/afs/etc/UserList> file on the
183 machine specified with the B<-server> argument and on each database server
184 machine. If the B<-localauth> flag is included, the issuer must instead be
185 logged on to a server machine as the local superuser C<root>.
186
187 =head1 SEE ALSO
188
189 L<vos(1)>,
190 L<vos_addsite(1)>,
191 L<vos_examine(1)>,
192 L<vos_listvldb(1)>
193
194 =head1 COPYRIGHT
195
196 IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
197
198 This documentation is covered by the IBM Public License Version 1.0.  It was
199 converted from HTML to POD by software written by Chas Williams and Russ
200 Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.