1 <?xml version="1.0" encoding="UTF-8"?>
2 <chapter id="HDRWQ174">
3 <title>Managing Volumes</title>
5 <para>This chapter explains how to manage the volumes stored on file server machines. The volume is the designated unit of
6 administration in AFS, so managing them is a large part of the administrator's duties.</para>
9 <title>Summary of Instructions</title>
11 <para>This chapter explains how to perform the following tasks by using the indicated commands:</para>
13 <informaltable frame="none">
15 <colspec colwidth="58*" />
17 <colspec colwidth="42*" />
21 <entry>Create read/write volume</entry>
23 <entry><emphasis role="bold">vos create</emphasis></entry>
27 <entry>Create read-only volume</entry>
29 <entry><emphasis role="bold">vos addsite</emphasis> <emphasis role="bold">and</emphasis> <emphasis role="bold">vos
30 release</emphasis></entry>
34 <entry>Create backup volume</entry>
36 <entry><emphasis role="bold">vos backup</emphasis></entry>
40 <entry>Create many backup volumes at once</entry>
42 <entry><emphasis role="bold">vos backupsys</emphasis></entry>
46 <entry>Examine VLDB entry</entry>
48 <entry><emphasis role="bold">vos listvldb</emphasis></entry>
52 <entry>Examine volume header</entry>
54 <entry><emphasis role="bold">vos listvol</emphasis></entry>
58 <entry>Examine both VLDB entry and volume header</entry>
60 <entry><emphasis role="bold">vos examine</emphasis></entry>
64 <entry>Display volume's name</entry>
66 <entry><emphasis role="bold">fs listquota</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">fs
67 examine</emphasis></entry>
71 <entry>Display volume's ID number</entry>
73 <entry><emphasis role="bold">fs examine</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">vos
74 examine</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">vos listvol</emphasis></entry>
78 <entry>Display partition's size and space available</entry>
80 <entry><emphasis role="bold">vos partinfo</emphasis></entry>
84 <entry>Display volume's location</entry>
86 <entry><emphasis role="bold">fs whereis</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">vos
87 examine</emphasis></entry>
91 <entry>Create mount point</entry>
93 <entry><emphasis role="bold">fs mkmount</emphasis></entry>
97 <entry>Remove mount point</entry>
99 <entry><emphasis role="bold">fs rmmount</emphasis></entry>
103 <entry>Display mount point</entry>
105 <entry><emphasis role="bold">fs lsmount</emphasis></entry>
109 <entry>Move read/write volume</entry>
111 <entry><emphasis role="bold">vos move</emphasis></entry>
115 <entry>Synchronize VLDB with volume headers</entry>
117 <entry><emphasis role="bold">vos syncvldb</emphasis> <emphasis role="bold">and</emphasis> <emphasis role="bold">vos
118 syncserv</emphasis></entry>
122 <entry>Set volume quota</entry>
124 <entry><emphasis role="bold">fs setvol</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">fs
125 setquota</emphasis></entry>
129 <entry>Display volume quota</entry>
131 <entry><emphasis role="bold">fs quota</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">fs
132 listquota</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">fs examine</emphasis></entry>
136 <entry>Display volume's current size</entry>
138 <entry><emphasis role="bold">fs listquota</emphasis> <emphasis role="bold">or</emphasis> <emphasis role="bold">fs
139 examine</emphasis></entry>
143 <entry>Display list of volumes on a machine/partition</entry>
145 <entry><emphasis role="bold">vos listvol</emphasis></entry>
149 <entry>Remove read/write volume</entry>
151 <entry><emphasis role="bold">vos remove</emphasis> <emphasis role="bold">and</emphasis> <emphasis role="bold">fs
152 rmmount</emphasis></entry>
156 <entry>Remove read-only volume</entry>
158 <entry><emphasis role="bold">vos remove</emphasis></entry>
162 <entry>Remove backup volume</entry>
164 <entry><emphasis role="bold">vos remove</emphasis> <emphasis role="bold">and</emphasis> <emphasis role="bold">fs
165 rmmount</emphasis></entry>
169 <entry>Remove volume; no VLDB change</entry>
171 <entry><emphasis role="bold">vos zap</emphasis></entry>
175 <entry>Remove read-only site definition</entry>
177 <entry><emphasis role="bold">vos remsite</emphasis></entry>
181 <entry>Remove VLDB entry; no volume change</entry>
183 <entry><emphasis role="bold">vos delentry</emphasis></entry>
187 <entry>Dump volume</entry>
189 <entry><emphasis role="bold">vos dump</emphasis></entry>
193 <entry>Restore dumped volume</entry>
195 <entry><emphasis role="bold">vos restore</emphasis></entry>
199 <entry>Rename volume</entry>
201 <entry><emphasis role="bold">vos rename</emphasis>, <emphasis role="bold">fs rmmount</emphasis> <emphasis
202 role="bold">and</emphasis> <emphasis role="bold">fs mkmount</emphasis></entry>
206 <entry>Unlock volume</entry>
208 <entry><emphasis role="bold">vos unlock</emphasis></entry>
212 <entry>Unlock multiple volumes</entry>
214 <entry><emphasis role="bold">vos unlockvldb</emphasis></entry>
218 <entry>Lock volume</entry>
220 <entry><emphasis role="bold">vos lock</emphasis></entry>
227 <sect1 id="HDRWQ177">
228 <title>About Volumes</title>
231 <primary>volume</primary>
233 <secondary>defined</secondary>
236 <para>An AFS <emphasis>volume</emphasis> is a logical unit of disk space that functions like a container for the files in an AFS
237 directory, keeping them all together on one partition of a file server machine. To make a volume's contents visible in the
238 cell's file tree and accessible to users, you mount the volume at a directory location in the AFS filespace. The association
239 between the volume and its location in the filespace is called a <emphasis>mount point</emphasis>, and because of AFS's internal
240 workings it looks and acts just like a standard directory element. Users can access and manipulate a volume's contents in the
241 same way they access and manipulate the contents of a standard UNIX directory. For more on the relationship between volumes and
242 directories, see <link linkend="HDRWQ183">About Mounting Volumes</link>.</para>
244 <para>Many of an administrator's daily activities involve manipulating volumes, since they are the basic storage and
245 administrative unit of AFS. For a discussion of some of the ways volumes can make your job easier, see <link
246 linkend="HDRWQ179">How Volumes Improve AFS Efficiency</link>.</para>
248 <sect2 id="HDRWQ178">
249 <title>The Three Types of Volumes</title>
251 <para>There are three types of volumes in AFS, as described in the following list: <itemizedlist>
253 <para>The single <emphasis>read/write</emphasis> version of a volume houses the modifiable versions of the files and
254 directories in that volume. It is often referred to as the <emphasis>read/write</emphasis> source because volumes of the
255 other two types are derived from it by a copying procedure called <emphasis>cloning</emphasis>. For instructions on
256 creating read/write volumes, see <link linkend="HDRWQ185">Creating Read/write Volumes</link>.</para>
259 <primary>read/write volume</primary>
261 <secondary>defined</secondary>
266 <para>A <emphasis>read-only</emphasis> volume is a copy of the read/write source volume and can exist at multiple
267 <emphasis>sites</emphasis> (a site is a particular partition on a particular file server machine). Placing the same data
268 at more than one site is called <emphasis>replication</emphasis>; see <link linkend="HDRWQ179">How Volumes Improve AFS
269 Efficiency</link>. As the name suggests, a read-only volume's contents do not change automatically as the read/write
270 source changes, but only when an administrator issues the <emphasis role="bold">vos release</emphasis> command. For
271 users to have a consistent view of the AFS filespace, all copies of the read-only volume must match each other and their
272 read/write source. All read-only volumes share the same name, which is derived by adding the <emphasis
273 role="bold">.readonly</emphasis> extension to the read/write source's name. For instructions on creating of read-only
274 volumes, see <link linkend="HDRWQ192">Replicating Volumes (Creating Read-only Volumes)</link>.</para>
277 <primary>read-only volume</primary>
279 <secondary>defined</secondary>
283 <primary>site</primary>
285 <secondary>volume, defined</secondary>
289 <primary>volume</primary>
291 <secondary>site, defined</secondary>
296 <para>A <emphasis>backup</emphasis> volume is a clone of the read/write source volume and is stored at the same site as
297 the source. A backup version is useful because it records the state of the read/write source at a certain time, allowing
298 recovery of data that is later mistakenly changed or deleted (for further discussion see <link linkend="HDRWQ179">How
299 Volumes Improve AFS Efficiency</link>). A backup volume's name is derived by adding the <emphasis
300 role="bold">.backup</emphasis> extension to the read/write source's name. For instructions on creating of backup
301 volumes, see <link linkend="HDRWQ201">Creating Backup Volumes</link>.</para>
304 <primary>backup volume</primary>
306 <secondary>defined</secondary>
310 <para>A backup volume is not the same as the backup of a volume transferred to tape using the AFS Backup System,
311 although making a backup version of a volume is usually a stage in the process of backing up the volume to tape. For
312 information on backing up a volume using the AFS Backup System, see <link linkend="HDRWQ296">Backing Up
316 </itemizedlist></para>
318 <para>As noted, the three types of volumes are related to one another: read-only and backup volumes are both derived from a
319 read/write volume through a process called cloning. Read-only and backup volumes are exact copies of the read/write source at
320 the time they are created.</para>
323 <sect2 id="HDRWQ179">
324 <title>How Volumes Improve AFS Efficiency</title>
327 <primary>volume</primary>
329 <secondary>benefits for efficiency</secondary>
332 <para>Volumes make your cell easier to manage and more efficient in the following three ways: <itemizedlist>
334 <para>Volumes are easy to move between partitions, on the same or different machines, because they are by definition
335 smaller than a partition. Perhaps the most common reasons to move volumes are to balance the load among file server
336 machines or to take advantage of greater disk capacity on certain machines. You can move volumes as often as necessary
337 without disrupting user access to their contents, because the move procedure makes the contents unavailable for only a
338 few seconds. The automatic tracking of volume locations in the Volume Location Database (VLDB) assures that access
339 remains transparent. For instructions on moving volumes, see <link linkend="HDRWQ226">Moving Volumes</link>.</para>
342 <primary>volume</primary>
344 <secondary>in load balancing</secondary>
349 <para>Volumes are the unit of replication in AFS. <emphasis>Replication</emphasis> refers to creating a read-only clone
350 from the read/write source and distributing of the clone to one or more sites. Replication improves system efficiency
351 because more than one machine can fill requests for popular files. It also boosts system reliability by helping to keep
352 data available in the face of machine or server process outage. In general, volumes containing popular application
353 programs and other files that do not change often are the best candidates for replication, but you can replicate any
354 read/write volume. See <link linkend="HDRWQ192">Replicating Volumes (Creating Read-only Volumes)</link>.</para>
357 <primary>volume</primary>
359 <secondary>as unit of replication</secondary>
363 <primary>replication</primary>
365 <secondary>defined</secondary>
371 <primary>volume</primary>
373 <secondary>as unit of backup</secondary>
376 <para>Volumes are the unit of backup in AFS, in two senses. You can create a backup volume version to preserves the
377 state of a read/write source volume at a specified time. You can mount the backup version in the AFS filespace, enabling
378 users to restore data they have accidentally changed or deleted without administrator assistance, which frees you for
379 more important jobs. If you make a new backup version of user volumes once a day (presumably overwriting the former
380 backup), then users are always be able to retrieve the previous day's version of a file. For instructions, see <link
381 linkend="HDRWQ201">Creating Backup Volumes</link>.</para>
383 <para>Backup also refers to using the AFS Backup System to store permanent copies of volume contents on tape or in a
384 special backup data. See <link linkend="HDRWQ248">Configuring the AFS Backup System</link>and <link
385 linkend="HDRWQ283">Backing Up and Restoring AFS Data</link>.</para>
387 </itemizedlist></para>
390 <sect2 id="HDRWQ180">
391 <title>Volume Information in the VLDB</title>
393 <para>The Volume Location Database (VLDB) includes entries for every volume in a cell. Perhaps the most important information
394 in the entry is the volume's location, which is key to transparent access to AFS data. When a user opens a file, the Cache
395 Manager consults the Volume Location (VL) Server, which maintains the VLDB, for a list of the file server machines that house
396 the volume containing the file. The Cache Manager then requests the file from the File Server running on one of the relevant
397 file server machines. The file location procedure is invisible to the user, who only needs to know the file's pathname.</para>
400 <primary>VLDB</primary>
402 <secondary>volume entry</secondary>
406 <primary>volume</primary>
408 <secondary>entry in VLDB</secondary>
412 <primary>entry in VLDB</primary>
414 <secondary>for volume</secondary>
417 <para>The VLDB volume entry for a read/write volume also contains the pertinent information about the read-only and backup
418 versions, which do not have their own VLDB entries. (The rare exception is a read-only volume that has its own VLDB entry
419 because its read/write source has been removed.) A volume's VLDB entry records the volume's name, the unique volume ID number
420 for each version (read/write, read-only, backup, and releaseClone), a count of the number of sites that house a read/write or
421 read-only version, and a list of the sites.</para>
423 <para>To display the VLDB entry for one or more volumes, use the <emphasis role="bold">vos listvldb</emphasis> command as
424 described in <link linkend="HDRWQ218">To display VLDB entries</link>. To display the VLDB entry for a single volume along with
425 its <emphasis>volume header</emphasis>, use the <emphasis role="bold">vos examine</emphasis> command as described in <link
426 linkend="HDRWQ222">To display one volume's VLDB entry and volume header</link>. (See the following section for a description
427 of the volume header.)</para>
430 <sect2 id="HDRWQ181">
431 <title>The Information in Volume Headers</title>
434 <primary>volume</primary>
436 <secondary>header</secondary>
438 <see>volume header</see>
442 <primary>volume header</primary>
444 <secondary>about</secondary>
447 <para>Whereas all versions of a volume share one VLDB entry, each volume on an AFS server partition has its own volume header,
448 a data structure that maps the files and directories in the volume to physical memory addresses on the partition that stores
449 them. The volume header binds the volume's contents into a logical unit without requiring that they be stored in contiguous
450 memory blocks. The volume header also records the following information about the volume, some of it redundant with the VLDB
451 entry: name, volume ID number, type, size, status (online, offline, or busy), space quota, timestamps for creation date and
452 date of last modification, and number of accesses during the current day.</para>
454 <para>To display the volume headers on one or more partitions, use the <emphasis role="bold">vos listvol</emphasis> command as
455 described in <link linkend="HDRWQ220">To display volume headers</link>. To display the VLDB entry for a single volume along
456 with its volume header, use the <emphasis role="bold">vos examine</emphasis> command as described in <link
457 linkend="HDRWQ222">To display one volume's VLDB entry and volume header</link>.</para>
460 <sect2 id="HDRWQ182">
461 <title>Keeping the VLDB and Volume Headers Synchronized</title>
464 <primary>synchrony of VLDB and volume headers</primary>
466 <secondary>maintained by VL and Volume Servers</secondary>
470 <primary>VLDB</primary>
472 <secondary>synchronizing with volume headers</secondary>
476 <primary>volume header</primary>
478 <secondary>synchronizing with VLDB</secondary>
482 <primary>maintaining</primary>
484 <secondary>synchrony of VLDB with volume headers</secondary>
488 <primary>VL Server</primary>
490 <secondary>role in VLDB/volume header synchronization</secondary>
494 <primary>Volume Server</primary>
496 <secondary>role in VLDB/volume header synchronization</secondary>
499 <para>It is vital that the information in the VLDB correspond to the status of the actual volumes on the servers (as recorded
500 in volume headers) as much of the time as possible. If a volume's location information in the VLDB is incorrect, the Cache
501 Manager cannot find access its contents. Whenever you issue a <emphasis role="bold">vos</emphasis> command that changes a
502 volume's status, the Volume Server and VL Server cooperate to keep the volume header and VLDB synchronized. In rare cases, the
503 header and VLDB can diverge, for instance because a <emphasis role="bold">vos</emphasis> operation halts prematurely. For
504 instructions on resynchronizing them, see <link linkend="HDRWQ227">Synchronizing the VLDB and Volume Headers</link>.</para>
507 <sect2 id="HDRWQ183">
508 <title>About Mounting Volumes</title>
511 <primary>mount point</primary>
513 <secondary>defined</secondary>
517 <primary>volume</primary>
519 <secondary>mounting</secondary>
521 <tertiary>about</tertiary>
525 <primary>mounting</primary>
527 <secondary>volume</secondary>
529 <tertiary>about</tertiary>
532 <para>To make a volume's contents visible in the cell's file tree and accessible to users, you mount the volume at a directory
533 location in the AFS filespace. The association between the volume and its location in the filespace is called a
534 <emphasis>mount point</emphasis>. An AFS mount point looks and functions like a regular UNIX file system directory, but
535 structurally it is more like a symbolic link that tells the Cache Manager the name of the volume associated with the
536 directory. A mount point looks and acts like a directory only because the Cache Manager knows how to interpret it.</para>
538 <para>Consider the common case where the Cache Manager needs to retrieve a file requested by an application program. The Cache
539 Manager traverses the file's complete pathname, starting at the AFS root (by convention mounted at the <emphasis
540 role="bold">/afs</emphasis> directory) and continuing to the file. When the Cache Manager encounters (or
541 <emphasis>crosses</emphasis>) a mount point during the traversal, it reads it to learn the name of the volume mounted at that
542 directory location. After obtaining location information about the volume from the Volume Location (VL) Server, the Cache
543 Manager fetches the indicated volume and opens its <emphasis>root directory</emphasis>. The root directory of a volume lists
544 all the files, subdirectories, and mount points that reside in it. The Cache Manager scans the root directory listing for the
545 next element in the pathname. It continues down the path, using this method to interpret any other mount points it encounters,
546 until it reaches the volume that houses the requested file.</para>
549 <primary>root directory</primary>
553 <primary>Cache Manager</primary>
555 <secondary>as interpreter of mount points</secondary>
558 <para>Mount points act as the glue that connects the AFS file space, creating the illusion of a single, seamless file tree
559 even when volumes reside on many different file server machines. A volume's contents are visible and accessible when the
560 volume is mounted at a directory location, and are not accessible at all if the volume is not mounted.</para>
562 <para>You can mount a volume at more than one location in the file tree, but this is not recommended for two reasons. First,
563 it distorts the hierarchical nature of the filespace. Second, the Cache Manager can become confused about which pathname it
564 followed to reach the file (causing unpredictable output from the <emphasis role="bold">pwd</emphasis> command, for example).
565 However, if you mount a volume at more than one directory, the access control list (ACL) associated with the volume's root
566 directory applies to all of the mount points.</para>
569 <primary>mount point</primary>
571 <secondary>creating multiple per volume</secondary>
575 <primary>volume</primary>
577 <secondary>mounting</secondary>
579 <tertiary>more than once</tertiary>
582 <para>There are several types of mount points, each of which the Cache Manager handles in a different way and each of which is
583 appropriate for a different purpose. See <link linkend="HDRWQ208">Mounting Volumes</link>.</para>
586 <sect2 id="HDRWQ184">
587 <title>About Volume Names</title>
590 <primary>volume</primary>
592 <secondary>name</secondary>
594 <see>volume name</see>
598 <primary>length restriction on volume names</primary>
601 <para>A read/write volume's name can be up to 22 characters in length. The Volume Server automatically adds the <emphasis
602 role="bold">.readonly</emphasis> and <emphasis role="bold">.backup</emphasis> extensions to read-only and backup volumes
603 respectively. Do not explicitly add the extensions to volume names, even if they are appropriate.</para>
605 <para>It is conventional for a volume's name to indicate the type of data it houses. For example, it is conventional to name
606 all user volumes <emphasis role="bold">user</emphasis>.username where username is the user's login name. Similarly, many cells
607 elect to put system binaries in volumes with names that begin with the system type code. For a list of other naming
608 conventions, see <link linkend="HDRWQ44">Creating Volumes to Simplify Administration</link>.</para>
611 <primary>conventions</primary>
613 <secondary>volume names</secondary>
617 <primary>volume name</primary>
619 <secondary>conventions</secondary>
624 <sect1 id="HDRWQ185">
625 <title>Creating Read/write Volumes</title>
628 <primary>creating</primary>
630 <secondary>read/write volume</secondary>
634 <primary>volume</primary>
636 <secondary>read/write</secondary>
638 <see>read/write volume</see>
642 <primary>read/write volume</primary>
644 <secondary>creating</secondary>
647 <para>A read/write volume is the most basic type of volume, and must exist before you can create read-only or backup versions of
648 it. When you issue the <emphasis role="bold">vos create</emphasis> command to create a read/write volume, the VL Server creates
649 a VLDB entry for it which records the name you specify, assigns a read/write volume ID number, and reserves the next two
650 consecutive volume ID numbers for read-only and backup versions that possibly are to be created later. At the same time, the
651 Volume Server creates a volume header at the site you designate, allocating space on disk to record the name of the volume's
652 root directory. The name is filled in when you issue the <emphasis role="bold">fs mkmount</emphasis> command to mount the
653 volume, and matches the mount point name. The following is also recorded in the volume header: <itemizedlist>
655 <para>An initial ACL associated with the volume's root directory. By default it grants all seven AFS access permissions to
656 the <emphasis role="bold">system:administrators</emphasis> group. After you mount the volume, you can use the <emphasis
657 role="bold">fs setacl</emphasis> command to add other entries and to remove or change the entry for the <emphasis
658 role="bold">system:administrators</emphasis> group. See <link linkend="HDRWQ573">Setting ACL Entries</link>.</para>
661 <primary>default</primary>
663 <secondary>ACL</secondary>
667 <primary>ACL</primary>
669 <secondary>default on new volume</secondary>
674 <para>A space quota, which limits the amount of disk space the read/write version of the volume can use on the file server
675 partition. The default is of 5000 kilobyte blocks, but you can use the <emphasis role="bold">-maxquota</emphasis> argument
676 to the <emphasis role="bold">vos create</emphasis> command to set a different quota.</para>
678 <para>To change the quota after creation, use the <emphasis role="bold">fs setquota</emphasis> command as described in
679 <link linkend="HDRWQ234">Setting and Displaying Volume Quota and Current Size</link>.</para>
682 <primary>volume quota</primary>
684 <secondary>default for new volume</secondary>
688 <primary>default</primary>
690 <secondary>volume quota</secondary>
693 </itemizedlist></para>
695 <sect2 id="Header_212">
696 <title>To create (and mount) a read/write volume</title>
700 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
701 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
702 display the users in the UserList file</link>. <programlisting>
703 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
704 </programlisting></para>
708 <para>Verify that you have the <emphasis role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>), <emphasis
709 role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>), and <emphasis role="bold">l</emphasis>( <emphasis
710 role="bold">lookup</emphasis>) permissions on the ACL of the directory where you plan to mount the volume. If necessary,
711 issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully described in <link
712 linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
713 % <emphasis role="bold">fs listacl</emphasis> [<<emphasis>dir/file path</emphasis>>]</programlisting></para>
715 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
716 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
717 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
718 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
721 <primary>commands</primary>
723 <secondary>vos partinfo</secondary>
727 <primary>vos commands</primary>
729 <secondary>partinfo</secondary>
733 <listitem id="LIWQ186">
734 <para>Select a site (disk partition on a file server machine) for the new volume. To verify that
735 the site has enough free space to house the volume (now, or if it grows to use its entire quota), issue the <emphasis
736 role="bold">vos partinfo</emphasis> command.</para>
739 <para>The partition-related statistics in this command's output do not always agree with the corresponding values in the
740 output of the standard UNIX <emphasis role="bold">df</emphasis> command. The statistics reported by this command can be
741 up to five minutes old, because the Cache Manager polls the File Server for partition information at that frequency.
742 Also, on some operating systems, the <emphasis role="bold">df</emphasis> command's report of partition size includes
743 reserved space not included in this command's calculation, and so is likely to be about 10% larger.</para>
747 % <emphasis role="bold">vos partinfo</emphasis> <<emphasis>machine name</emphasis>> [<<emphasis>partition name</emphasis>>]</programlisting>
749 <para>where <variablelist>
751 <term><emphasis role="bold">p</emphasis></term>
754 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">partinfo</emphasis>.</para>
759 <term><emphasis role="bold">machine name</emphasis></term>
762 <para>Specifies the file server machine for which to display partition size and usage.</para>
767 <term><emphasis role="bold">partition name</emphasis></term>
770 <para>Names one partition for which to display partition size and usage. If you omit it, the output displays the
771 size and space available for all partitions on the machine.</para>
774 </variablelist></para>
777 <listitem id="LIWQ187">
778 <para>Select a volume name, taking note of the information in <link linkend="HDRWQ184">About Volume
782 <primary>vos commands</primary>
784 <secondary>create</secondary>
786 <tertiary>basic instructions</tertiary>
790 <primary>commands</primary>
792 <secondary>vos create</secondary>
794 <tertiary>basic instructions</tertiary>
798 <listitem id="LIWQ188">
799 <para>Issue the <emphasis role="bold">vos create</emphasis> command to create the volume.
801 % <emphasis role="bold">vos create</emphasis> <<replaceable>machine name</replaceable>> <<replaceable>partition name</replaceable>> <<replaceable>volume name</replaceable>> \
802 [<emphasis role="bold">-maxquota</emphasis> <<replaceable>initial quota (KB)</replaceable>>]
803 </programlisting></para>
805 <para>where <variablelist>
807 <term><emphasis role="bold">cr</emphasis></term>
810 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">create</emphasis>.</para>
815 <term><emphasis role="bold">machine name</emphasis></term>
818 <para>Specifies the file server machine on which to place the volume.</para>
823 <term><emphasis role="bold">partition name</emphasis></term>
826 <para>Specifies the disk partition on which to place the volume.</para>
831 <term><emphasis role="bold">volume name</emphasis></term>
834 <para>Names the volume. It can be up to 22 alphanumeric and punctuation characters in length. Your cell possibly
835 has naming conventions for volumes, such as beginning user volume names with the string <emphasis
836 role="bold">user</emphasis> and using the period to separate parts of the name.</para>
841 <term><emphasis role="bold">-maxquota</emphasis></term>
844 <para>Sets the volume's quota, as a number of kilobyte blocks. If you omit this argument, the quota is set to 5000
845 kilobyte blocks.</para>
848 </variablelist></para>
851 <primary>mounting</primary>
853 <secondary>read/write volume</secondary>
857 <primary>read/write volume</primary>
859 <secondary>mounting</secondary>
863 <primary>commands</primary>
865 <secondary>fs mkmount</secondary>
869 <primary>fs commands</primary>
871 <secondary>mkmount</secondary>
873 <tertiary>for read/write volume</tertiary>
877 <listitem id="LIWQ189">
878 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs mkmount</emphasis> command to mount
879 the volume in the filespace. For complete syntax, see <link linkend="HDRWQ212">To create a regular or read/write mount
880 point</link>. <programlisting>
881 % <emphasis role="bold">fs mkmount</emphasis> <<emphasis>directory</emphasis>> <<emphasis>volume name</emphasis>></programlisting></para>
885 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs lsmount</emphasis> command to verify
886 that the mount point refers to the correct volume. Complete instructions appear in <link linkend="HDRWQ211">To display a
887 mount point</link>. <programlisting>
888 % <emphasis role="bold">fs lsmount</emphasis> <<emphasis>directory</emphasis>></programlisting></para>
892 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs setvol</emphasis> command with the
893 <emphasis role="bold">-offlinemsg</emphasis> argument to record auxiliary information about the volume in its volume
894 header. For example, you can record who owns the volume or where you have mounted it in the filespace. To display the
895 information, use the <emphasis role="bold">fs examine</emphasis> command. <programlisting>
896 % <emphasis role="bold">fs setvol</emphasis> <<replaceable>dir/file path</replaceable>> <emphasis role="bold">-offlinemsg </emphasis> <<replaceable>offline message</replaceable>>
897 </programlisting></para>
899 <para>where <variablelist>
901 <term><emphasis role="bold">sv</emphasis></term>
904 <para>Is an acceptable alias for <emphasis role="bold">setvol</emphasis>(and <emphasis role="bold">setv</emphasis>
905 the shortest acceptable abbreviation).</para>
910 <term><emphasis role="bold">dir/file path</emphasis></term>
913 <para>Names the mount point of the volume with which to associate the message. Partial pathnames are interpreted
914 relative to the current working directory.</para>
916 <para>Specify the read/write path to the mount point, to avoid the failure that results when you attempt to change
917 a read-only volume. By convention, you indicate the read/write path by placing a period before the cell name at
918 the pathname's second level (for example, <emphasis role="bold">/afs/.example.com</emphasis>). For further discussion
919 of the concept of read/write and read-only paths through the filespace, see <link linkend="HDRWQ209">The Rules of
920 Mount Point Traversal</link>.</para>
925 <term><emphasis role="bold">-offlinemsg</emphasis></term>
928 <para>Specifies up to 128 characters of auxiliary information to record in the volume header.</para>
931 </variablelist></para>
937 <sect1 id="HDRWQ190">
938 <title>About Clones and Cloning</title>
941 <primary>cloning</primary>
943 <secondary>defined</secondary>
947 <primary>clone</primary>
951 <primary>vnode index</primary>
955 <primary>backup volume</primary>
957 <secondary>space-saving nature of</secondary>
960 <para>To create a backup or read-only volume, the Volume Server begins by <emphasis>cloning</emphasis> the read/write source
961 volume to create a <emphasis>clone</emphasis>. The Volume Server creates the clone automatically when you issue the <emphasis
962 role="bold">vos backup</emphasis> or <emphasis role="bold">vos backupsys</emphasis> command (for a backup volume) or the
963 <emphasis role="bold">vos release</emphasis> command (for a read-only volume). No special action is required on your
966 <para>A clone is not a copy of the data in the read/write source volume, but rather a copy of the read/write volume's
967 <emphasis>vnode index</emphasis>. The vnode index is a table of pointers between the files and directories in the volume and the
968 physical disk blocks on the partition where the data resides. From the clone, backup and read-only volumes are created in the
969 following manner: <itemizedlist>
971 <para>A read-only volume that occupies the same partition as its read/write source (also known as a <emphasis>read-only
972 clone</emphasis>), and a backup volume, are created by attaching a volume header to the clone. These volumes initially
973 consume very little disk space, because the clone portion (the vnode index) points to exactly the same files as the
974 read/write volume, as illustrated in <link linkend="FIGWQ191">Figure 1</link>. The file sharing is possible only because
975 the clone is on the same partition as the read/write source volume. When a file in the read/write volume is deleted, it is
976 not actually removed from the partition, because the backup or read-only clone still points to it. Similarly, when a file
977 in the read/write is changed, the entire original file is preserved on disk because the clone still points to it, and the
978 read/write volume's vnode index changes to point to newly space for the changed file. When this happens, the backup or
979 read-only volume is said to grow or start occupying actual disk space.</para>
983 <para>A read-only volume that does not occupy the same site as the read/write source is a copy of the clone and of all of
984 the data in the read/write source volume. It occupies the same amount of disk space as the read/write volume did at the
985 time the read-only volume was created.</para>
987 </itemizedlist></para>
989 <figure id="FIGWQ191" label="1">
990 <title>File Sharing Between the Read/write Source and a Clone Volume</title>
994 <imagedata fileref="vnode.png" scale="50" />
1000 <primary>replication</primary>
1002 <secondary>detailed discussion</secondary>
1006 <primary>volume</primary>
1008 <secondary>replicating</secondary>
1012 <primary>volume</primary>
1014 <secondary>read-only</secondary>
1016 <see>read-only volume</see>
1020 <primary>read-only volume</primary>
1022 <secondary>creating</secondary>
1026 <primary>creating</primary>
1028 <secondary>read-only volume</secondary>
1032 <primary>cloning</primary>
1034 <secondary>for replication</secondary>
1038 <primary>read/write volume</primary>
1040 <secondary>cloning</secondary>
1042 <tertiary>for replication</tertiary>
1046 <sect1 id="HDRWQ192">
1047 <title>Replicating Volumes (Creating Read-only Volumes)</title>
1049 <para><emphasis>Replication</emphasis> refers to creating a read-only copy of a read/write volume and distributing the copy to
1050 one or more additional file server machines. Replication makes a volume's contents accessible on more than one file server
1051 machine, which increases data availability. It can also increase system efficiency by reducing load on the network and File
1052 Server. Network load is reduced if a client machine's server preference ranks lead the Cache Manager to access the copy of a
1053 volume stored on the closest file server machine. Load on the File Server is reduced because it issues only one callback for all
1054 data fetched from a read-only volume, as opposed to a callback for each file fetched from a read/write volume. The single
1055 callback is sufficient for an entire read-only volume because the volume does not change except in response to administrator
1056 action, whereas each read/write file can change at any time.</para>
1059 <primary>stages in volume replication</primary>
1063 <primary>site definition stage in replication</primary>
1067 <primary>replication</primary>
1069 <secondary>site definition stage</secondary>
1073 <primary>release stage in replication</primary>
1077 <primary>replication</primary>
1079 <secondary>release stage</secondary>
1082 <para>Replicating a volume requires issuing two commands. First, use the <emphasis role="bold">vos addsite</emphasis> command to
1083 add one or more read-only site definitions to the volume's VLDB entry (a <emphasis>site</emphasis> is a particular partition on
1084 a file server machine). Then use the <emphasis role="bold">vos release</emphasis> command to clone the read/write source volume
1085 and distribute the clone to the defined read-only sites. You issue the <emphasis role="bold">vos addsite</emphasis> only once
1086 for each read-only site, but must reissue the <emphasis role="bold">vos release</emphasis> command every time the read/write
1087 volume's contents change and you want to update the read-only volumes.</para>
1089 <para>For users to have a consistent view of the file system, the release of updated volume contents to read-only sites must be
1090 atomic: either all read-only sites receive the new version of the volume, or all sites keep the version they currently have. The
1091 <emphasis role="bold">vos release</emphasis> command is designed to ensure that all copies of the volume's read-only version
1092 match both the read/write source and each other. In cases where problems such as machine or server process outages prevent
1093 successful completion of the release operation, AFS uses two mechanisms to alert you.</para>
1096 <primary>replication</primary>
1098 <secondary>determining success of</secondary>
1102 <primary>determining</primary>
1104 <secondary>success of replication</secondary>
1108 <primary>replication</primary>
1110 <secondary>need for all-or-nothing release</secondary>
1114 <primary>all-or-nothing release of read-only volumes</primary>
1118 <primary>read-only volume</primary>
1120 <secondary>need for atomic release</secondary>
1124 <primary>releasing</primary>
1126 <secondary>read-only volume, need for atomicity</secondary>
1130 <primary>ReleaseClone</primary>
1134 <primary>replication</primary>
1136 <secondary>role of ReleaseClone</secondary>
1140 <primary>New release site flag in VLDB</primary>
1142 <secondary>as indicator of failed replication</secondary>
1146 <primary>Old release site flag in VLDB</primary>
1148 <secondary>as indicator of failed replication</secondary>
1152 <primary>clone</primary>
1154 <secondary>forcing creation of new</secondary>
1158 <primary>replication</primary>
1160 <secondary>forcing creation of new clone</secondary>
1164 <primary>vos commands</primary>
1166 <secondary>release</secondary>
1168 <tertiary>forcing new cloning with -f flag</tertiary>
1172 <primary>releasing</primary>
1174 <secondary>read-only volume, forcing new cloning</secondary>
1177 <para>First, the command interpreter generates an error message on the standard error stream naming each read-only site that did
1178 not receive the new volume version. Second, during the release operation the Volume Location (VL) Server marks site definitions
1179 in the VLDB entry with flags (<computeroutput>New release</computeroutput> and <computeroutput>Old release</computeroutput>)
1180 that indicate whether or not the site has the new volume version. If any flags remain after the operation completes, it was not
1181 successful. The Cache Manager refuses to access a read-only site marked with the <computeroutput>Old release</computeroutput>
1182 flag, which potentially imposes a greater load on the sites marked with the <computeroutput>New release</computeroutput> flag.
1183 It is important to investigate and eliminate the cause of the failure and then to issue the <emphasis role="bold">vos
1184 release</emphasis> command as many times as necessary to complete the release without errors.</para>
1186 <para>The pattern of site flags remaining in the volume's VLDB entry after a failed release operation can help determine the
1187 point at which the operation failed. Use the <emphasis role="bold">vos examine</emphasis> or <emphasis role="bold">vos
1188 listvldb</emphasis> command to display the VLDB entry. The VL Server sets the flags in concert with the Volume Server's
1189 operations, as follows: <orderedlist>
1191 <para>Before the operation begins, the VL Server sets the <computeroutput>New release</computeroutput> flag on the
1192 read/write site definition in the VLDB entry and the <computeroutput>Old release</computeroutput> flag on read-only site
1193 definitions (unless the read-only site has been defined since the last release operation and has no actual volume, in
1194 which case its site flag remains <computeroutput>Not released</computeroutput>).</para>
1198 <para>If necessary, the Volume Server creates a temporary copy (a <emphasis>clone</emphasis>) of the read/write source
1199 called the ReleaseClone (see the following discussion of when the Volume Server does or does not create a new
1200 ReleaseClone.) It assigns the ReleaseClone its own volume ID number, which the VL Server records in the
1201 <computeroutput>RClone</computeroutput> field of the source volume's VLDB entry.</para>
1205 <para>The Volume Server distributes a copy of the ReleaseClone to each read-only site defined in the VLDB entry. As the
1206 site successfully receives the new clone, the VL Server sets the site's flag in the VLDB entry to <computeroutput>New
1207 release</computeroutput>.</para>
1211 <para>When all the read-only copies are successfully released, the VL Server clears all the <computeroutput>New
1212 release</computeroutput> site flags. The ReleaseClone is no longer needed, so the Volume Server deletes it and the VL
1213 Server erases its ID from the VLDB entry.</para>
1215 </orderedlist></para>
1217 <para>By default, the Volume Server determines automatically whether or not it needs to create a new ReleaseClone: <itemizedlist>
1219 <para>If there are no flags (<computeroutput>New release</computeroutput>, <computeroutput>Old release</computeroutput>,
1220 or <computeroutput>Not released</computeroutput>) on site definitions in the VLDB entry, the previous <emphasis
1221 role="bold">vos release</emphasis> command completed successfully and all read-only sites currently have the same volume.
1222 The Volume Server infers that the current <emphasis role="bold">vos release</emphasis> command was issued because the
1223 read/write volume has changed. The Volume Server creates a new ReleaseClone and distributes it to all of the read-only
1228 <para>If any site definition in the VLDB entry is marked with a flag, either the previous release operation did not
1229 complete successfully or a new read-only site was defined since the last release. The Volume Server does not create a new
1230 ReleaseClone, instead distributing the existing ReleaseClone to sites marked with the <computeroutput>Old
1231 release</computeroutput> or <computeroutput>Not released</computeroutput> flag. As previously noted, the VL Server marks
1232 each VLDB site definition with the <computeroutput>New release</computeroutput> flag as the site receives the
1233 ReleaseClone, and clears all flags after all sites successfully receive it.</para>
1235 </itemizedlist></para>
1237 <para>To override the default behavior, forcing the Volume Server to create and release a new ReleaseClone to the read-only
1238 sites, include the <emphasis role="bold">-f</emphasis> flag. This is appropriate if, for example, the data at the read/write
1239 site has changed since the existing ReleaseClone was created during the previous release operation.</para>
1241 <sect2 id="HDRWQ193">
1242 <title>Using Read-only Volumes Effectively</title>
1245 <primary>criteria for replicating volumes</primary>
1249 <primary>replication</primary>
1251 <secondary>suitable types of volumes</secondary>
1255 <primary>suitability of volumes for replication</primary>
1259 <primary>read/write volume</primary>
1261 <secondary>types suitable for replication</secondary>
1264 <para>For maximum effectiveness, replicate only volumes that satisfy two criteria: <itemizedlist>
1266 <para>The volume's contents are heavily used. Examples include a volume housing binary files for text editors or other
1267 popular application programs, and volumes mounted along heavily traversed directory paths such as the paths leading to
1268 user home directories. It is an inefficient use of disk space to replicate volumes for which the demand is low enough
1269 that a single File Server can easily service all requests.</para>
1273 <para>The volume's contents change infrequently. As noted, file system consistency demands that the contents of
1274 read-only volumes must match each other and their read/write source at all times. Each time the read/write volume
1275 changes, you must issue the <emphasis role="bold">vos release</emphasis> command to update the read-only volumes. This
1276 can become tedious (and easy to forget) if the read/write volume changes frequently.</para>
1278 </itemizedlist></para>
1281 <primary>mounting</primary>
1283 <secondary>read-only volume</secondary>
1287 <primary>read-only volume</primary>
1289 <secondary>mounting</secondary>
1292 <para>Explicitly mounting a read-only volume (creating a mount point that names a volume with a <emphasis
1293 role="bold">.readonly</emphasis> extension) is not generally necessary or appropriate. The Cache Manager has a built-in bias
1294 to access the read-only version of a replicated volume whenever possible. As described in more detail in <link
1295 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>, when the Cache Manager encounters a mount point it reads the
1296 volume name inside it and contacts the VL Server for a list of the sites that house the volume. In the normal case, if the
1297 mount point resides in a read-only volume and names a read/write volume (one that does not have a <emphasis
1298 role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension), the Cache Manager always attempts to
1299 access a read-only copy of the volume. Thus there is normally no reason to force the Cache Manager to access a read-only
1300 volume by mounting it explicitly.</para>
1302 <para>It is a good practice to place a read-only volume at the read/write site, for a couple of reasons. First, the read-only
1303 volume at the read/write site requires only a small amount of disk space, because it is a clone rather a copy of all of the
1304 data (see <link linkend="HDRWQ190">About Clones and Cloning</link>). Only if a large number of files are removed or changed in
1305 the read/write volume does the read-only copy occupy much disk space. That normally does not happen because the appropriate
1306 response to changes in a replicated read/write volume is to reclone it. The other reason to place a read-only volume at the
1307 read/write site is that the Cache Manager does not attempt to access the read/write version of a replicated volume if all
1308 read-only copies become inaccessible. If the file server machine housing the read/write volume is the only accessible machine,
1309 the Cache Manager can access the data only if there is a read-only copy at the read/write site.</para>
1311 <para>The number of read-only sites to define depends on several factors. Perhaps the main trade-off is between the level of
1312 demand for the volume's contents and how much disk space you are willing to use for multiple copies of the volume. Of course,
1313 each prospective read-only site must have enough available space to accommodate the volume. The limit on the number of
1314 read-only copies of a volume is determined by the maximum number of site definitions in a volume's VLDB entry, which is
1315 defined in the <emphasis> OpenAFS Release Notes</emphasis>. The site housing the read/write and backup versions of the volume
1316 counts as one site, and each read-only site counts as an additional site (even the read-only site defined on the same file
1317 server machine and partition as the read/write site counts as a separate site). Note also that the Volume Server permits only
1318 one read-only copy of a volume per file server machine.</para>
1321 <sect2 id="Header_216">
1322 <title>Replication Scenarios</title>
1325 <primary>variations possible</primary>
1327 <secondary>in replication</secondary>
1331 <primary>replication</primary>
1333 <secondary>variations possible in</secondary>
1337 <primary>possible variations</primary>
1339 <secondary>on replication</secondary>
1342 <para>The instructions in the following section explain how to replicate a volume for which no read-only sites are currently
1343 defined. However, you can also use the instructions in other common situations: <itemizedlist>
1345 <para>If you are releasing a new clone to sites that already exist, you can skip Step <link linkend="LIWQ196">2</link>.
1346 It can still be useful to issue the <emphasis role="bold">vos examine</emphasis> command, however, to verify that the
1347 desired read-only sites are defined.</para>
1351 <para>If you are adding new read-only sites to existing ones, perform all of the steps. In Step <link
1352 linkend="LIWQ197">3</link>, issue the <emphasis role="bold">vos addsite</emphasis> command for the new sites
1357 <para>If you are defining sites but do not want to release a clone to them yet, stop after Step <link
1358 linkend="LIWQ197">3</link>and continue when you are ready.</para>
1362 <para>If you are removing one or more sites before releasing a new clone to the remaining sites, follow the instructions
1363 for site removal in <link linkend="HDRWQ235">Removing Volumes and their Mount Points</link>and then start with Step
1364 <link linkend="LIWQ198">4</link>.</para>
1366 </itemizedlist></para>
1369 <sect2 id="HDRWQ194">
1370 <title>To replicate a read/write volume (create a read-only volume)</title>
1373 <primary>read-only volume</primary>
1375 <secondary>creating</secondary>
1377 <tertiary>instructions</tertiary>
1381 <primary>read/write volume</primary>
1383 <secondary>replication instructions</secondary>
1387 <listitem id="LIWQ195">
1388 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis>
1389 file. If necessary, issue the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link
1390 linkend="HDRWQ593">To display the users in the UserList file</link>. <programlisting>
1391 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
1392 </programlisting></para>
1395 <listitem id="LIWQ196">
1396 <para>Select one or more sites at which to replicate the volume. There are several factors to
1397 consider: <itemizedlist>
1399 <para>How many sites are already defined. As previously noted, it is usually appropriate to define a read-only site
1400 at the read/write site. Also, the Volume Server permits only one read-only copy of a volume per file server machine.
1401 To display the volume's current sites, issue the <emphasis role="bold">vos examine</emphasis> command, which is
1402 described fully in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume Header</link>.
1404 % <emphasis role="bold">vos examine</emphasis> <<replaceable>volume name or ID</replaceable>>
1405 </programlisting></para>
1407 <para>The final lines of output display the volume's site definitions from the VLDB.</para>
1411 <para>Whether your cell dedicates any file server machines to housing read-only volumes only. In general, only very
1412 large cells use read-only server machines.</para>
1416 <para>Whether a site has enough free space to accommodate the volume. A read-only volume requires the same amount of
1417 space as the read/write version (unless it is at the read/write site itself). The first line of output from the
1418 <emphasis role="bold">vos examine</emphasis> command displays the read/write volume's current size in kilobyte
1419 blocks, as shown in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume Header</link>.</para>
1421 <para>To display the amount of space available on a file server machine's partitions, use the <emphasis
1422 role="bold">vos partinfo</emphasis> command, which is described fully in <link linkend="HDRWQ185">Creating
1423 Read/write Volumes</link>.</para>
1426 % <emphasis role="bold">vos partinfo</emphasis> <<replaceable>machine name</replaceable>> [<<replaceable>partition name</replaceable>>]
1429 </itemizedlist></para>
1432 <primary>read-only volume</primary>
1434 <secondary>defining site for in VLDB</secondary>
1438 <primary>defining</primary>
1440 <secondary>read-only site in VLDB</secondary>
1444 <primary>adding</primary>
1446 <secondary>read-only site definition in VLDB</secondary>
1450 <primary>VLDB</primary>
1452 <secondary>defining read-only site in</secondary>
1456 <primary>commands</primary>
1458 <secondary>vos addsite</secondary>
1462 <primary>vos commands</primary>
1464 <secondary>addsite</secondary>
1468 <listitem id="LIWQ197">
1469 <para>Issue the <emphasis role="bold">vos addsite</emphasis> command to define each new read-only
1470 site in the VLDB. <programlisting>
1471 % <emphasis role="bold">vos addsite</emphasis> <<replaceable>machine name</replaceable>> <<replaceable>partition name</replaceable>> <<replaceable>volume name or ID</replaceable>>
1472 </programlisting></para>
1474 <para>where <variablelist>
1476 <term><emphasis role="bold">ad</emphasis></term>
1479 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">addsite</emphasis>.</para>
1484 <term><emphasis role="bold">machine name</emphasis></term>
1487 <para>Defines the file server machine for the new site.</para>
1492 <term><emphasis role="bold">partition name</emphasis></term>
1495 <para>Names a disk partition on the machine machine name.</para>
1500 <term><emphasis role="bold">volume name or ID</emphasis></term>
1503 <para>Identifies the read/write volume to be replicated, either by its complete name or its volume ID
1507 </variablelist></para>
1510 <listitem id="LIWQ198">
1511 <para><emphasis role="bold">(Optional)</emphasis> Verify that the <emphasis
1512 role="bold">fs</emphasis> process (which incorporates the Volume Server) is functioning normally on each file server
1513 machine where you have defined a read-only site, and that the <emphasis role="bold">vlserver</emphasis> process (the
1514 Volume Location Server) is functioning correctly on each database server machine. Knowing that they are functioning
1515 eliminates two possible sources of failure for the release. Issue the <emphasis role="bold">bos status</emphasis> command
1516 on each file server machine housing a read-only site for this volume and on each database server machine. The command is
1517 described fully in <link linkend="HDRWQ158">Displaying Process Status and Information from the BosConfig File</link>.
1519 % <emphasis role="bold">bos status</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">fs vlserver</emphasis>
1520 </programlisting></para>
1523 <primary>releasing</primary>
1525 <secondary>read-only volume</secondary>
1529 <primary>read-only volume</primary>
1531 <secondary>releasing</secondary>
1535 <primary>commands</primary>
1537 <secondary>vos release</secondary>
1539 <tertiary>basic instructions</tertiary>
1543 <primary>vos commands</primary>
1545 <secondary>release</secondary>
1547 <tertiary>basic instructions</tertiary>
1551 <listitem id="LIWQ199">
1552 <para>Issue the <emphasis role="bold">vos release</emphasis> command to clone the read/write source
1553 volume and distribute the clone to each read-only site. <programlisting>
1554 % <emphasis role="bold">vos release</emphasis> <<replaceable>volume name or ID</replaceable>> [<emphasis role="bold">-f</emphasis>]
1555 </programlisting></para>
1557 <para>where <variablelist>
1559 <term><emphasis role="bold">rel</emphasis></term>
1562 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">release</emphasis>.</para>
1567 <term><emphasis role="bold">volume name or ID</emphasis></term>
1570 <para>Identifies the read/write volume to clone, either by its complete name or volume ID number. The read-only
1571 version is given the same name with a <emphasis role="bold">.readonly</emphasis> extension. All read-only copies
1572 share the same read-only volume ID number.</para>
1577 <term><emphasis role="bold">-f</emphasis></term>
1580 <para>Creates and releases a brand new clone.</para>
1583 </variablelist></para>
1586 <listitem id="LIWQ200">
1587 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">vos examine</emphasis> command to verify
1588 that no site definition in the VLDB entry is marked with an <computeroutput>Old release</computeroutput> or
1589 <computeroutput>New release</computeroutput> flag. The command is described fully in <link linkend="HDRWQ221">Displaying
1590 One Volume's VLDB Entry and Volume Header</link>. <programlisting>
1591 % <emphasis role="bold">vos examine</emphasis> <<replaceable>volume name or ID</replaceable>>
1592 </programlisting></para>
1596 <para>If any flags appear in the output from Step <link linkend="LIWQ200">6</link>, repeat Steps <link
1597 linkend="LIWQ198">4</link>and <link linkend="LIWQ199">5</link>until the Volume Server does not produce any error messages
1598 during the release operation and the flags no longer appear. Do not issue the <emphasis role="bold">vos release</emphasis>
1599 command when you know that the read/write site or any read-only site is inaccessible due to network, machine or server process
1604 <sect1 id="HDRWQ201">
1605 <title>Creating Backup Volumes</title>
1608 <primary>read/write volume</primary>
1610 <secondary>cloning</secondary>
1612 <tertiary>for backup version</tertiary>
1616 <primary>cloning</primary>
1618 <secondary>for backup</secondary>
1622 <primary>creating</primary>
1624 <secondary>backup volume</secondary>
1628 <primary>volume</primary>
1630 <secondary>backup</secondary>
1632 <see>backup volume</see>
1636 <primary>backup volume</primary>
1638 <secondary>creating</secondary>
1641 <para>A <emphasis>backup volume</emphasis> is a clone that resides at the same site as its read/write source (to review the
1642 concept of cloning, see <link linkend="HDRWQ190">About Clones and Cloning</link>). Creating a backup version of a volume has two
1643 purposes: <itemizedlist>
1645 <para>It is by convention the first step when dumping a volume's contents to tape with the AFS Backup System. A volume is
1646 inaccessible while it is being dumped, so instead of dumping the read/write volume, you create and dump a backup version.
1647 Users do not normally access the backup version, so it is unlikely that the dump will disturb them. For more details, see
1648 <link linkend="HDRWQ296">Backing Up Data</link>.</para>
1652 <para>It enables users to restore mistakenly deleted or changed data themselves, freeing you for more crucial tasks. The
1653 backup version captures the state of its read/write source at the time the backup is made, and its contents cannot change.
1654 Mount the backup version in the filespace so that users can restore a file to its state at the time you made the backup.
1655 See <link linkend="HDRWQ204">Making the Contents of Backup Volumes Available to Users</link>.</para>
1657 </itemizedlist></para>
1660 <primary>creating</primary>
1662 <secondary>multiple backup volumes at once</secondary>
1666 <primary>volume</primary>
1668 <secondary>creating backup version of many at once</secondary>
1672 <primary>backup volume</primary>
1674 <secondary>creating multiple at once</secondary>
1677 <sect2 id="HDRWQ202">
1678 <title>Backing Up Multiple Volumes at Once</title>
1680 <para>The <emphasis role="bold">vos backupsys</emphasis> command creates a backup version of many read/write volumes at once.
1681 This command is useful when preparing for large-scale backups to tape using the AFS Backup System.</para>
1683 <para>To clone every read/write volume listed in the VLDB, omit all of the command's options. Otherwise, combine the command's
1684 options to clone various groups of volumes. The options use one of two basic criteria to select volumes: location (the
1685 <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments) or presence in the volume
1686 name of one of a set of specified character strings (the <emphasis role="bold">-prefix</emphasis>, <emphasis
1687 role="bold">-exclude</emphasis>, and <emphasis role="bold">-xprefix</emphasis> options).</para>
1689 <para>To clone only volumes that reside on one file server machine, include the <emphasis role="bold">-server</emphasis>
1690 argument. To clone only volumes that reside on one partition, combine the <emphasis role="bold">-server</emphasis> and
1691 <emphasis role="bold">-partition</emphasis> arguments. The <emphasis role="bold">-partition</emphasis> argument can also be
1692 used alone to clone volumes that reside on the indicated partition on every file server machine. These arguments can be
1693 combined with those that select volumes based on their names.</para>
1695 <para>Combine the <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-exclude</emphasis>, and <emphasis
1696 role="bold">-xprefix</emphasis> options (with or without the <emphasis role="bold">-server</emphasis> and <emphasis
1697 role="bold">-partition</emphasis> arguments) in the indicated ways to select volumes based on character strings contained in
1698 their names: <itemizedlist>
1700 <para>To clone every read/write volume at the specified location whose name includes one of a set of specified character
1701 strings (for example, begins with <emphasis role="bold">user.</emphasis> or includes the string <emphasis
1702 role="bold">afs</emphasis>), use the <emphasis role="bold">-prefix</emphasis> argument or combine the <emphasis
1703 role="bold">-xprefix</emphasis> and <emphasis role="bold">-exclude</emphasis> options.</para>
1707 <para>To clone every read/write volume at the specified location except those whose name includes one of a set of
1708 specified character strings, use the <emphasis role="bold">-xprefix</emphasis> argument or combine the <emphasis
1709 role="bold">-prefix</emphasis> and <emphasis role="bold">-exclude</emphasis> options.</para>
1713 <para>To clone every read/write volume at the specified location whose name includes one of one of a set of specified
1714 character strings, except those whose names include one of a different set of specified character strings, combine the
1715 <emphasis role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments. The command creates a
1716 list of all volumes that match the <emphasis role="bold">-prefix</emphasis> argument and then removes from the list the
1717 volumes that match the <emphasis role="bold">-xprefix</emphasis> argument. For effective results, the strings specified
1718 by the <emphasis role="bold">-xprefix</emphasis> argument must designate a subset of the volumes specified by the
1719 <emphasis role="bold">-prefix</emphasis> argument.</para>
1721 <para>If the <emphasis role="bold">-exclude</emphasis> flag is combined with the <emphasis
1722 role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments, the command creates a list of
1723 all volumes that do not match the <emphasis role="bold">-prefix</emphasis> argument and then adds to the list any
1724 volumes that match the <emphasis role="bold">-xprefix</emphasis> argument. As when the <emphasis
1725 role="bold">-exclude</emphasis> flag is not used, the result is effective only if the strings specified by the <emphasis
1726 role="bold">-xprefix</emphasis> argument designate a subset of the volumes specified by the <emphasis
1727 role="bold">-prefix</emphasis> argument.</para>
1729 </itemizedlist></para>
1731 <para>The <emphasis role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments both accept
1732 multiple values, which can be used to define disjoint groups of volumes. Each value can be one of two types: <orderedlist>
1734 <para>A simple character string, which matches volumes whose name begin with the string. All characters are interpreted
1735 literally (that is, characters that potentially have special meaning to the command shell, such as the period, have only
1736 their literal meaning).</para>
1740 <para>A regular expression, which matches volumes whose names contain the expressions. Place a caret ( <emphasis
1741 role="bold">^</emphasis>) at the beginning of the expression, and enclose the entire string in single quotes ( <emphasis
1742 role="bold">'</emphasis> <emphasis role="bold">'</emphasis>). Explaining regular expressions is outside the scope of
1743 this reference page; see the UNIX manual page for <emphasis role="bold">regexp(5)</emphasis> or (for a brief
1744 introduction) <link linkend="HDRWQ265">Defining and Displaying Volume Sets and Volume Entries</link>. As an example, the
1745 following expression matches volumes that have the string <emphasis role="bold">aix</emphasis> anywhere in their names:
1747 <emphasis role="bold">-prefix '^.*aix'</emphasis>
1748 </programlisting></para>
1750 </orderedlist></para>
1752 <para>To display a list of the volumes to be cloned, without actually cloning them, include the <emphasis
1753 role="bold">-dryrun</emphasis> flag. To display a statement that summarizes the criteria being used to select volume, include
1754 the <emphasis role="bold">-verbose</emphasis> flag.</para>
1756 <para>To back up a single volume, use the <emphasis role="bold">vos backup</emphasis> command, which employs a more
1757 streamlined technique for finding a single volume.</para>
1760 <primary>automating</primary>
1762 <secondary>creation of backup volumes</secondary>
1766 <primary>backup volume</primary>
1768 <secondary>automating creation of</secondary>
1772 <primary>volume</primary>
1774 <secondary>automating creation of backup version</secondary>
1778 <primary>backup volume</primary>
1780 <secondary>suggested schedule for creation of</secondary>
1784 <primary>scheduling</primary>
1786 <secondary>creation of backup volumes</secondary>
1790 <primary>cron-type server process</primary>
1792 <secondary>used to automate volume backup</secondary>
1796 <sect2 id="HDRWQ203">
1797 <title>Automating Creation of Backup Volumes</title>
1799 <para>Most cells find that it is best to make a new backup version of relevant volumes each day. It is best to create the
1800 backup versions at a time when usage is low, because the backup operation causes the read/write volume to be unavailable
1803 <para>You can either issue the necessary the <emphasis role="bold">vos backupsys</emphasis> or <emphasis role="bold">vos
1804 backup</emphasis> commands at the console or create a <emphasis role="bold">cron</emphasis> entry in the <emphasis
1805 role="bold">BosConfig</emphasis> file on a file server machine, which eliminates the need for an administrator to initiate the
1806 backup operation.</para>
1808 <para>The following example command creates a <emphasis role="bold">cron</emphasis> process called <emphasis
1809 role="bold">backupusers</emphasis> in the <emphasis role="bold">/usr/afs/local/BosConfig</emphasis> file on the machine
1810 <emphasis role="bold">fs3.example.com</emphasis>. The process runs every day at 1:00 a.m. to create a backup version of every
1811 volume in the cell whose name starts with the string <emphasis role="bold">user</emphasis>. The <emphasis
1812 role="bold">-localauth</emphasis> flag enables the process to invoke the privileged <emphasis role="bold">vos
1813 backupsys</emphasis> command while unauthenticated. Note that the <emphasis role="bold">-cmd</emphasis> argument specifies a
1814 complete pathname for the <emphasis role="bold">vos</emphasis> binary, because the PATH environment variable for the BOS
1815 Server (running as the local superuser <emphasis role="bold">root</emphasis>) generally does not include the path to AFS
1816 binaries. <programlisting>
1817 % <emphasis role="bold">bos create fs3.example.com backupusers cron</emphasis>\
1818 <emphasis role="bold">-cmd "/usr/afs/bin/vos backupsys -prefix user -localauth" "1:00"</emphasis>
1819 </programlisting></para>
1822 <primary>mounting</primary>
1824 <secondary>backup volume</secondary>
1828 <primary>backup volume</primary>
1830 <secondary>mounting</secondary>
1834 <primary>OldFiles directory</primary>
1836 <secondary>as mount point for backup volume</secondary>
1840 <sect2 id="HDRWQ204">
1841 <title>Making the Contents of Backup Volumes Available to Users</title>
1843 <para>As noted, a backup volume preserves the state of the read/write source at the time the backup is created. Many cells
1844 choose to mount backup volumes so that users can access and restore data they have accidentally deleted or changed since the
1845 last backup was made, without having to request help from administrators. The most sensible place to mount the backup version
1846 of a user volume is at a subdirectory of the user's home directory. Suitable names for this directory include <emphasis
1847 role="bold">OldFiles</emphasis> and <emphasis role="bold">Backup</emphasis>. The subdirectory looks just like the user's own
1848 home directory as it was at the time the backup was created, with all files and subdirectories in the same relative
1851 <para>If you do create and mount backup volumes for your users, inform users of their existence. The <emphasis> OpenAFS User
1852 Guide</emphasis> does not mention backup volumes because making them available to users is optional. Explain to users how
1853 often you make a new backup, so they know what they can recover. Remind them also that the data in their backup volume cannot
1854 change; however, they can use the standard UNIX <emphasis role="bold">cp</emphasis> command to copy it into their home volume
1855 and modify it there. Reassure users that the data in their backup volumes does not count against their read/write volume
1859 <sect2 id="HDRWQ205">
1860 <title>To create and mount a backup volume</title>
1864 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
1865 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
1866 display the users in the UserList file</link>. <programlisting>
1867 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
1868 </programlisting></para>
1872 <para>Verify that you have the <emphasis role="bold">insert</emphasis>( <emphasis role="bold">i</emphasis>) and <emphasis
1873 role="bold">administer</emphasis>( <emphasis role="bold">a</emphasis>) permissions on the ACL of the directory in which
1874 you wish to mount the volume. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
1875 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
1876 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
1877 </programlisting></para>
1879 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
1880 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
1881 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
1882 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
1885 <primary>commands</primary>
1887 <secondary>vos backup</secondary>
1891 <primary>vos commands</primary>
1893 <secondary>backup</secondary>
1897 <listitem id="LIWQ206">
1898 <para>Issue the <emphasis role="bold">vos backup</emphasis> command to create a backup version of a
1899 read/write source volume. The message shown confirms the success of the backup operation. <programlisting>
1900 % <emphasis role="bold">vos backup</emphasis> <<replaceable>volume name or ID</replaceable>> Created backup volume for volume name or ID
1901 </programlisting></para>
1903 <para>where <variablelist>
1905 <term><emphasis role="bold">backup</emphasis></term>
1908 <para>Must be typed in full.</para>
1913 <term><emphasis role="bold">volume name or ID</emphasis></term>
1916 <para>Identifies the read/write volume to back up, either by its complete name or volume ID number. The backup
1917 volume has the same name with the addition of the <emphasis role="bold">.backup</emphasis> extension. It has its
1918 own volume ID number.</para>
1921 </variablelist></para>
1924 <primary>commands</primary>
1926 <secondary>fs mkmount</secondary>
1928 <tertiary>when mounting backup volume</tertiary>
1932 <primary>fs commands</primary>
1934 <secondary>mkmount</secondary>
1936 <tertiary>when mounting backup volume</tertiary>
1940 <listitem id="LIWQ207">
1941 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs
1942 mkmount</emphasis> to mount the backup volume. While this step is optional, Cache Managers cannot access the volume's
1943 contents if it is not mounted. <programlisting>
1944 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> <emphasis
1945 role="bold">.backup</emphasis>
1946 </programlisting></para>
1948 <para>where <variablelist>
1950 <term><emphasis role="bold">mk</emphasis></term>
1953 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">mkmount</emphasis>.</para>
1958 <term><emphasis role="bold">directory</emphasis></term>
1961 <para>Names the mount point to create. Do not create a file or directory of the same name beforehand. Partial
1962 pathnames are interpreted relative to the current working directory. For the backup version of a user volume, the
1963 conventional location is the user's home directory.</para>
1968 <term><emphasis role="bold">volume name</emphasis>.backup</term>
1971 <para>Is the full name of the backup volume.</para>
1974 </variablelist></para>
1978 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs lsmount</emphasis> command to verify
1979 that the mount point refers to the correct volume. Complete instructions appear in <link linkend="HDRWQ211">To display a
1980 mount point</link>. <programlisting>
1981 % <emphasis role="bold">fs lsmount</emphasis> <<replaceable>directory</replaceable>>
1982 </programlisting></para>
1987 <primary>commands</primary>
1989 <secondary>vos backupsys</secondary>
1993 <primary>vos commands</primary>
1995 <secondary>backupsys</secondary>
1999 <sect2 id="Header_223">
2000 <title>To create multiple backup volumes at once</title>
2004 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
2005 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
2006 display the users in the UserList file</link>. <programlisting>
2007 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
2008 </programlisting></para>
2012 <para>Issue the <emphasis role="bold">vos backupsys</emphasis> command to create a backup version of every read/write
2013 volume that shares the same prefix or site. The effects of combining the three arguments are described in <link
2014 linkend="HDRWQ202">Backing Up Multiple Volumes at Once</link>. <programlisting>
2015 % <emphasis role="bold">vos backupsys</emphasis> [<emphasis role="bold">-prefix</emphasis> <<replaceable>common prefix on volume(s)</replaceable>>+] \
2016 [<emphasis role="bold">-server</emphasis> <<replaceable>machine name</replaceable>>] [<emphasis role="bold">-partition</emphasis> <<replaceable>partition name</replaceable>>] \
2017 [<emphasis role="bold">-exclude</emphasis>] [<emphasis role="bold">-xprefix</emphasis> <<replaceable>negative prefix on volume(s)</replaceable>>+] \
2018 [<emphasis role="bold">-dryrun</emphasis>] [<emphasis role="bold">-verbose</emphasis>]
2019 </programlisting></para>
2021 <para>where <variablelist>
2023 <term><emphasis role="bold">backups</emphasis></term>
2026 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">backupsys</emphasis>.</para>
2031 <term><emphasis role="bold">-prefix</emphasis></term>
2034 <para>Specifies one or more simple character strings or regular expressions of any length; a volume whose name
2035 includes the string is placed on the list of volumes to be cloned. Include field separators (such as periods) if
2036 appropriate. This argument can be combined with any combination of the <emphasis role="bold">-server</emphasis>,
2037 <emphasis role="bold">-partition</emphasis>, <emphasis role="bold">-exclude</emphasis>, and <emphasis
2038 role="bold">-xprefix</emphasis> options.</para>
2043 <term><emphasis role="bold">-server</emphasis></term>
2046 <para>Specifies the file server machine housing the volumes to backup. Can be combined with any combination of the
2047 <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-partition</emphasis>, <emphasis
2048 role="bold">-exclude</emphasis>, and <emphasis role="bold">-xprefix</emphasis> options.</para>
2053 <term><emphasis role="bold">-partition</emphasis></term>
2056 <para>Specifies the partition housing the volumes you wish to backup. Can be combined with any combination of the
2057 <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-server</emphasis>, <emphasis
2058 role="bold">-exclude</emphasis>, and <emphasis role="bold">-xprefix</emphasis> options.</para>
2063 <term><emphasis role="bold">-exclude</emphasis></term>
2066 <para>Indicates that all volumes except those indicated with the <emphasis role="bold">-prefix</emphasis> argument
2067 are to be backed up. The <emphasis role="bold">-prefix</emphasis> argument must be provided along with this one.
2068 Can also be combined with any combination of the <emphasis role="bold">-prefix</emphasis>, <emphasis
2069 role="bold">-server</emphasis>, and <emphasis role="bold">-partition</emphasis> arguments; or with both the
2070 <emphasis role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments, but not with the
2071 <emphasis role="bold">-xprefix</emphasis> argument alone.</para>
2076 <term><emphasis role="bold">-xprefix</emphasis></term>
2079 <para>Specifies one or more simple character strings or regular expressions of any length; a volume whose name
2080 does not include the string is placed on the list of volumes to be cloned. Can be combined with any combination of
2081 the <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-server</emphasis>, and <emphasis
2082 role="bold">-partition</emphasis> arguments; in addition, it can be combined with both the <emphasis
2083 role="bold">-prefix</emphasis> and <emphasis role="bold">-exclude</emphasis> options, but not with the <emphasis
2084 role="bold">-exclude</emphasis> flag alone.</para>
2089 <term><emphasis role="bold">-dryrun</emphasis></term>
2092 <para>Displays on the standard output stream a list of the volumes to be cloned, without actually cloning
2098 <term><emphasis role="bold">-verbose</emphasis></term>
2101 <para>Displays on the standard output stream a statement that summarizes the criteria being used to select
2102 volumes, if combined with the <emphasis role="bold">-dryrun</emphasis> flag; otherwise, traces the cloning
2103 operation for each volume.</para>
2106 </variablelist></para>
2112 <sect1 id="HDRWQ208">
2113 <title>Mounting Volumes</title>
2116 <primary>mounting</primary>
2118 <secondary>volume</secondary>
2120 <tertiary>general instructions</tertiary>
2123 <para>Mount points make the contents of AFS volumes visible and accessible in the AFS filespace, as described in <link
2124 linkend="HDRWQ183">About Mounting Volumes</link>. This section discusses in more detail how the Cache Manager handles mount
2125 points as it traverses the filespace. It describes the three types of mount points, their purposes, and how to distinguish
2126 between them, and provides instructions for creating, removing, and examining mount points.</para>
2128 <sect2 id="HDRWQ209">
2129 <title>The Rules of Mount Point Traversal</title>
2131 <para>The Cache Manager observes three basic rules as it traverses the AFS filespace and encounters mount points:
2134 <para><emphasis role="bold">Rule 1:</emphasis> Access Backup and Read-only Volumes When Specified</para>
2136 <para>When the Cache Manager encounters a mount point that specifies a volume with either a <emphasis
2137 role="bold">.readonly</emphasis> or a <emphasis role="bold">.backup</emphasis> extension, it accesses that type of
2138 volume only. If a mount point does not have either a <emphasis role="bold">.backup</emphasis> or <emphasis
2139 role="bold">.readonly</emphasis> extension, the Cache Manager uses Rules 2 and 3.</para>
2141 <para>For example, the Cache Manager never accesses the read/write version of a volume if the mount point names the
2142 backup version. If the specified version is inaccessible, the Cache Manager reports an error.</para>
2146 <para><emphasis role="bold">Rule 2:</emphasis> Follow the Read-only Path When Possible</para>
2148 <para>If a mount point resides in a read-only volume and the volume that it references is replicated, the Cache Manager
2149 attempts to access a read-only copy of the volume; if the referenced volume is not replicated, the Cache Manager
2150 accesses the read/write copy. The Cache Manager is thus said to prefer a <emphasis>read-only</emphasis> path through the
2151 filespace, accessing read-only volumes when they are available.</para>
2153 <para>The Cache Manager starts on the read-only path in the first place because it always accesses a read-only copy of
2154 the <emphasis role="bold">root.afs</emphasis> volume if it exists; the volume is mounted at the root of a cell's AFS
2155 filespace (named <emphasis role="bold">/afs</emphasis> by convention). That is, if the <emphasis
2156 role="bold">root.afs</emphasis> volume is replicated, the Cache Manager attempts to access a read-only copy of it rather
2157 than the read/write copy. This rule then keeps the Cache Manager on a read-only path as long as each successive volume
2158 is replicated. The implication is that both the <emphasis role="bold">root.afs</emphasis> and <emphasis
2159 role="bold">root.cell</emphasis> volumes must be replicated for the Cache Manager to access replicated volumes mounted
2160 below them in the AFS filespace. The volumes are conventionally mounted at the <emphasis role="bold">/afs</emphasis> and
2161 <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable> directories, respectively.</para>
2165 <para><emphasis role="bold">Rule 3:</emphasis> Once on a Read/write Path, Stay There</para>
2167 <para>If a mount point resides in a read/write volume and the volume name does not have a <emphasis
2168 role="bold">.readonly</emphasis> or a <emphasis role="bold">.backup</emphasis> extension, the Cache Manager attempts to
2169 access only the a read/write version of the volume. The access attempt fails with an error if the read/write version is
2170 inaccessible, even if a read-only version is accessible. In this situation the Cache Manager is said to be on a
2171 <emphasis>read/write path</emphasis> and cannot switch back to the read-only path unless mount point explicitly names a
2172 volume with a <emphasis role="bold">.readonly</emphasis> extension. (Cellular mount points are an important exception to
2173 this rule, as explained in the following discussion.</para>
2175 </itemizedlist></para>
2178 <sect2 id="HDRWQ210">
2179 <title>The Three Types of Mount Points</title>
2181 <para>AFS uses three types of mount points, each appropriate for a different purpose because of how the Cache Manager handles
2182 them. <itemizedlist>
2184 <para>When the Cache Manager crosses a <emphasis>regular</emphasis> mount point, it obeys all three of the mount point
2185 traversal rules previously described.</para>
2188 <primary>regular mount point</primary>
2190 <secondary></secondary>
2192 <see>mount point</see>
2196 <primary>mount point</primary>
2198 <secondary>regular</secondary>
2200 <tertiary>described</tertiary>
2203 <para>AFS performs best when the vast majority of mount points in the filespace are regular, because the mount point
2204 traversal rules promote the most efficient use of both replicated and nonreplicated volumes. Because there are likely to
2205 be multiple read-only copies of a replicated volume, it makes sense for the Cache Manager to access one of them rather
2206 than the single read/write version, and the second rule leads it to do so. If a volume is not replicated, the third rule
2207 means that the Cache Manager still accesses the read/write volume when that is the only type available. In other words,
2208 a regular mount point does not force the Cache Manager always to access read-only volumes (it is explicitly not a
2209 "read-only mount point").</para>
2211 <para>To create a regular mount point, use the <emphasis role="bold">fs mkmount</emphasis> command as described in <link
2212 linkend="HDRWQ212">To create a regular or read/write mount point</link>.</para>
2215 <para>To enable the Cache Manager to access the read-only version of a replicated volume named by a regular mount
2216 point, all volumes that are mounted above it in the pathname must also be replicated. That is the only way the Cache
2217 Manager can stay on a read-only path to the target volume.</para>
2222 <para>When the Cache Manager crosses a <emphasis>read/write</emphasis> mount point, it attempts to access only the
2223 volume version named in the mount point. If the volume name is the base (read/write) form, without a <emphasis
2224 role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension, the Cache Manager accesses the
2225 read/write version of the volume, even if it is replicated. In other words, the Cache Manager disregards the second
2226 mount point traversal rule when crossing a read/write mount point: it switches to the read/write path through the
2230 <primary>read/write mount point</primary>
2232 <secondary></secondary>
2234 <see>mount point</see>
2238 <primary>mount point</primary>
2240 <secondary>read/write</secondary>
2242 <tertiary>described</tertiary>
2245 <para>It is conventional to create only one read/write mount point in a cell's filespace, using it to mount the cell's
2246 <emphasis role="bold">root.cell</emphasis> volume just below the AFS filespace root (by convention, <emphasis
2247 role="bold">/afs/.</emphasis><replaceable>cellname</replaceable>). As indicated, it is conventional to place a period at
2248 the start of the read/write mount point's name (for example, <emphasis role="bold">/afs/.example.com</emphasis>). The period
2249 distinguishes the read/write mount point from the regular mount point for the <emphasis role="bold">root.cell</emphasis>
2250 volume at the same level. This is the only case in which it is conventional to create two mount points for the same
2251 volume. A desirable side effect of this naming convention for this read/write mount point is that it does not appear in
2252 the output of the UNIX <emphasis role="bold">ls</emphasis> command unless the <emphasis role="bold">-a</emphasis> flag
2253 is included, essentially hiding it from regular users who have no use for it.</para>
2255 <para>The existence of a single read/write mount point at this point in the filespace provides access to the read/write
2256 version of every volume when necessary, because it puts the Cache Manager on a read/write path right at the top of the
2257 filespace. At the same time, the regular mount point for the <emphasis role="bold">root.cell</emphasis> volume puts the
2258 Cache Manager on a read-only path most of the time.</para>
2260 <para>Using a read/write mount point for a read-only or backup volume is acceptable, but unnecessary. The first rule of
2261 mount point traversal already specifies that the Cache Manager accesses them if the volume name in a regular mount point
2262 has a <emphasis role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension.</para>
2264 <para>To create a read/write mount point, use the <emphasis role="bold">-rw</emphasis> flag on the <emphasis
2265 role="bold">fs mkmount</emphasis> command as described in <link linkend="HDRWQ212">To create a regular or read/write
2266 mount point</link>.</para>
2270 <para>When the Cache Manager crosses a <emphasis>cellular</emphasis> mount point, it accesses the indicated volume in
2271 the specified cell, which is normally a foreign cell. (If the mount point does not name a cell along with the volume,
2272 the Cache Manager accesses the volume in the cell where the mount point resides.) When crossing a regular cellular mount
2273 point, the Cache Manager disregards the third mount point traversal rule. Instead, it accesses a read-only version of
2274 the volume if it is replicated, even if the volume that houses the mount point is read/write.</para>
2276 <para>It is inappropriate to circumvent this behavior by creating a read/write cellular mount point, because traversing
2277 the read/write path imposes an unfair load on the foreign cell's file server machines. The File Server must issue a
2278 callback for each file fetched from the read/write volume, rather than single callback required for a read-only volume.
2279 In any case, only a cell's own administrators generally need to access the read/write versions of replicated
2283 <primary>cellular mount point</primary>
2285 <secondary></secondary>
2287 <see>mount point</see>
2291 <primary>mount point</primary>
2293 <secondary>cellular</secondary>
2295 <tertiary>described</tertiary>
2299 <primary>mounting</primary>
2301 <secondary>foreign volume in local cell</secondary>
2304 <para>It is conventional to create cellular mount points only at the second level in a cell's filespace, using them to
2305 mount foreign cells' <emphasis role="bold">root.cell</emphasis> volumes just below the AFS filespace root (by
2306 convention, at <emphasis role="bold">/afs/</emphasis><replaceable>foreign_cellname</replaceable>). The mount point
2307 enables local users to access the foreign cell's filespace, assuming they have the necessary permissions on the ACL of
2308 the volume's root directory and that there is an entry for the foreign cell in each local client machine's <emphasis
2309 role="bold">/usr/vice/etc/CellServDB</emphasis> file, as described in <link linkend="HDRWQ406">Maintaining Knowledge of
2310 Database Server Machines</link>.</para>
2312 <para>Creating cellular mount points at other levels in the filespace and mounting foreign volumes other than the
2313 <emphasis role="bold">root.cell</emphasis> volume is not generally appropriate. It can be confusing to users if the
2314 Cache Manager switches between cells at various points in a pathname.</para>
2316 <para>To create a regular cellular mount point, use the <emphasis role="bold">-cell</emphasis> argument to specify the
2317 cell name, as described in <link linkend="HDRWQ213">To create a cellular mount point</link>.</para>
2319 </itemizedlist></para>
2321 <para>To examine a mount point, use the <emphasis role="bold">fs lsmount</emphasis> command as described in <link
2322 linkend="HDRWQ211">To display a mount point</link>. The command's output uses distinct notation to identify regular,
2323 read/write, and cellular mount points. To remove a mount point, use the <emphasis role="bold">fs rmmount</emphasis> command as
2324 described in <link linkend="HDRWQ215">To remove a mount point</link>.</para>
2327 <sect2 id="Header_227">
2328 <title>Creating a mount point in a foreign cell</title>
2330 <para>Creating a mount point in a foreign cell's filespace (as opposed to mounting a foreign volume in the local cell) is
2331 basically the same as creating a mount point in the local filespace. The differences are that the <emphasis role="bold">fs
2332 mkmount</emphasis> command's directory argument specifies a pathname in the foreign cell rather than the local cell, and you
2333 must have the required permissions on the ACL of the foreign directory where you are creating the mount point. The <emphasis
2334 role="bold">fs mkmount</emphasis> command's <emphasis role="bold">-cell</emphasis> argument always specifies the cell in which
2335 the volume resides, not the cell in which to create the mount point.</para>
2338 <sect2 id="HDRWQ211">
2339 <title>To display a mount point</title>
2342 <primary>displaying</primary>
2344 <secondary>mount point</secondary>
2348 <primary>mount point</primary>
2350 <secondary>displaying</secondary>
2354 <primary>mount point</primary>
2356 <secondary>distinguishing different types</secondary>
2360 <primary>commands</primary>
2362 <secondary>fs lsmount</secondary>
2366 <primary>fs commands</primary>
2368 <secondary>lsmount</secondary>
2373 <para>Issue the <emphasis role="bold">fs lsmount</emphasis> command. <programlisting>
2374 % <emphasis role="bold">fs lsmount</emphasis> <<replaceable>directory</replaceable>>
2375 </programlisting></para>
2377 <para>where <variablelist>
2379 <term><emphasis role="bold">ls</emphasis></term>
2382 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">lsmount</emphasis>.</para>
2387 <term><emphasis role="bold">directory</emphasis></term>
2390 <para>Names the mount point to display.</para>
2393 </variablelist></para>
2397 <para>If the specified directory is a mount point, the output is of the following form:</para>
2400 'directory' is a mount point for volume 'volume name'
2403 <para>For a regular mount point, a number sign (<computeroutput>#</computeroutput>) precedes the volume name string, as in the
2404 following example command issued on a client machine in the <emphasis role="bold">example.com</emphasis> cell.</para>
2407 % <emphasis role="bold">fs lsmount /afs/example.com/usr/terry</emphasis>
2408 '/afs/example.com/usr/terry' is a mount point for volume '#user.terry'
2411 <para>For a read/write mount point, a percent sign (<computeroutput>%</computeroutput>) precedes the volume name string, as in
2412 the following example command issued on a client machine in the <emphasis role="bold">example.com</emphasis> cell. The cell's
2413 administrators have followed the convention of preceding the read/write mount point's name with a period.</para>
2416 % <emphasis role="bold">fs lsmount /afs/.example.com</emphasis>
2417 '/afs/.example.com' is a mount point for volume '%root.cell'
2420 <para>For a cellular mount point, a cell name and colon (<computeroutput>:</computeroutput>) follow the number or percent sign
2421 and precede the volume name string, as in the following example command issued on a client machine in the <emphasis
2422 role="bold">example.com</emphasis> cell.</para>
2425 % <emphasis role="bold">fs lsmount /afs/example.org</emphasis>
2426 '/afs/example.org' is a mount point for volume '#example.org:root.cell'
2429 <para>For a symbolic link to a mount point, the output is of the form shown in the following example command issued on a
2430 client machine in the <emphasis role="bold">example.com</emphasis> cell.</para>
2433 % <emphasis role="bold">fs lsmount /afs/example</emphasis>
2434 '/afs/example' is a symbolic link, leading to a mount point for volume '#root.cell'
2437 <para>If the directory is not a mount point or is not in AFS, the output reads as follows.</para>
2440 'directory' is not a mount point.
2443 <para>If the output is garbled, it is possible that the mount point has become corrupted in the local cache. Use the <emphasis
2444 role="bold">fs flushmount</emphasis> command as described in <link linkend="HDRWQ413">To flush one or more mount
2445 points</link>. This forces the Cache Manager to refetch the mount point.</para>
2448 <sect2 id="HDRWQ212">
2449 <title>To create a regular or read/write mount point</title>
2452 <primary>creating</primary>
2454 <secondary>read/write or regular mount point</secondary>
2458 <primary>mount point</primary>
2460 <secondary>creating read/write or regular</secondary>
2464 <primary>mount point</primary>
2466 <secondary>regular</secondary>
2468 <tertiary>creating</tertiary>
2472 <primary>mount point</primary>
2474 <secondary>read/write</secondary>
2476 <tertiary>creating</tertiary>
2480 <primary>commands</primary>
2482 <secondary>fs mkmount</secondary>
2484 <tertiary>general instructions</tertiary>
2488 <primary>fs commands</primary>
2490 <secondary>mkmount</secondary>
2492 <tertiary>general instructions</tertiary>
2497 <para>Verify that you have the <emphasis role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>) and <emphasis
2498 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) permissions on the ACL of the directory where you
2499 are placing the mount point. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
2500 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
2501 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
2502 </programlisting></para>
2506 <para>Issue the <emphasis role="bold">fs mkmount</emphasis> command to create the mount point. Include the <emphasis
2507 role="bold">-rw</emphasis> flag if creating a read/write mount point. <programlisting>
2508 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> [<emphasis
2509 role="bold">-rw</emphasis>]
2510 </programlisting></para>
2512 <para>where <variablelist>
2514 <term><emphasis role="bold">mk</emphasis></term>
2517 <para>Is the shortest acceptable abbreviation for <emphasis role="bold">mkmount</emphasis>.</para>
2522 <term><emphasis role="bold">directory</emphasis></term>
2525 <para>Names the mount point to create. A file or directory with the same name cannot already exist. A partial
2526 pathname is interpreted relative to the current working directory.</para>
2528 <para>Specify the read/write path to the mount point, to avoid the failure that results when you attempt to create
2529 a new mount point in a read-only volume. By convention, you indicate the read/write path by placing a period
2530 before the cell name at the pathname's second level (for example, <emphasis role="bold">/afs/.example.com</emphasis>).
2531 For further discussion of the concept of read/write and read-only paths through the filespace, see <link
2532 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>.</para>
2537 <term><emphasis role="bold">volume name</emphasis></term>
2540 <para>Specifies the volume's full name, including the <emphasis role="bold">.backup</emphasis> or <emphasis
2541 role="bold">.readonly</emphasis> extension for a backup or read-only volume, if appropriate.</para>
2546 <term><emphasis role="bold">-rw</emphasis></term>
2549 <para>Creates a read/write mount point.</para>
2552 </variablelist></para>
2557 <sect2 id="HDRWQ213">
2558 <title>To create a cellular mount point</title>
2561 <primary>creating</primary>
2563 <secondary>cellular mount point</secondary>
2567 <primary>mount point</primary>
2569 <secondary>creating cellular</secondary>
2573 <primary>mount point</primary>
2575 <secondary>cellular</secondary>
2577 <tertiary>creating</tertiary>
2582 <para>Verify that you have the <emphasis role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>) and <emphasis
2583 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) permissions on the ACL of the directory where you
2584 are placing the mount point. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
2585 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
2586 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
2587 </programlisting></para>
2590 <listitem id="LIWQ214">
2591 <para>If you are mounting one or more foreign cells' <emphasis role="bold">root.cell</emphasis>
2592 volume at the second level in your filespace and your cell's <emphasis role="bold">root.afs</emphasis> volume is
2593 replicated, you must create a temporary mount point for the <emphasis role="bold">root.afs</emphasis> volume's read/write
2594 version in a directory on which the ACL grants you the <emphasis role="bold">i</emphasis> and <emphasis
2595 role="bold">a</emphasis> permissions. The following command creates a mount point called <emphasis
2596 role="bold">new_cells</emphasis> in your cell's <emphasis role="bold">/afs/.</emphasis><replaceable>cellname</replaceable>
2597 directory (the entry point to the read/write path in your cell).</para>
2599 <para>Substitute your cell's name for cellname.</para>
2602 % <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable>
2603 % <emphasis role="bold">fs mkmount new_cells root.afs</emphasis>
2604 % <emphasis role="bold">cd new_cells</emphasis>
2609 <para>Issue the <emphasis role="bold">fs mkmount</emphasis> command with the <emphasis role="bold">-cell</emphasis>
2610 argument to create a cellular mount point. Repeat the command for each cellular mount point as required. <programlisting>
2611 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> <emphasis
2612 role="bold">-cell</emphasis> <<replaceable>cell name</replaceable>>
2613 </programlisting></para>
2615 <para>where <variablelist>
2617 <term><emphasis role="bold">mk</emphasis></term>
2620 <para>Is the shortest acceptable abbreviation for <emphasis role="bold">mkmount</emphasis>.</para>
2625 <term><emphasis role="bold">directory</emphasis></term>
2628 <para>Names the mount point to create. A file or directory with the same name cannot already exist. A partial
2629 pathname is interpreted relative to the current working directory. If you are mounting a foreign cell's <emphasis
2630 role="bold">root.cell</emphasis> volume, the standard value for this argument is the cell's complete Internet
2636 <term><emphasis role="bold">volume name</emphasis></term>
2639 <para>Specifies the volume's full name, usually <emphasis role="bold">root.cell</emphasis> for a cellular mount
2645 <term><emphasis role="bold">-cell</emphasis></term>
2648 <para>Specifies the complete Internet domain name of the cell in which the volume resides.</para>
2651 </variablelist></para>
2655 <para>If you performed the instructions in Step <link linkend="LIWQ214">2</link>, issue the <emphasis role="bold">vos
2656 release</emphasis> command to release the new version of the <emphasis role="bold">root.afs</emphasis> volume to its
2657 read-only sites. (This command requires that you be listed in your cell's <emphasis
2658 role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, verify by issuing the <emphasis role="bold">bos
2659 listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To display the users in the UserList
2660 file</link>.)</para>
2662 <para>Also issue the <emphasis role="bold">fs checkvolumes</emphasis> command to force the local Cache Manager to access
2663 the new replica of the <emphasis role="bold">root.afs</emphasis> volume. If desired, you can also remove the temporary
2664 <emphasis role="bold">new_cells</emphasis> mount point from the <emphasis
2665 role="bold">/afs/.</emphasis><replaceable>cellname</replaceable> directory.</para>
2668 % <emphasis role="bold">vos release root.afs</emphasis>
2669 % <emphasis role="bold">fs checkvolumes</emphasis>
2670 % <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable>
2671 % <emphasis role="bold">fs rmmount new_cells</emphasis>
2674 <para>For your users to access a newly mounted foreign cell, you must also create an entry for it in each client machine's
2675 local <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file and either reboot the machine or use the <emphasis
2676 role="bold">fs newcell</emphasis> command to insert the entry directly into its kernel memory. See the instructions in
2677 <link linkend="HDRWQ406">Maintaining Knowledge of Database Server Machines</link>.</para>
2682 <sect2 id="HDRWQ215">
2683 <title>To remove a mount point</title>
2686 <primary>removing</primary>
2688 <secondary>mount point</secondary>
2692 <primary>unmounting</primary>
2694 <secondary>volume</secondary>
2698 <primary>mount point</primary>
2700 <secondary>removing</secondary>
2704 <primary>commands</primary>
2706 <secondary>fs rmmount</secondary>
2710 <primary>fs commands</primary>
2712 <secondary>rmmount</secondary>
2717 <para>Verify that you have the <emphasis role="bold">d</emphasis>( <emphasis role="bold">delete</emphasis>) permission on
2718 the ACL of the directory from which you are removing the mount point. If necessary, issue the <emphasis role="bold">fs
2719 listacl</emphasis> command, which is fully described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
2720 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
2721 </programlisting></para>
2723 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
2724 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
2725 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
2726 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
2730 <para>Issue the <emphasis role="bold">fs rmmount</emphasis> command to remove the mount point. The volume still exists,
2731 but its contents are inaccessible if this is the only mount point for it. <programlisting>
2732 % <emphasis role="bold">fs rmmount</emphasis> <<replaceable>directory</replaceable>>
2733 </programlisting></para>
2735 <para>where <variablelist>
2737 <term><emphasis role="bold">rm</emphasis></term>
2740 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">rmmount</emphasis>.</para>
2745 <term><emphasis role="bold">directory</emphasis></term>
2748 <para>Names the mount point to remove. A partial pathname is interpreted relative to the current working
2751 <para>Specify the read/write path to the mount point, to avoid the failure that results when you attempt to delete
2752 a mount point from a read-only volume. By convention, you indicate the read/write path by placing a period before
2753 the cell name at the pathname's second level (for example, <emphasis role="bold">/afs/.example.com</emphasis>). For
2754 further discussion of the concept of read/write and read-only paths through the filespace, see <link
2755 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>.</para>
2758 </variablelist></para>
2764 <title>To access volumes directly by volume ID</title>
2767 <primary>volume</primary>
2769 <secondary>direct access</secondary>
2772 <para>You can directly access volumes by volume IDs. This is only
2773 recommended for temporary access to a volume. For example, if you
2774 have recently restored a volume from a backup, you can use this
2775 syntax to quickly access the volume without mounting it.</para>
2776 <para>Examples:</para>
2779 <para><emphasis role="bold">Windows:</emphasis>
2780 \\afs\example.com#root.cell</para>
2783 <para><emphasis role="bold">Unix:</emphasis>
2784 /afs/.:mount/example.com#root.cell</para>
2790 <sect1 id="HDRWQ216">
2791 <title>Displaying Information About Volumes</title>
2794 <primary>displaying</primary>
2796 <secondary>volume information</secondary>
2800 <primary>volume</primary>
2802 <secondary>displaying information about</secondary>
2805 <para>This section explains how to display information about volumes. If you know a volume's name or volume ID number, there are
2806 commands for displaying its VLDB entry, its volume header, or both. Other commands display the name or location of the volume
2807 that contains a specified file or directory.</para>
2809 <para>For instructions on displaying a volume's quota, see <link linkend="HDRWQ234">Setting and Displaying Volume Quota and
2810 Current Size</link>.</para>
2812 <sect2 id="HDRWQ217">
2813 <title>Displaying VLDB Entries</title>
2816 <primary>displaying</primary>
2818 <secondary>volume's VLDB entry</secondary>
2822 <primary>VLDB</primary>
2824 <secondary>displaying volume entry</secondary>
2828 <primary>volume entry (VLDB)</primary>
2830 <secondary>displaying</secondary>
2834 <primary>locked VLDB entry</primary>
2836 <secondary>displaying</secondary>
2839 <para>The <emphasis role="bold">vos listvldb</emphasis> command displays the VLDB entry for the volumes indicated by the
2840 combination of arguments you provide. The possibilities are listed here from most to least inclusive: <itemizedlist>
2842 <para>To display every entry in the VLDB, provide no arguments. It can take a long time to generate the output,
2843 depending on the number of entries.</para>
2847 <para>To display every VLDB entry that mentions a specific file server machine as the site of a volume, specify the
2848 machine's name with the <emphasis role="bold">-server</emphasis> argument.</para>
2852 <para>To display every VLDB entry that mentions a certain partition on any file server machine as the site of a volume,
2853 specify the partition name with the <emphasis role="bold">-partition</emphasis> argument.</para>
2857 <para>To display every VLDB entry that mentions a certain partition on a certain file server machine as the site of a
2858 volume, combine the <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis>
2863 <para>To display a single VLDB entry, specify a volume name or ID number with the <emphasis role="bold">-name</emphasis>
2868 <para>To display the VLDB entry only for volumes with locked VLDB entries, use the <emphasis
2869 role="bold">-locked</emphasis> flag with any of the site definitions mentioned previously.</para>
2871 </itemizedlist></para>
2874 <primary>commands</primary>
2876 <secondary>vos listvldb</secondary>
2878 <tertiary>syntax</tertiary>
2882 <primary>vos commands</primary>
2884 <secondary>listvldb</secondary>
2886 <tertiary>syntax</tertiary>
2890 <sect2 id="HDRWQ218">
2891 <title>To display VLDB entries</title>
2895 <para>Issue the <emphasis role="bold">vos listvldb</emphasis> command. <programlisting>
2896 % <emphasis role="bold">vos listvldb</emphasis> [<emphasis role="bold">-name</emphasis> <<replaceable>volume name or ID</replaceable>>] [<emphasis
2897 role="bold">-server</emphasis> <<replaceable>machine name</replaceable>>] \
2898 [<emphasis role="bold">-partition</emphasis> <<replaceable>partition name</replaceable>>] [<emphasis role="bold">-locked</emphasis>]
2899 </programlisting></para>
2901 <para>where <variablelist>
2903 <term><emphasis role="bold">listvl</emphasis></term>
2906 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">listvldb</emphasis>.</para>
2911 <term><emphasis role="bold">-name</emphasis></term>
2914 <para>Identifies one volume either by its complete name or volume ID number. Do not combine this argument with the
2915 <emphasis role="bold">-server</emphasis> or <emphasis role="bold">-partition</emphasis> arguments.</para>
2920 <term><emphasis role="bold">-server</emphasis></term>
2923 <para>Specifies a file server machine. Combine this argument with the <emphasis role="bold">-partition</emphasis>
2924 argument if desired, but not with the <emphasis role="bold">-name</emphasis> argument.</para>
2929 <term><emphasis role="bold">-partition</emphasis></term>
2932 <para>Specifies a partition. Combine this argument with the <emphasis role="bold">-server</emphasis> argument if
2933 desired, but not with the <emphasis role="bold">-name</emphasis> argument.</para>
2938 <term><emphasis role="bold">-locked</emphasis></term>
2941 <para>Displays only locked VLDB entries. Combine this flag with any of the other options.</para>
2944 </variablelist></para>
2948 <para>The VLDB entry for each volume includes the following information: <itemizedlist>
2950 <para>The base (read/write) volume name. The read-only and backup versions have the same name with a <emphasis
2951 role="bold">.readonly</emphasis> and <emphasis role="bold">.backup</emphasis> extension, respectively.</para>
2955 <para>The volume ID numbers allocated to the versions of the volume that actually exist, in fields labeled
2956 <computeroutput>RWrite</computeroutput> for the read/write, <computeroutput>ROnly</computeroutput> for the read-only,
2957 <computeroutput>Backup</computeroutput> for the backup, and <computeroutput>RClone</computeroutput> for the
2958 ReleaseClone. (If a field does not appear, the corresponding version of the volume does not exist.) The appearance of
2959 the <computeroutput>RClone</computeroutput> field normally indicates that a release operation did not complete
2960 successfully; the <computeroutput>Old release</computeroutput> and <computeroutput>New release</computeroutput> flags
2961 often also appear on one or more of the site definition lines described just following.</para>
2964 <primary>site</primary>
2966 <secondary>count in VLDB</secondary>
2970 <primary>VLDB</primary>
2972 <secondary>site count for volume</secondary>
2977 <para>The number of sites that house a read/write or read-only copy of the volume, following the string
2978 <computeroutput>number of sites -></computeroutput>.</para>
2981 <primary>type flag for volume</primary>
2983 <secondary>VLDB entry</secondary>
2987 <primary>VLDB</primary>
2989 <secondary>volume type flags</secondary>
2993 <primary>release</primary>
2995 <secondary>status flags on site definitions in VLDB entry</secondary>
2999 <primary>VLDB</primary>
3001 <secondary>release status flags in volume entry</secondary>
3005 <primary>status flag</primary>
3007 <secondary>release, on site definitions in VLDB entry</secondary>
3012 <para>A line for each site that houses a read/write or read-only copy of the volume, specifying the file server machine,
3013 partition, and type of volume (<computeroutput>RW</computeroutput> for read/write or <computeroutput>RO</computeroutput>
3014 for read-only). If a backup version exists, it is understood to share the read/write site. Several flags can appear with
3015 a site definition: <variablelist>
3017 <primary>Not released</primary>
3019 <secondary>status flag on site definition in VLDB entry</secondary>
3023 <term><computeroutput>Not released</computeroutput></term>
3026 <para>Indicates that the <emphasis role="bold">vos release</emphasis> command has not been issued since the
3027 <emphasis role="bold">vos addsite</emphasis> command was used to define the read-only site.</para>
3030 <primary>Old release</primary>
3032 <secondary>status flag on site definition in VLDB entry</secondary>
3038 <term><computeroutput>Old release</computeroutput></term>
3041 <para>Indicates that a <emphasis role="bold">vos release</emphasis> command did not complete successfully,
3042 leaving the previous, obsolete version of the volume at this site.</para>
3045 <primary>New release</primary>
3047 <secondary>status flag on site definition in VLDB entry</secondary>
3053 <term><computeroutput>New release</computeroutput></term>
3056 <para>Indicates that a <emphasis role="bold">vos release</emphasis> command did not complete successfully, but
3057 that this site did receive the correct new version of the volume.</para>
3060 </variablelist></para>
3064 <para>If the VLDB entry is locked, the string <computeroutput>Volume is currently LOCKED</computeroutput>.</para>
3066 </itemizedlist></para>
3068 <para>For further discussion of the <computeroutput>New release</computeroutput> and <computeroutput>Old
3069 release</computeroutput> flags, see <link linkend="HDRWQ192">Replicating Volumes (Creating Read-only Volumes)</link>.</para>
3071 <para>An example of this command and its output for a single volume:</para>
3074 % <emphasis role="bold">vos listvldb user.terry</emphasis>
3076 RWrite: 50489902 Backup: 50489904
3077 number of sites -> 1
3078 server fs3.example.com partition /vicepc RW Site
3082 <sect2 id="HDRWQ219">
3083 <title>Displaying Volume Headers</title>
3086 <primary>displaying</primary>
3088 <secondary>volume header</secondary>
3092 <primary>volume header</primary>
3094 <secondary>displaying</secondary>
3096 <tertiary>only</tertiary>
3099 <para>The <emphasis role="bold">vos listvol</emphasis> command displays the volume header for every volume on one or all
3100 partitions on a file server machine. The <emphasis role="bold">vos</emphasis> command interpreter obtains the information from
3101 the Volume Server on the specified machine. You can control the amount of information displayed by including one of the
3102 <emphasis role="bold">-fast</emphasis>, the <emphasis role="bold">-long</emphasis>, or the <emphasis
3103 role="bold">-extended</emphasis> flags described following the instructions in <link linkend="HDRWQ220">To display volume
3104 headers</link>.</para>
3106 <para>To display a single volume's volume header of one volume only, use the <emphasis role="bold">vos examine</emphasis>
3107 command as described in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume Header</link>.</para>
3110 <primary>commands</primary>
3112 <secondary>vos listvol</secondary>
3114 <tertiary>syntax</tertiary>
3118 <primary>vos commands</primary>
3120 <secondary>listvol</secondary>
3122 <tertiary>syntax</tertiary>
3126 <sect2 id="HDRWQ220">
3127 <title>To display volume headers</title>
3131 <para>Issue the <emphasis role="bold">vos listvol</emphasis> command. <programlisting>
3132 % <emphasis role="bold">vos listvol</emphasis> <<replaceable>machine name</replaceable>> [<<replaceable>partition name</replaceable>>] [<emphasis
3133 role="bold">-fast</emphasis>] [<emphasis role="bold">-long</emphasis>] [<emphasis role="bold">-extended</emphasis>]
3134 </programlisting></para>
3136 <para>where <variablelist>
3138 <term><emphasis role="bold">listvo</emphasis></term>
3141 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">listvol</emphasis>.</para>
3146 <term><emphasis role="bold">machine name</emphasis></term>
3149 <para>Names the file server machine for which to display volume headers. Provide this argument alone or with the
3150 partition name argument.</para>
3155 <term><emphasis role="bold">partition name</emphasis></term>
3158 <para>Names one partition on the file server machine named by the machine name argument, which must be provided
3159 along with this one.</para>
3164 <term><emphasis role="bold">-fast</emphasis></term>
3167 <para>Displays only the volume ID numbers of relevant volumes. Do not combine this flag with the <emphasis
3168 role="bold">-long</emphasis> or <emphasis role="bold">-extended</emphasis> flag.</para>
3173 <term><emphasis role="bold">-long</emphasis></term>
3176 <para>Displays more detailed information about each volume. Do not combine this flag with the <emphasis
3177 role="bold">-fast</emphasis> or <emphasis role="bold">-extended</emphasis> flag.</para>