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>
734 <para><anchor id="LIWQ186" />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>
778 <para><anchor id="LIWQ187" />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>
799 <para><anchor id="LIWQ188" />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>
878 <anchor id="LIWQ189" />
880 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs mkmount</emphasis> command to mount
881 the volume in the filespace. For complete syntax, see <link linkend="HDRWQ212">To create a regular or read/write mount
882 point</link>. <programlisting>
883 % <emphasis role="bold">fs mkmount</emphasis> <<emphasis>directory</emphasis>> <<emphasis>volume name</emphasis>></programlisting></para>
887 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs lsmount</emphasis> command to verify
888 that the mount point refers to the correct volume. Complete instructions appear in <link linkend="HDRWQ211">To display a
889 mount point</link>. <programlisting>
890 % <emphasis role="bold">fs lsmount</emphasis> <<emphasis>directory</emphasis>></programlisting></para>
894 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs setvol</emphasis> command with the
895 <emphasis role="bold">-offlinemsg</emphasis> argument to record auxiliary information about the volume in its volume
896 header. For example, you can record who owns the volume or where you have mounted it in the filespace. To display the
897 information, use the <emphasis role="bold">fs examine</emphasis> command. <programlisting>
898 % <emphasis role="bold">fs setvol</emphasis> <<replaceable>dir/file path</replaceable>> <emphasis role="bold">-offlinemsg </emphasis> <<replaceable>offline message</replaceable>>
899 </programlisting></para>
901 <para>where <variablelist>
903 <term><emphasis role="bold">sv</emphasis></term>
906 <para>Is an acceptable alias for <emphasis role="bold">setvol</emphasis>(and <emphasis role="bold">setv</emphasis>
907 the shortest acceptable abbreviation).</para>
912 <term><emphasis role="bold">dir/file path</emphasis></term>
915 <para>Names the mount point of the volume with which to associate the message. Partial pathnames are interpreted
916 relative to the current working directory.</para>
918 <para>Specify the read/write path to the mount point, to avoid the failure that results when you attempt to change
919 a read-only volume. By convention, you indicate the read/write path by placing a period before the cell name at
920 the pathname's second level (for example, <emphasis role="bold">/afs/.abc.com</emphasis>). For further discussion
921 of the concept of read/write and read-only paths through the filespace, see <link linkend="HDRWQ209">The Rules of
922 Mount Point Traversal</link>.</para>
927 <term><emphasis role="bold">-offlinemsg</emphasis></term>
930 <para>Specifies up to 128 characters of auxiliary information to record in the volume header.</para>
933 </variablelist></para>
939 <sect1 id="HDRWQ190">
940 <title>About Clones and Cloning</title>
943 <primary>cloning</primary>
945 <secondary>defined</secondary>
949 <primary>clone</primary>
953 <primary>vnode index</primary>
957 <primary>backup volume</primary>
959 <secondary>space-saving nature of</secondary>
962 <para>To create a backup or read-only volume, the Volume Server begins by <emphasis>cloning</emphasis> the read/write source
963 volume to create a <emphasis>clone</emphasis>. The Volume Server creates the clone automatically when you issue the <emphasis
964 role="bold">vos backup</emphasis> or <emphasis role="bold">vos backupsys</emphasis> command (for a backup volume) or the
965 <emphasis role="bold">vos release</emphasis> command (for a read-only volume). No special action is required on your
968 <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
969 <emphasis>vnode index</emphasis>. The vnode index is a table of pointers between the files and directories in the volume and the
970 physical disk blocks on the partition where the data resides. From the clone, backup and read-only volumes are created in the
971 following manner: <itemizedlist>
973 <para>A read-only volume that occupies the same partition as its read/write source (also known as a <emphasis>read-only
974 clone</emphasis>), and a backup volume, are created by attaching a volume header to the clone. These volumes initially
975 consume very little disk space, because the clone portion (the vnode index) points to exactly the same files as the
976 read/write volume, as illustrated in <link linkend="FIGWQ191">Figure 1</link>. The file sharing is possible only because
977 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
978 not actually removed from the partition, because the backup or read-only clone still points to it. Similarly, when a file
979 in the read/write is changed, the entire original file is preserved on disk because the clone still points to it, and the
980 read/write volume's vnode index changes to point to newly space for the changed file. When this happens, the backup or
981 read-only volume is said to grow or start occupying actual disk space.</para>
985 <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
986 the data in the read/write source volume. It occupies the same amount of disk space as the read/write volume did at the
987 time the read-only volume was created.</para>
989 </itemizedlist></para>
991 <figure id="FIGWQ191" label="1">
992 <title>File Sharing Between the Read/write Source and a Clone Volume</title>
996 <imagedata fileref="vnode.png" scale="50" />
1002 <primary>replication</primary>
1004 <secondary>detailed discussion</secondary>
1008 <primary>volume</primary>
1010 <secondary>replicating</secondary>
1014 <primary>volume</primary>
1016 <secondary>read-only</secondary>
1018 <see>read-only volume</see>
1022 <primary>read-only volume</primary>
1024 <secondary>creating</secondary>
1028 <primary>creating</primary>
1030 <secondary>read-only volume</secondary>
1034 <primary>cloning</primary>
1036 <secondary>for replication</secondary>
1040 <primary>read/write volume</primary>
1042 <secondary>cloning</secondary>
1044 <tertiary>for replication</tertiary>
1048 <sect1 id="HDRWQ192">
1049 <title>Replicating Volumes (Creating Read-only Volumes)</title>
1051 <para><emphasis>Replication</emphasis> refers to creating a read-only copy of a read/write volume and distributing the copy to
1052 one or more additional file server machines. Replication makes a volume's contents accessible on more than one file server
1053 machine, which increases data availability. It can also increase system efficiency by reducing load on the network and File
1054 Server. Network load is reduced if a client machine's server preference ranks lead the Cache Manager to access the copy of a
1055 volume stored on the closest file server machine. Load on the File Server is reduced because it issues only one callback for all
1056 data fetched from a read-only volume, as opposed to a callback for each file fetched from a read/write volume. The single
1057 callback is sufficient for an entire read-only volume because the volume does not change except in response to administrator
1058 action, whereas each read/write file can change at any time.</para>
1061 <primary>stages in volume replication</primary>
1065 <primary>site definition stage in replication</primary>
1069 <primary>replication</primary>
1071 <secondary>site definition stage</secondary>
1075 <primary>release stage in replication</primary>
1079 <primary>replication</primary>
1081 <secondary>release stage</secondary>
1084 <para>Replicating a volume requires issuing two commands. First, use the <emphasis role="bold">vos addsite</emphasis> command to
1085 add one or more read-only site definitions to the volume's VLDB entry (a <emphasis>site</emphasis> is a particular partition on
1086 a file server machine). Then use the <emphasis role="bold">vos release</emphasis> command to clone the read/write source volume
1087 and distribute the clone to the defined read-only sites. You issue the <emphasis role="bold">vos addsite</emphasis> only once
1088 for each read-only site, but must reissue the <emphasis role="bold">vos release</emphasis> command every time the read/write
1089 volume's contents change and you want to update the read-only volumes.</para>
1091 <para>For users to have a consistent view of the file system, the release of updated volume contents to read-only sites must be
1092 atomic: either all read-only sites receive the new version of the volume, or all sites keep the version they currently have. The
1093 <emphasis role="bold">vos release</emphasis> command is designed to ensure that all copies of the volume's read-only version
1094 match both the read/write source and each other. In cases where problems such as machine or server process outages prevent
1095 successful completion of the release operation, AFS uses two mechanisms to alert you.</para>
1098 <primary>replication</primary>
1100 <secondary>determining success of</secondary>
1104 <primary>determining</primary>
1106 <secondary>success of replication</secondary>
1110 <primary>replication</primary>
1112 <secondary>need for all-or-nothing release</secondary>
1116 <primary>all-or-nothing release of read-only volumes</primary>
1120 <primary>read-only volume</primary>
1122 <secondary>need for atomic release</secondary>
1126 <primary>releasing</primary>
1128 <secondary>read-only volume, need for atomicity</secondary>
1132 <primary>ReleaseClone</primary>
1136 <primary>replication</primary>
1138 <secondary>role of ReleaseClone</secondary>
1142 <primary>New release site flag in VLDB</primary>
1144 <secondary>as indicator of failed replication</secondary>
1148 <primary>Old release site flag in VLDB</primary>
1150 <secondary>as indicator of failed replication</secondary>
1154 <primary>clone</primary>
1156 <secondary>forcing creation of new</secondary>
1160 <primary>replication</primary>
1162 <secondary>forcing creation of new clone</secondary>
1166 <primary>vos commands</primary>
1168 <secondary>release</secondary>
1170 <tertiary>forcing new cloning with -f flag</tertiary>
1174 <primary>releasing</primary>
1176 <secondary>read-only volume, forcing new cloning</secondary>
1179 <para>First, the command interpreter generates an error message on the standard error stream naming each read-only site that did
1180 not receive the new volume version. Second, during the release operation the Volume Location (VL) Server marks site definitions
1181 in the VLDB entry with flags (<computeroutput>New release</computeroutput> and <computeroutput>Old release</computeroutput>)
1182 that indicate whether or not the site has the new volume version. If any flags remain after the operation completes, it was not
1183 successful. The Cache Manager refuses to access a read-only site marked with the <computeroutput>Old release</computeroutput>
1184 flag, which potentially imposes a greater load on the sites marked with the <computeroutput>New release</computeroutput> flag.
1185 It is important to investigate and eliminate the cause of the failure and then to issue the <emphasis role="bold">vos
1186 release</emphasis> command as many times as necessary to complete the release without errors.</para>
1188 <para>The pattern of site flags remaining in the volume's VLDB entry after a failed release operation can help determine the
1189 point at which the operation failed. Use the <emphasis role="bold">vos examine</emphasis> or <emphasis role="bold">vos
1190 listvldb</emphasis> command to display the VLDB entry. The VL Server sets the flags in concert with the Volume Server's
1191 operations, as follows: <orderedlist>
1193 <para>Before the operation begins, the VL Server sets the <computeroutput>New release</computeroutput> flag on the
1194 read/write site definition in the VLDB entry and the <computeroutput>Old release</computeroutput> flag on read-only site
1195 definitions (unless the read-only site has been defined since the last release operation and has no actual volume, in
1196 which case its site flag remains <computeroutput>Not released</computeroutput>).</para>
1200 <para>If necessary, the Volume Server creates a temporary copy (a <emphasis>clone</emphasis>) of the read/write source
1201 called the ReleaseClone (see the following discussion of when the Volume Server does or does not create a new
1202 ReleaseClone.) It assigns the ReleaseClone its own volume ID number, which the VL Server records in the
1203 <computeroutput>RClone</computeroutput> field of the source volume's VLDB entry.</para>
1207 <para>The Volume Server distributes a copy of the ReleaseClone to each read-only site defined in the VLDB entry. As the
1208 site successfully receives the new clone, the VL Server sets the site's flag in the VLDB entry to <computeroutput>New
1209 release</computeroutput>.</para>
1213 <para>When all the read-only copies are successfully released, the VL Server clears all the <computeroutput>New
1214 release</computeroutput> site flags. The ReleaseClone is no longer needed, so the Volume Server deletes it and the VL
1215 Server erases its ID from the VLDB entry.</para>
1217 </orderedlist></para>
1219 <para>By default, the Volume Server determines automatically whether or not it needs to create a new ReleaseClone: <itemizedlist>
1221 <para>If there are no flags (<computeroutput>New release</computeroutput>, <computeroutput>Old release</computeroutput>,
1222 or <computeroutput>Not released</computeroutput>) on site definitions in the VLDB entry, the previous <emphasis
1223 role="bold">vos release</emphasis> command completed successfully and all read-only sites currently have the same volume.
1224 The Volume Server infers that the current <emphasis role="bold">vos release</emphasis> command was issued because the
1225 read/write volume has changed. The Volume Server creates a new ReleaseClone and distributes it to all of the read-only
1230 <para>If any site definition in the VLDB entry is marked with a flag, either the previous release operation did not
1231 complete successfully or a new read-only site was defined since the last release. The Volume Server does not create a new
1232 ReleaseClone, instead distributing the existing ReleaseClone to sites marked with the <computeroutput>Old
1233 release</computeroutput> or <computeroutput>Not released</computeroutput> flag. As previously noted, the VL Server marks
1234 each VLDB site definition with the <computeroutput>New release</computeroutput> flag as the site receives the
1235 ReleaseClone, and clears all flags after all sites successfully receive it.</para>
1237 </itemizedlist></para>
1239 <para>To override the default behavior, forcing the Volume Server to create and release a new ReleaseClone to the read-only
1240 sites, include the <emphasis role="bold">-f</emphasis> flag. This is appropriate if, for example, the data at the read/write
1241 site has changed since the existing ReleaseClone was created during the previous release operation.</para>
1243 <sect2 id="HDRWQ193">
1244 <title>Using Read-only Volumes Effectively</title>
1247 <primary>criteria for replicating volumes</primary>
1251 <primary>replication</primary>
1253 <secondary>suitable types of volumes</secondary>
1257 <primary>suitability of volumes for replication</primary>
1261 <primary>read/write volume</primary>
1263 <secondary>types suitable for replication</secondary>
1266 <para>For maximum effectiveness, replicate only volumes that satisfy two criteria: <itemizedlist>
1268 <para>The volume's contents are heavily used. Examples include a volume housing binary files for text editors or other
1269 popular application programs, and volumes mounted along heavily traversed directory paths such as the paths leading to
1270 user home directories. It is an inefficient use of disk space to replicate volumes for which the demand is low enough
1271 that a single File Server can easily service all requests.</para>
1275 <para>The volume's contents change infrequently. As noted, file system consistency demands that the contents of
1276 read-only volumes must match each other and their read/write source at all times. Each time the read/write volume
1277 changes, you must issue the <emphasis role="bold">vos release</emphasis> command to update the read-only volumes. This
1278 can become tedious (and easy to forget) if the read/write volume changes frequently.</para>
1280 </itemizedlist></para>
1283 <primary>mounting</primary>
1285 <secondary>read-only volume</secondary>
1289 <primary>read-only volume</primary>
1291 <secondary>mounting</secondary>
1294 <para>Explicitly mounting a read-only volume (creating a mount point that names a volume with a <emphasis
1295 role="bold">.readonly</emphasis> extension) is not generally necessary or appropriate. The Cache Manager has a built-in bias
1296 to access the read-only version of a replicated volume whenever possible. As described in more detail in <link
1297 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>, when the Cache Manager encounters a mount point it reads the
1298 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
1299 mount point resides in a read-only volume and names a read/write volume (one that does not have a <emphasis
1300 role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension), the Cache Manager always attempts to
1301 access a read-only copy of the volume. Thus there is normally no reason to force the Cache Manager to access a read-only
1302 volume by mounting it explicitly.</para>
1304 <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
1305 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
1306 data (see <link linkend="HDRWQ190">About Clones and Cloning</link>). Only if a large number of files are removed or changed in
1307 the read/write volume does the read-only copy occupy much disk space. That normally does not happen because the appropriate
1308 response to changes in a replicated read/write volume is to reclone it. The other reason to place a read-only volume at the
1309 read/write site is that the Cache Manager does not attempt to access the read/write version of a replicated volume if all
1310 read-only copies become inaccessible. If the file server machine housing the read/write volume is the only accessible machine,
1311 the Cache Manager can access the data only if there is a read-only copy at the read/write site.</para>
1313 <para>The number of read-only sites to define depends on several factors. Perhaps the main trade-off is between the level of
1314 demand for the volume's contents and how much disk space you are willing to use for multiple copies of the volume. Of course,
1315 each prospective read-only site must have enough available space to accommodate the volume. The limit on the number of
1316 read-only copies of a volume is determined by the maximum number of site definitions in a volume's VLDB entry, which is
1317 defined in the <emphasis> OpenAFS Release Notes</emphasis>. The site housing the read/write and backup versions of the volume
1318 counts as one site, and each read-only site counts as an additional site (even the read-only site defined on the same file
1319 server machine and partition as the read/write site counts as a separate site). Note also that the Volume Server permits only
1320 one read-only copy of a volume per file server machine.</para>
1323 <sect2 id="Header_216">
1324 <title>Replication Scenarios</title>
1327 <primary>variations possible</primary>
1329 <secondary>in replication</secondary>
1333 <primary>replication</primary>
1335 <secondary>variations possible in</secondary>
1339 <primary>possible variations</primary>
1341 <secondary>on replication</secondary>
1344 <para>The instructions in the following section explain how to replicate a volume for which no read-only sites are currently
1345 defined. However, you can also use the instructions in other common situations: <itemizedlist>
1347 <para>If you are releasing a new clone to sites that already exist, you can skip Step <link linkend="LIWQ196">2</link>.
1348 It can still be useful to issue the <emphasis role="bold">vos examine</emphasis> command, however, to verify that the
1349 desired read-only sites are defined.</para>
1353 <para>If you are adding new read-only sites to existing ones, perform all of the steps. In Step <link
1354 linkend="LIWQ197">3</link>, issue the <emphasis role="bold">vos addsite</emphasis> command for the new sites
1359 <para>If you are defining sites but do not want to release a clone to them yet, stop after Step <link
1360 linkend="LIWQ197">3</link>and continue when you are ready.</para>
1364 <para>If you are removing one or more sites before releasing a new clone to the remaining sites, follow the instructions
1365 for site removal in <link linkend="HDRWQ235">Removing Volumes and their Mount Points</link>and then start with Step
1366 <link linkend="LIWQ198">4</link>.</para>
1368 </itemizedlist></para>
1371 <sect2 id="HDRWQ194">
1372 <title>To replicate a read/write volume (create a read-only volume)</title>
1375 <primary>read-only volume</primary>
1377 <secondary>creating</secondary>
1379 <tertiary>instructions</tertiary>
1383 <primary>read/write volume</primary>
1385 <secondary>replication instructions</secondary>
1390 <para><anchor id="LIWQ195" />Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis>
1391 file. If necessary, issue the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link
1392 linkend="HDRWQ593">To display the users in the UserList file</link>. <programlisting>
1393 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
1394 </programlisting></para>
1398 <para><anchor id="LIWQ196" />Select one or more sites at which to replicate the volume. There are several factors to
1399 consider: <itemizedlist>
1401 <para>How many sites are already defined. As previously noted, it is usually appropriate to define a read-only site
1402 at the read/write site. Also, the Volume Server permits only one read-only copy of a volume per file server machine.
1403 To display the volume's current sites, issue the <emphasis role="bold">vos examine</emphasis> command, which is
1404 described fully in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume Header</link>.
1406 % <emphasis role="bold">vos examine</emphasis> <<replaceable>volume name or ID</replaceable>>
1407 </programlisting></para>
1409 <para>The final lines of output display the volume's site definitions from the VLDB.</para>
1413 <para>Whether your cell dedicates any file server machines to housing read-only volumes only. In general, only very
1414 large cells use read-only server machines.</para>
1418 <para>Whether a site has enough free space to accommodate the volume. A read-only volume requires the same amount of
1419 space as the read/write version (unless it is at the read/write site itself). The first line of output from the
1420 <emphasis role="bold">vos examine</emphasis> command displays the read/write volume's current size in kilobyte
1421 blocks, as shown in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume Header</link>.</para>
1423 <para>To display the amount of space available on a file server machine's partitions, use the <emphasis
1424 role="bold">vos partinfo</emphasis> command, which is described fully in <link linkend="HDRWQ185">Creating
1425 Read/write Volumes</link>.</para>
1428 % <emphasis role="bold">vos partinfo</emphasis> <<replaceable>machine name</replaceable>> [<<replaceable>partition name</replaceable>>]
1431 </itemizedlist></para>
1434 <primary>read-only volume</primary>
1436 <secondary>defining site for in VLDB</secondary>
1440 <primary>defining</primary>
1442 <secondary>read-only site in VLDB</secondary>
1446 <primary>adding</primary>
1448 <secondary>read-only site definition in VLDB</secondary>
1452 <primary>VLDB</primary>
1454 <secondary>defining read-only site in</secondary>
1458 <primary>commands</primary>
1460 <secondary>vos addsite</secondary>
1464 <primary>vos commands</primary>
1466 <secondary>addsite</secondary>
1471 <para><anchor id="LIWQ197" />Issue the <emphasis role="bold">vos addsite</emphasis> command to define each new read-only
1472 site in the VLDB. <programlisting>
1473 % <emphasis role="bold">vos addsite</emphasis> <<replaceable>machine name</replaceable>> <<replaceable>partition name</replaceable>> <<replaceable>volume name or ID</replaceable>>
1474 </programlisting></para>
1476 <para>where <variablelist>
1478 <term><emphasis role="bold">ad</emphasis></term>
1481 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">addsite</emphasis>.</para>
1486 <term><emphasis role="bold">machine name</emphasis></term>
1489 <para>Defines the file server machine for the new site.</para>
1494 <term><emphasis role="bold">partition name</emphasis></term>
1497 <para>Names a disk partition on the machine machine name.</para>
1502 <term><emphasis role="bold">volume name or ID</emphasis></term>
1505 <para>Identifies the read/write volume to be replicated, either by its complete name or its volume ID
1509 </variablelist></para>
1513 <para><anchor id="LIWQ198" /><emphasis role="bold">(Optional)</emphasis> Verify that the <emphasis
1514 role="bold">fs</emphasis> process (which incorporates the Volume Server) is functioning normally on each file server
1515 machine where you have defined a read-only site, and that the <emphasis role="bold">vlserver</emphasis> process (the
1516 Volume Location Server) is functioning correctly on each database server machine. Knowing that they are functioning
1517 eliminates two possible sources of failure for the release. Issue the <emphasis role="bold">bos status</emphasis> command
1518 on each file server machine housing a read-only site for this volume and on each database server machine. The command is
1519 described fully in <link linkend="HDRWQ158">Displaying Process Status and Information from the BosConfig File</link>.
1521 % <emphasis role="bold">bos status</emphasis> <<replaceable>machine name</replaceable>> <emphasis role="bold">fs vlserver</emphasis>
1522 </programlisting></para>
1525 <primary>releasing</primary>
1527 <secondary>read-only volume</secondary>
1531 <primary>read-only volume</primary>
1533 <secondary>releasing</secondary>
1537 <primary>commands</primary>
1539 <secondary>vos release</secondary>
1541 <tertiary>basic instructions</tertiary>
1545 <primary>vos commands</primary>
1547 <secondary>release</secondary>
1549 <tertiary>basic instructions</tertiary>
1554 <para><anchor id="LIWQ199" />Issue the <emphasis role="bold">vos release</emphasis> command to clone the read/write source
1555 volume and distribute the clone to each read-only site. <programlisting>
1556 % <emphasis role="bold">vos release</emphasis> <<replaceable>volume name or ID</replaceable>> [<emphasis role="bold">-f</emphasis>]
1557 </programlisting></para>
1559 <para>where <variablelist>
1561 <term><emphasis role="bold">rel</emphasis></term>
1564 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">release</emphasis>.</para>
1569 <term><emphasis role="bold">volume name or ID</emphasis></term>
1572 <para>Identifies the read/write volume to clone, either by its complete name or volume ID number. The read-only
1573 version is given the same name with a <emphasis role="bold">.readonly</emphasis> extension. All read-only copies
1574 share the same read-only volume ID number.</para>
1579 <term><emphasis role="bold">-f</emphasis></term>
1582 <para>Creates and releases a brand new clone.</para>
1585 </variablelist></para>
1589 <anchor id="LIWQ200" />
1591 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">vos examine</emphasis> command to verify
1592 that no site definition in the VLDB entry is marked with an <computeroutput>Old release</computeroutput> or
1593 <computeroutput>New release</computeroutput> flag. The command is described fully in <link linkend="HDRWQ221">Displaying
1594 One Volume's VLDB Entry and Volume Header</link>. <programlisting>
1595 % <emphasis role="bold">vos examine</emphasis> <<replaceable>volume name or ID</replaceable>>
1596 </programlisting></para>
1600 <para>If any flags appear in the output from Step <link linkend="LIWQ200">6</link>, repeat Steps <link
1601 linkend="LIWQ198">4</link>and <link linkend="LIWQ199">5</link>until the Volume Server does not produce any error messages
1602 during the release operation and the flags no longer appear. Do not issue the <emphasis role="bold">vos release</emphasis>
1603 command when you know that the read/write site or any read-only site is inaccessible due to network, machine or server process
1608 <sect1 id="HDRWQ201">
1609 <title>Creating Backup Volumes</title>
1612 <primary>read/write volume</primary>
1614 <secondary>cloning</secondary>
1616 <tertiary>for backup version</tertiary>
1620 <primary>cloning</primary>
1622 <secondary>for backup</secondary>
1626 <primary>creating</primary>
1628 <secondary>backup volume</secondary>
1632 <primary>volume</primary>
1634 <secondary>backup</secondary>
1636 <see>backup volume</see>
1640 <primary>backup volume</primary>
1642 <secondary>creating</secondary>
1645 <para>A <emphasis>backup volume</emphasis> is a clone that resides at the same site as its read/write source (to review the
1646 concept of cloning, see <link linkend="HDRWQ190">About Clones and Cloning</link>). Creating a backup version of a volume has two
1647 purposes: <itemizedlist>
1649 <para>It is by convention the first step when dumping a volume's contents to tape with the AFS Backup System. A volume is
1650 inaccessible while it is being dumped, so instead of dumping the read/write volume, you create and dump a backup version.
1651 Users do not normally access the backup version, so it is unlikely that the dump will disturb them. For more details, see
1652 <link linkend="HDRWQ296">Backing Up Data</link>.</para>
1656 <para>It enables users to restore mistakenly deleted or changed data themselves, freeing you for more crucial tasks. The
1657 backup version captures the state of its read/write source at the time the backup is made, and its contents cannot change.
1658 Mount the backup version in the filespace so that users can restore a file to its state at the time you made the backup.
1659 See <link linkend="HDRWQ204">Making the Contents of Backup Volumes Available to Users</link>.</para>
1661 </itemizedlist></para>
1664 <primary>creating</primary>
1666 <secondary>multiple backup volumes at once</secondary>
1670 <primary>volume</primary>
1672 <secondary>creating backup version of many at once</secondary>
1676 <primary>backup volume</primary>
1678 <secondary>creating multiple at once</secondary>
1681 <sect2 id="HDRWQ202">
1682 <title>Backing Up Multiple Volumes at Once</title>
1684 <para>The <emphasis role="bold">vos backupsys</emphasis> command creates a backup version of many read/write volumes at once.
1685 This command is useful when preparing for large-scale backups to tape using the AFS Backup System.</para>
1687 <para>To clone every read/write volume listed in the VLDB, omit all of the command's options. Otherwise, combine the command's
1688 options to clone various groups of volumes. The options use one of two basic criteria to select volumes: location (the
1689 <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments) or presence in the volume
1690 name of one of a set of specified character strings (the <emphasis role="bold">-prefix</emphasis>, <emphasis
1691 role="bold">-exclude</emphasis>, and <emphasis role="bold">-xprefix</emphasis> options).</para>
1693 <para>To clone only volumes that reside on one file server machine, include the <emphasis role="bold">-server</emphasis>
1694 argument. To clone only volumes that reside on one partition, combine the <emphasis role="bold">-server</emphasis> and
1695 <emphasis role="bold">-partition</emphasis> arguments. The <emphasis role="bold">-partition</emphasis> argument can also be
1696 used alone to clone volumes that reside on the indicated partition on every file server machine. These arguments can be
1697 combined with those that select volumes based on their names.</para>
1699 <para>Combine the <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-exclude</emphasis>, and <emphasis
1700 role="bold">-xprefix</emphasis> options (with or without the <emphasis role="bold">-server</emphasis> and <emphasis
1701 role="bold">-partition</emphasis> arguments) in the indicated ways to select volumes based on character strings contained in
1702 their names: <itemizedlist>
1704 <para>To clone every read/write volume at the specified location whose name includes one of a set of specified character
1705 strings (for example, begins with <emphasis role="bold">user.</emphasis> or includes the string <emphasis
1706 role="bold">afs</emphasis>), use the <emphasis role="bold">-prefix</emphasis> argument or combine the <emphasis
1707 role="bold">-xprefix</emphasis> and <emphasis role="bold">-exclude</emphasis> options.</para>
1711 <para>To clone every read/write volume at the specified location except those whose name includes one of a set of
1712 specified character strings, use the <emphasis role="bold">-xprefix</emphasis> argument or combine the <emphasis
1713 role="bold">-prefix</emphasis> and <emphasis role="bold">-exclude</emphasis> options.</para>
1717 <para>To clone every read/write volume at the specified location whose name includes one of one of a set of specified
1718 character strings, except those whose names include one of a different set of specified character strings, combine the
1719 <emphasis role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments. The command creates a
1720 list of all volumes that match the <emphasis role="bold">-prefix</emphasis> argument and then removes from the list the
1721 volumes that match the <emphasis role="bold">-xprefix</emphasis> argument. For effective results, the strings specified
1722 by the <emphasis role="bold">-xprefix</emphasis> argument must designate a subset of the volumes specified by the
1723 <emphasis role="bold">-prefix</emphasis> argument.</para>
1725 <para>If the <emphasis role="bold">-exclude</emphasis> flag is combined with the <emphasis
1726 role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments, the command creates a list of
1727 all volumes that do not match the <emphasis role="bold">-prefix</emphasis> argument and then adds to the list any
1728 volumes that match the <emphasis role="bold">-xprefix</emphasis> argument. As when the <emphasis
1729 role="bold">-exclude</emphasis> flag is not used, the result is effective only if the strings specified by the <emphasis
1730 role="bold">-xprefix</emphasis> argument designate a subset of the volumes specified by the <emphasis
1731 role="bold">-prefix</emphasis> argument.</para>
1733 </itemizedlist></para>
1735 <para>The <emphasis role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments both accept
1736 multiple values, which can be used to define disjoint groups of volumes. Each value can be one of two types: <orderedlist>
1738 <para>A simple character string, which matches volumes whose name begin with the string. All characters are interpreted
1739 literally (that is, characters that potentially have special meaning to the command shell, such as the period, have only
1740 their literal meaning).</para>
1744 <para>A regular expression, which matches volumes whose names contain the expressions. Place a caret ( <emphasis
1745 role="bold">^</emphasis>) at the beginning of the expression, and enclose the entire string in single quotes ( <emphasis
1746 role="bold">'</emphasis> <emphasis role="bold">'</emphasis>). Explaining regular expressions is outside the scope of
1747 this reference page; see the UNIX manual page for <emphasis role="bold">regexp(5)</emphasis> or (for a brief
1748 introduction) <link linkend="HDRWQ265">Defining and Displaying Volume Sets and Volume Entries</link>. As an example, the
1749 following expression matches volumes that have the string <emphasis role="bold">aix</emphasis> anywhere in their names:
1751 <emphasis role="bold">-prefix '^.*aix'</emphasis>
1752 </programlisting></para>
1754 </orderedlist></para>
1756 <para>To display a list of the volumes to be cloned, without actually cloning them, include the <emphasis
1757 role="bold">-dryrun</emphasis> flag. To display a statement that summarizes the criteria being used to select volume, include
1758 the <emphasis role="bold">-verbose</emphasis> flag.</para>
1760 <para>To back up a single volume, use the <emphasis role="bold">vos backup</emphasis> command, which employs a more
1761 streamlined technique for finding a single volume.</para>
1764 <primary>automating</primary>
1766 <secondary>creation of backup volumes</secondary>
1770 <primary>backup volume</primary>
1772 <secondary>automating creation of</secondary>
1776 <primary>volume</primary>
1778 <secondary>automating creation of backup version</secondary>
1782 <primary>backup volume</primary>
1784 <secondary>suggested schedule for creation of</secondary>
1788 <primary>scheduling</primary>
1790 <secondary>creation of backup volumes</secondary>
1794 <primary>cron-type server process</primary>
1796 <secondary>used to automate volume backup</secondary>
1800 <sect2 id="HDRWQ203">
1801 <title>Automating Creation of Backup Volumes</title>
1803 <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
1804 backup versions at a time when usage is low, because the backup operation causes the read/write volume to be unavailable
1807 <para>You can either issue the necessary the <emphasis role="bold">vos backupsys</emphasis> or <emphasis role="bold">vos
1808 backup</emphasis> commands at the console or create a <emphasis role="bold">cron</emphasis> entry in the <emphasis
1809 role="bold">BosConfig</emphasis> file on a file server machine, which eliminates the need for an administrator to initiate the
1810 backup operation.</para>
1812 <para>The following example command creates a <emphasis role="bold">cron</emphasis> process called <emphasis
1813 role="bold">backupusers</emphasis> in the <emphasis role="bold">/usr/afs/local/BosConfig</emphasis> file on the machine
1814 <emphasis role="bold">fs3.abc.com</emphasis>. The process runs every day at 1:00 a.m. to create a backup version of every
1815 volume in the cell whose name starts with the string <emphasis role="bold">user</emphasis>. The <emphasis
1816 role="bold">-localauth</emphasis> flag enables the process to invoke the privileged <emphasis role="bold">vos
1817 backupsys</emphasis> command while unauthenticated. Note that the <emphasis role="bold">-cmd</emphasis> argument specifies a
1818 complete pathname for the <emphasis role="bold">vos</emphasis> binary, because the PATH environment variable for the BOS
1819 Server (running as the local superuser <emphasis role="bold">root</emphasis>) generally does not include the path to AFS
1820 binaries. <programlisting>
1821 % <emphasis role="bold">bos create fs3.abc.com backupusers cron</emphasis>\
1822 <emphasis role="bold">-cmd "/usr/afs/bin/vos backupsys -prefix user -localauth" "1:00"</emphasis>
1823 </programlisting></para>
1826 <primary>mounting</primary>
1828 <secondary>backup volume</secondary>
1832 <primary>backup volume</primary>
1834 <secondary>mounting</secondary>
1838 <primary>OldFiles directory</primary>
1840 <secondary>as mount point for backup volume</secondary>
1844 <sect2 id="HDRWQ204">
1845 <title>Making the Contents of Backup Volumes Available to Users</title>
1847 <para>As noted, a backup volume preserves the state of the read/write source at the time the backup is created. Many cells
1848 choose to mount backup volumes so that users can access and restore data they have accidentally deleted or changed since the
1849 last backup was made, without having to request help from administrators. The most sensible place to mount the backup version
1850 of a user volume is at a subdirectory of the user's home directory. Suitable names for this directory include <emphasis
1851 role="bold">OldFiles</emphasis> and <emphasis role="bold">Backup</emphasis>. The subdirectory looks just like the user's own
1852 home directory as it was at the time the backup was created, with all files and subdirectories in the same relative
1855 <para>If you do create and mount backup volumes for your users, inform users of their existence. The <emphasis> OpenAFS User
1856 Guide</emphasis> does not mention backup volumes because making them available to users is optional. Explain to users how
1857 often you make a new backup, so they know what they can recover. Remind them also that the data in their backup volume cannot
1858 change; however, they can use the standard UNIX <emphasis role="bold">cp</emphasis> command to copy it into their home volume
1859 and modify it there. Reassure users that the data in their backup volumes does not count against their read/write volume
1863 <sect2 id="HDRWQ205">
1864 <title>To create and mount a backup volume</title>
1868 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
1869 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
1870 display the users in the UserList file</link>. <programlisting>
1871 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
1872 </programlisting></para>
1876 <para>Verify that you have the <emphasis role="bold">insert</emphasis>( <emphasis role="bold">i</emphasis>) and <emphasis
1877 role="bold">administer</emphasis>( <emphasis role="bold">a</emphasis>) permissions on the ACL of the directory in which
1878 you wish to mount the volume. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
1879 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
1880 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
1881 </programlisting></para>
1883 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
1884 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
1885 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
1886 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
1889 <primary>commands</primary>
1891 <secondary>vos backup</secondary>
1895 <primary>vos commands</primary>
1897 <secondary>backup</secondary>
1902 <para><anchor id="LIWQ206" />Issue the <emphasis role="bold">vos backup</emphasis> command to create a backup version of a
1903 read/write source volume. The message shown confirms the success of the backup operation. <programlisting>
1904 % <emphasis role="bold">vos backup</emphasis> <<replaceable>volume name or ID</replaceable>> Created backup volume for volume name or ID
1905 </programlisting></para>
1907 <para>where <variablelist>
1909 <term><emphasis role="bold">backup</emphasis></term>
1912 <para>Must be typed in full.</para>
1917 <term><emphasis role="bold">volume name or ID</emphasis></term>
1920 <para>Identifies the read/write volume to back up, either by its complete name or volume ID number. The backup
1921 volume has the same name with the addition of the <emphasis role="bold">.backup</emphasis> extension. It has its
1922 own volume ID number.</para>
1925 </variablelist></para>
1928 <primary>commands</primary>
1930 <secondary>fs mkmount</secondary>
1932 <tertiary>when mounting backup volume</tertiary>
1936 <primary>fs commands</primary>
1938 <secondary>mkmount</secondary>
1940 <tertiary>when mounting backup volume</tertiary>
1945 <para><anchor id="LIWQ207" /><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs
1946 mkmount</emphasis> to mount the backup volume. While this step is optional, Cache Managers cannot access the volume's
1947 contents if it is not mounted. <programlisting>
1948 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> <emphasis
1949 role="bold">.backup</emphasis>
1950 </programlisting></para>
1952 <para>where <variablelist>
1954 <term><emphasis role="bold">mk</emphasis></term>
1957 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">mkmount</emphasis>.</para>
1962 <term><emphasis role="bold">directory</emphasis></term>
1965 <para>Names the mount point to create. Do not create a file or directory of the same name beforehand. Partial
1966 pathnames are interpreted relative to the current working directory. For the backup version of a user volume, the
1967 conventional location is the user's home directory.</para>
1972 <term><emphasis role="bold">volume name</emphasis>.backup</term>
1975 <para>Is the full name of the backup volume.</para>
1978 </variablelist></para>
1982 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs lsmount</emphasis> command to verify
1983 that the mount point refers to the correct volume. Complete instructions appear in <link linkend="HDRWQ211">To display a
1984 mount point</link>. <programlisting>
1985 % <emphasis role="bold">fs lsmount</emphasis> <<replaceable>directory</replaceable>>
1986 </programlisting></para>
1991 <primary>commands</primary>
1993 <secondary>vos backupsys</secondary>
1997 <primary>vos commands</primary>
1999 <secondary>backupsys</secondary>
2003 <sect2 id="Header_223">
2004 <title>To create multiple backup volumes at once</title>
2008 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
2009 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
2010 display the users in the UserList file</link>. <programlisting>
2011 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
2012 </programlisting></para>
2016 <para>Issue the <emphasis role="bold">vos backupsys</emphasis> command to create a backup version of every read/write
2017 volume that shares the same prefix or site. The effects of combining the three arguments are described in <link
2018 linkend="HDRWQ202">Backing Up Multiple Volumes at Once</link>. <programlisting>
2019 % <emphasis role="bold">vos backupsys</emphasis> [<emphasis role="bold">-prefix</emphasis> <<replaceable>common prefix on volume(s)</replaceable>>+] \
2020 [<emphasis role="bold">-server</emphasis> <<replaceable>machine name</replaceable>>] [<emphasis role="bold">-partition</emphasis> <<replaceable>partition name</replaceable>>] \
2021 [<emphasis role="bold">-exclude</emphasis>] [<emphasis role="bold">-xprefix</emphasis> <<replaceable>negative prefix on volume(s)</replaceable>>+] \
2022 [<emphasis role="bold">-dryrun</emphasis>] [<emphasis role="bold">-verbose</emphasis>]
2023 </programlisting></para>
2025 <para>where <variablelist>
2027 <term><emphasis role="bold">backups</emphasis></term>
2030 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">backupsys</emphasis>.</para>
2035 <term><emphasis role="bold">-prefix</emphasis></term>
2038 <para>Specifies one or more simple character strings or regular expressions of any length; a volume whose name
2039 includes the string is placed on the list of volumes to be cloned. Include field separators (such as periods) if
2040 appropriate. This argument can be combined with any combination of the <emphasis role="bold">-server</emphasis>,
2041 <emphasis role="bold">-partition</emphasis>, <emphasis role="bold">-exclude</emphasis>, and <emphasis
2042 role="bold">-xprefix</emphasis> options.</para>
2047 <term><emphasis role="bold">-server</emphasis></term>
2050 <para>Specifies the file server machine housing the volumes to backup. Can be combined with any combination of the
2051 <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-partition</emphasis>, <emphasis
2052 role="bold">-exclude</emphasis>, and <emphasis role="bold">-xprefix</emphasis> options.</para>
2057 <term><emphasis role="bold">-partition</emphasis></term>
2060 <para>Specifies the partition housing the volumes you wish to backup. Can be combined with any combination of the
2061 <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-server</emphasis>, <emphasis
2062 role="bold">-exclude</emphasis>, and <emphasis role="bold">-xprefix</emphasis> options.</para>
2067 <term><emphasis role="bold">-exclude</emphasis></term>
2070 <para>Indicates that all volumes except those indicated with the <emphasis role="bold">-prefix</emphasis> argument
2071 are to be backed up. The <emphasis role="bold">-prefix</emphasis> argument must be provided along with this one.
2072 Can also be combined with any combination of the <emphasis role="bold">-prefix</emphasis>, <emphasis
2073 role="bold">-server</emphasis>, and <emphasis role="bold">-partition</emphasis> arguments; or with both the
2074 <emphasis role="bold">-prefix</emphasis> and <emphasis role="bold">-xprefix</emphasis> arguments, but not with the
2075 <emphasis role="bold">-xprefix</emphasis> argument alone.</para>
2080 <term><emphasis role="bold">-xprefix</emphasis></term>
2083 <para>Specifies one or more simple character strings or regular expressions of any length; a volume whose name
2084 does not include the string is placed on the list of volumes to be cloned. Can be combined with any combination of
2085 the <emphasis role="bold">-prefix</emphasis>, <emphasis role="bold">-server</emphasis>, and <emphasis
2086 role="bold">-partition</emphasis> arguments; in addition, it can be combined with both the <emphasis
2087 role="bold">-prefix</emphasis> and <emphasis role="bold">-exclude</emphasis> options, but not with the <emphasis
2088 role="bold">-exclude</emphasis> flag alone.</para>
2093 <term><emphasis role="bold">-dryrun</emphasis></term>
2096 <para>Displays on the standard output stream a list of the volumes to be cloned, without actually cloning
2102 <term><emphasis role="bold">-verbose</emphasis></term>
2105 <para>Displays on the standard output stream a statement that summarizes the criteria being used to select
2106 volumes, if combined with the <emphasis role="bold">-dryrun</emphasis> flag; otherwise, traces the cloning
2107 operation for each volume.</para>
2110 </variablelist></para>
2116 <sect1 id="HDRWQ208">
2117 <title>Mounting Volumes</title>
2120 <primary>mounting</primary>
2122 <secondary>volume</secondary>
2124 <tertiary>general instructions</tertiary>
2127 <para>Mount points make the contents of AFS volumes visible and accessible in the AFS filespace, as described in <link
2128 linkend="HDRWQ183">About Mounting Volumes</link>. This section discusses in more detail how the Cache Manager handles mount
2129 points as it traverses the filespace. It describes the three types of mount points, their purposes, and how to distinguish
2130 between them, and provides instructions for creating, removing, and examining mount points.</para>
2132 <sect2 id="HDRWQ209">
2133 <title>The Rules of Mount Point Traversal</title>
2135 <para>The Cache Manager observes three basic rules as it traverses the AFS filespace and encounters mount points:
2138 <para><emphasis role="bold">Rule 1:</emphasis> Access Backup and Read-only Volumes When Specified</para>
2140 <para>When the Cache Manager encounters a mount point that specifies a volume with either a <emphasis
2141 role="bold">.readonly</emphasis> or a <emphasis role="bold">.backup</emphasis> extension, it accesses that type of
2142 volume only. If a mount point does not have either a <emphasis role="bold">.backup</emphasis> or <emphasis
2143 role="bold">.readonly</emphasis> extension, the Cache Manager uses Rules 2 and 3.</para>
2145 <para>For example, the Cache Manager never accesses the read/write version of a volume if the mount point names the
2146 backup version. If the specified version is inaccessible, the Cache Manager reports an error.</para>
2150 <para><emphasis role="bold">Rule 2:</emphasis> Follow the Read-only Path When Possible</para>
2152 <para>If a mount point resides in a read-only volume and the volume that it references is replicated, the Cache Manager
2153 attempts to access a read-only copy of the volume; if the referenced volume is not replicated, the Cache Manager
2154 accesses the read/write copy. The Cache Manager is thus said to prefer a <emphasis>read-only</emphasis> path through the
2155 filespace, accessing read-only volumes when they are available.</para>
2157 <para>The Cache Manager starts on the read-only path in the first place because it always accesses a read-only copy of
2158 the <emphasis role="bold">root.afs</emphasis> volume if it exists; the volume is mounted at the root of a cell's AFS
2159 filespace (named <emphasis role="bold">/afs</emphasis> by convention). That is, if the <emphasis
2160 role="bold">root.afs</emphasis> volume is replicated, the Cache Manager attempts to access a read-only copy of it rather
2161 than the read/write copy. This rule then keeps the Cache Manager on a read-only path as long as each successive volume
2162 is replicated. The implication is that both the <emphasis role="bold">root.afs</emphasis> and <emphasis
2163 role="bold">root.cell</emphasis> volumes must be replicated for the Cache Manager to access replicated volumes mounted
2164 below them in the AFS filespace. The volumes are conventionally mounted at the <emphasis role="bold">/afs</emphasis> and
2165 <emphasis role="bold">/afs/</emphasis><replaceable>cellname</replaceable> directories, respectively.</para>
2169 <para><emphasis role="bold">Rule 3:</emphasis> Once on a Read/write Path, Stay There</para>
2171 <para>If a mount point resides in a read/write volume and the volume name does not have a <emphasis
2172 role="bold">.readonly</emphasis> or a <emphasis role="bold">.backup</emphasis> extension, the Cache Manager attempts to
2173 access only the a read/write version of the volume. The access attempt fails with an error if the read/write version is
2174 inaccessible, even if a read-only version is accessible. In this situation the Cache Manager is said to be on a
2175 <emphasis>read/write path</emphasis> and cannot switch back to the read-only path unless mount point explicitly names a
2176 volume with a <emphasis role="bold">.readonly</emphasis> extension. (Cellular mount points are an important exception to
2177 this rule, as explained in the following discussion.</para>
2179 </itemizedlist></para>
2182 <sect2 id="HDRWQ210">
2183 <title>The Three Types of Mount Points</title>
2185 <para>AFS uses three types of mount points, each appropriate for a different purpose because of how the Cache Manager handles
2186 them. <itemizedlist>
2188 <para>When the Cache Manager crosses a <emphasis>regular</emphasis> mount point, it obeys all three of the mount point
2189 traversal rules previously described.</para>
2192 <primary>regular mount point</primary>
2194 <secondary></secondary>
2196 <see>mount point</see>
2200 <primary>mount point</primary>
2202 <secondary>regular</secondary>
2204 <tertiary>described</tertiary>
2207 <para>AFS performs best when the vast majority of mount points in the filespace are regular, because the mount point
2208 traversal rules promote the most efficient use of both replicated and nonreplicated volumes. Because there are likely to
2209 be multiple read-only copies of a replicated volume, it makes sense for the Cache Manager to access one of them rather
2210 than the single read/write version, and the second rule leads it to do so. If a volume is not replicated, the third rule
2211 means that the Cache Manager still accesses the read/write volume when that is the only type available. In other words,
2212 a regular mount point does not force the Cache Manager always to access read-only volumes (it is explicitly not a
2213 "read-only mount point").</para>
2215 <para>To create a regular mount point, use the <emphasis role="bold">fs mkmount</emphasis> command as described in <link
2216 linkend="HDRWQ212">To create a regular or read/write mount point</link>.</para>
2219 <para>To enable the Cache Manager to access the read-only version of a replicated volume named by a regular mount
2220 point, all volumes that are mounted above it in the pathname must also be replicated. That is the only way the Cache
2221 Manager can stay on a read-only path to the target volume.</para>
2226 <para>When the Cache Manager crosses a <emphasis>read/write</emphasis> mount point, it attempts to access only the
2227 volume version named in the mount point. If the volume name is the base (read/write) form, without a <emphasis
2228 role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension, the Cache Manager accesses the
2229 read/write version of the volume, even if it is replicated. In other words, the Cache Manager disregards the second
2230 mount point traversal rule when crossing a read/write mount point: it switches to the read/write path through the
2234 <primary>read/write mount point</primary>
2236 <secondary></secondary>
2238 <see>mount point</see>
2242 <primary>mount point</primary>
2244 <secondary>read/write</secondary>
2246 <tertiary>described</tertiary>
2249 <para>It is conventional to create only one read/write mount point in a cell's filespace, using it to mount the cell's
2250 <emphasis role="bold">root.cell</emphasis> volume just below the AFS filespace root (by convention, <emphasis
2251 role="bold">/afs/.</emphasis><replaceable>cellname</replaceable>). As indicated, it is conventional to place a period at
2252 the start of the read/write mount point's name (for example, <emphasis role="bold">/afs/.abc.com</emphasis>). The period
2253 distinguishes the read/write mount point from the regular mount point for the <emphasis role="bold">root.cell</emphasis>
2254 volume at the same level. This is the only case in which it is conventional to create two mount points for the same
2255 volume. A desirable side effect of this naming convention for this read/write mount point is that it does not appear in
2256 the output of the UNIX <emphasis role="bold">ls</emphasis> command unless the <emphasis role="bold">-a</emphasis> flag
2257 is included, essentially hiding it from regular users who have no use for it.</para>
2259 <para>The existence of a single read/write mount point at this point in the filespace provides access to the read/write
2260 version of every volume when necessary, because it puts the Cache Manager on a read/write path right at the top of the
2261 filespace. At the same time, the regular mount point for the <emphasis role="bold">root.cell</emphasis> volume puts the
2262 Cache Manager on a read-only path most of the time.</para>
2264 <para>Using a read/write mount point for a read-only or backup volume is acceptable, but unnecessary. The first rule of
2265 mount point traversal already specifies that the Cache Manager accesses them if the volume name in a regular mount point
2266 has a <emphasis role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension.</para>
2268 <para>To create a read/write mount point, use the <emphasis role="bold">-rw</emphasis> flag on the <emphasis
2269 role="bold">fs mkmount</emphasis> command as described in <link linkend="HDRWQ212">To create a regular or read/write
2270 mount point</link>.</para>
2274 <para>When the Cache Manager crosses a <emphasis>cellular</emphasis> mount point, it accesses the indicated volume in
2275 the specified cell, which is normally a foreign cell. (If the mount point does not name a cell along with the volume,
2276 the Cache Manager accesses the volume in the cell where the mount point resides.) When crossing a regular cellular mount
2277 point, the Cache Manager disregards the third mount point traversal rule. Instead, it accesses a read-only version of
2278 the volume if it is replicated, even if the volume that houses the mount point is read/write.</para>
2280 <para>It is inappropriate to circumvent this behavior by creating a read/write cellular mount point, because traversing
2281 the read/write path imposes an unfair load on the foreign cell's file server machines. The File Server must issue a
2282 callback for each file fetched from the read/write volume, rather than single callback required for a read-only volume.
2283 In any case, only a cell's own administrators generally need to access the read/write versions of replicated
2287 <primary>cellular mount point</primary>
2289 <secondary></secondary>
2291 <see>mount point</see>
2295 <primary>mount point</primary>
2297 <secondary>cellular</secondary>
2299 <tertiary>described</tertiary>
2303 <primary>mounting</primary>
2305 <secondary>foreign volume in local cell</secondary>
2308 <para>It is conventional to create cellular mount points only at the second level in a cell's filespace, using them to
2309 mount foreign cells' <emphasis role="bold">root.cell</emphasis> volumes just below the AFS filespace root (by
2310 convention, at <emphasis role="bold">/afs/</emphasis><replaceable>foreign_cellname</replaceable>). The mount point
2311 enables local users to access the foreign cell's filespace, assuming they have the necessary permissions on the ACL of
2312 the volume's root directory and that there is an entry for the foreign cell in each local client machine's <emphasis
2313 role="bold">/usr/vice/etc/CellServDB</emphasis> file, as described in <link linkend="HDRWQ406">Maintaining Knowledge of
2314 Database Server Machines</link>.</para>
2316 <para>Creating cellular mount points at other levels in the filespace and mounting foreign volumes other than the
2317 <emphasis role="bold">root.cell</emphasis> volume is not generally appropriate. It can be confusing to users if the
2318 Cache Manager switches between cells at various points in a pathname.</para>
2320 <para>To create a regular cellular mount point, use the <emphasis role="bold">-cell</emphasis> argument to specify the
2321 cell name, as described in <link linkend="HDRWQ213">To create a cellular mount point</link>.</para>
2323 </itemizedlist></para>
2325 <para>To examine a mount point, use the <emphasis role="bold">fs lsmount</emphasis> command as described in <link
2326 linkend="HDRWQ211">To display a mount point</link>. The command's output uses distinct notation to identify regular,
2327 read/write, and cellular mount points. To remove a mount point, use the <emphasis role="bold">fs rmmount</emphasis> command as
2328 described in <link linkend="HDRWQ215">To remove a mount point</link>.</para>
2331 <sect2 id="Header_227">
2332 <title>Creating a mount point in a foreign cell</title>
2334 <para>Creating a mount point in a foreign cell's filespace (as opposed to mounting a foreign volume in the local cell) is
2335 basically the same as creating a mount point in the local filespace. The differences are that the <emphasis role="bold">fs
2336 mkmount</emphasis> command's directory argument specifies a pathname in the foreign cell rather than the local cell, and you
2337 must have the required permissions on the ACL of the foreign directory where you are creating the mount point. The <emphasis
2338 role="bold">fs mkmount</emphasis> command's <emphasis role="bold">-cell</emphasis> argument always specifies the cell in which
2339 the volume resides, not the cell in which to create the mount point.</para>
2342 <sect2 id="HDRWQ211">
2343 <title>To display a mount point</title>
2346 <primary>displaying</primary>
2348 <secondary>mount point</secondary>
2352 <primary>mount point</primary>
2354 <secondary>displaying</secondary>
2358 <primary>mount point</primary>
2360 <secondary>distinguishing different types</secondary>
2364 <primary>commands</primary>
2366 <secondary>fs lsmount</secondary>
2370 <primary>fs commands</primary>
2372 <secondary>lsmount</secondary>
2377 <para>Issue the <emphasis role="bold">fs lsmount</emphasis> command. <programlisting>
2378 % <emphasis role="bold">fs lsmount</emphasis> <<replaceable>directory</replaceable>>
2379 </programlisting></para>
2381 <para>where <variablelist>
2383 <term><emphasis role="bold">ls</emphasis></term>
2386 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">lsmount</emphasis>.</para>
2391 <term><emphasis role="bold">directory</emphasis></term>
2394 <para>Names the mount point to display.</para>
2397 </variablelist></para>
2401 <para>If the specified directory is a mount point, the output is of the following form:</para>
2404 'directory' is a mount point for volume 'volume name'
2407 <para>For a regular mount point, a number sign (<computeroutput>#</computeroutput>) precedes the volume name string, as in the
2408 following example command issued on a client machine in the <emphasis role="bold">abc.com</emphasis> cell.</para>
2411 % <emphasis role="bold">fs lsmount /afs/abc.com/usr/terry</emphasis>
2412 '/afs/abc.com/usr/terry' is a mount point for volume '#user.terry'
2415 <para>For a read/write mount point, a percent sign (<computeroutput>%</computeroutput>) precedes the volume name string, as in
2416 the following example command issued on a client machine in the <emphasis role="bold">abc.com</emphasis> cell. The cell's
2417 administrators have followed the convention of preceding the read/write mount point's name with a period.</para>
2420 % <emphasis role="bold">fs lsmount /afs/.abc.com</emphasis>
2421 '/afs/.abc.com' is a mount point for volume '%root.cell'
2424 <para>For a cellular mount point, a cell name and colon (<computeroutput>:</computeroutput>) follow the number or percent sign
2425 and precede the volume name string, as in the following example command issued on a client machine in the <emphasis
2426 role="bold">abc.com</emphasis> cell.</para>
2429 % <emphasis role="bold">fs lsmount /afs/ghi.gov</emphasis>
2430 '/afs/ghi.gov' is a mount point for volume '#ghi.gov:root.cell'
2433 <para>For a symbolic link to a mount point, the output is of the form shown in the following example command issued on a
2434 client machine in the <emphasis role="bold">abc.com</emphasis> cell.</para>
2437 % <emphasis role="bold">fs lsmount /afs/abc</emphasis>
2438 '/afs/abc' is a symbolic link, leading to a mount point for volume '#root.cell'
2441 <para>If the directory is not a mount point or is not in AFS, the output reads as follows.</para>
2444 'directory' is not a mount point.
2447 <para>If the output is garbled, it is possible that the mount point has become corrupted in the local cache. Use the <emphasis
2448 role="bold">fs flushmount</emphasis> command as described in <link linkend="HDRWQ413">To flush one or more mount
2449 points</link>. This forces the Cache Manager to refetch the mount point.</para>
2452 <sect2 id="HDRWQ212">
2453 <title>To create a regular or read/write mount point</title>
2456 <primary>creating</primary>
2458 <secondary>read/write or regular mount point</secondary>
2462 <primary>mount point</primary>
2464 <secondary>creating read/write or regular</secondary>
2468 <primary>mount point</primary>
2470 <secondary>regular</secondary>
2472 <tertiary>creating</tertiary>
2476 <primary>mount point</primary>
2478 <secondary>read/write</secondary>
2480 <tertiary>creating</tertiary>
2484 <primary>commands</primary>
2486 <secondary>fs mkmount</secondary>
2488 <tertiary>general instructions</tertiary>
2492 <primary>fs commands</primary>
2494 <secondary>mkmount</secondary>
2496 <tertiary>general instructions</tertiary>
2501 <para>Verify that you have the <emphasis role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>) and <emphasis
2502 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) permissions on the ACL of the directory where you
2503 are placing the mount point. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
2504 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
2505 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
2506 </programlisting></para>
2510 <para>Issue the <emphasis role="bold">fs mkmount</emphasis> command to create the mount point. Include the <emphasis
2511 role="bold">-rw</emphasis> flag if creating a read/write mount point. <programlisting>
2512 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> [<emphasis
2513 role="bold">-rw</emphasis>]
2514 </programlisting></para>
2516 <para>where <variablelist>
2518 <term><emphasis role="bold">mk</emphasis></term>
2521 <para>Is the shortest acceptable abbreviation for <emphasis role="bold">mkmount</emphasis>.</para>
2526 <term><emphasis role="bold">directory</emphasis></term>
2529 <para>Names the mount point to create. A file or directory with the same name cannot already exist. A partial
2530 pathname is interpreted relative to the current working directory.</para>
2532 <para>Specify the read/write path to the mount point, to avoid the failure that results when you attempt to create
2533 a new mount point in a read-only volume. By convention, you indicate the read/write path by placing a period
2534 before the cell name at the pathname's second level (for example, <emphasis role="bold">/afs/.abc.com</emphasis>).
2535 For further discussion of the concept of read/write and read-only paths through the filespace, see <link
2536 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>.</para>
2541 <term><emphasis role="bold">volume name</emphasis></term>
2544 <para>Specifies the volume's full name, including the <emphasis role="bold">.backup</emphasis> or <emphasis
2545 role="bold">.readonly</emphasis> extension for a backup or read-only volume, if appropriate.</para>
2550 <term><emphasis role="bold">-rw</emphasis></term>
2553 <para>Creates a read/write mount point.</para>
2556 </variablelist></para>
2561 <sect2 id="HDRWQ213">
2562 <title>To create a cellular mount point</title>
2565 <primary>creating</primary>
2567 <secondary>cellular mount point</secondary>
2571 <primary>mount point</primary>
2573 <secondary>creating cellular</secondary>
2577 <primary>mount point</primary>
2579 <secondary>cellular</secondary>
2581 <tertiary>creating</tertiary>
2586 <para>Verify that you have the <emphasis role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>) and <emphasis
2587 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) permissions on the ACL of the directory where you
2588 are placing the mount point. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
2589 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
2590 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
2591 </programlisting></para>
2595 <para><anchor id="LIWQ214" />If you are mounting one or more foreign cells' <emphasis role="bold">root.cell</emphasis>
2596 volume at the second level in your filespace and your cell's <emphasis role="bold">root.afs</emphasis> volume is
2597 replicated, you must create a temporary mount point for the <emphasis role="bold">root.afs</emphasis> volume's read/write
2598 version in a directory on which the ACL grants you the <emphasis role="bold">i</emphasis> and <emphasis
2599 role="bold">a</emphasis> permissions. The following command creates a mount point called <emphasis
2600 role="bold">new_cells</emphasis> in your cell's <emphasis role="bold">/afs/.</emphasis><replaceable>cellname</replaceable>
2601 directory (the entry point to the read/write path in your cell).</para>
2603 <para>Substitute your cell's name for cellname.</para>
2606 % <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable>
2607 % <emphasis role="bold">fs mkmount new_cells root.afs</emphasis>
2608 % <emphasis role="bold">cd new_cells</emphasis>
2613 <para>Issue the <emphasis role="bold">fs mkmount</emphasis> command with the <emphasis role="bold">-cell</emphasis>
2614 argument to create a cellular mount point. Repeat the command for each cellular mount point as required. <programlisting>
2615 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> <emphasis
2616 role="bold">-cell</emphasis> <<replaceable>cell name</replaceable>>
2617 </programlisting></para>
2619 <para>where <variablelist>
2621 <term><emphasis role="bold">mk</emphasis></term>
2624 <para>Is the shortest acceptable abbreviation for <emphasis role="bold">mkmount</emphasis>.</para>
2629 <term><emphasis role="bold">directory</emphasis></term>
2632 <para>Names the mount point to create. A file or directory with the same name cannot already exist. A partial
2633 pathname is interpreted relative to the current working directory. If you are mounting a foreign cell's <emphasis
2634 role="bold">root.cell</emphasis> volume, the standard value for this argument is the cell's complete Internet
2640 <term><emphasis role="bold">volume name</emphasis></term>
2643 <para>Specifies the volume's full name, usually <emphasis role="bold">root.cell</emphasis> for a cellular mount
2649 <term><emphasis role="bold">-cell</emphasis></term>
2652 <para>Specifies the complete Internet domain name of the cell in which the volume resides.</para>
2655 </variablelist></para>
2659 <para>If you performed the instructions in Step <link linkend="LIWQ214">2</link>, issue the <emphasis role="bold">vos
2660 release</emphasis> command to release the new version of the <emphasis role="bold">root.afs</emphasis> volume to its
2661 read-only sites. (This command requires that you be listed in your cell's <emphasis
2662 role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, verify by issuing the <emphasis role="bold">bos
2663 listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To display the users in the UserList
2664 file</link>.)</para>
2666 <para>Also issue the <emphasis role="bold">fs checkvolumes</emphasis> command to force the local Cache Manager to access
2667 the new replica of the <emphasis role="bold">root.afs</emphasis> volume. If desired, you can also remove the temporary
2668 <emphasis role="bold">new_cells</emphasis> mount point from the <emphasis
2669 role="bold">/afs/.</emphasis><replaceable>cellname</replaceable> directory.</para>
2672 % <emphasis role="bold">vos release root.afs</emphasis>
2673 % <emphasis role="bold">fs checkvolumes</emphasis>
2674 % <emphasis role="bold">cd /afs/.</emphasis><replaceable>cellname</replaceable>
2675 % <emphasis role="bold">fs rmmount new_cells</emphasis>
2678 <para>For your users to access a newly mounted foreign cell, you must also create an entry for it in each client machine's
2679 local <emphasis role="bold">/usr/vice/etc/CellServDB</emphasis> file and either reboot the machine or use the <emphasis
2680 role="bold">fs newcell</emphasis> command to insert the entry directly into its kernel memory. See the instructions in
2681 <link linkend="HDRWQ406">Maintaining Knowledge of Database Server Machines</link>.</para>
2686 <sect2 id="HDRWQ215">
2687 <title>To remove a mount point</title>
2690 <primary>removing</primary>
2692 <secondary>mount point</secondary>
2696 <primary>unmounting</primary>
2698 <secondary>volume</secondary>
2702 <primary>mount point</primary>
2704 <secondary>removing</secondary>
2708 <primary>commands</primary>
2710 <secondary>fs rmmount</secondary>
2714 <primary>fs commands</primary>
2716 <secondary>rmmount</secondary>
2721 <para>Verify that you have the <emphasis role="bold">d</emphasis>( <emphasis role="bold">delete</emphasis>) permission on
2722 the ACL of the directory from which you are removing the mount point. If necessary, issue the <emphasis role="bold">fs
2723 listacl</emphasis> command, which is fully described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
2724 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
2725 </programlisting></para>
2727 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
2728 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
2729 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
2730 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
2734 <para>Issue the <emphasis role="bold">fs rmmount</emphasis> command to remove the mount point. The volume still exists,
2735 but its contents are inaccessible if this is the only mount point for it. <programlisting>
2736 % <emphasis role="bold">fs rmmount</emphasis> <<replaceable>directory</replaceable>>
2737 </programlisting></para>
2739 <para>where <variablelist>
2741 <term><emphasis role="bold">rm</emphasis></term>
2744 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">rmmount</emphasis>.</para>
2749 <term><emphasis role="bold">directory</emphasis></term>
2752 <para>Names the mount point to remove. A partial pathname is interpreted relative to the current working
2755 <para>Specify the read/write path to the mount point, to avoid the failure that results when you attempt to delete
2756 a mount point from a read-only volume. By convention, you indicate the read/write path by placing a period before
2757 the cell name at the pathname's second level (for example, <emphasis role="bold">/afs/.abc.com</emphasis>). For
2758 further discussion of the concept of read/write and read-only paths through the filespace, see <link
2759 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>.</para>
2762 </variablelist></para>
2768 <sect1 id="HDRWQ216">
2769 <title>Displaying Information About Volumes</title>
2772 <primary>displaying</primary>
2774 <secondary>volume information</secondary>
2778 <primary>volume</primary>
2780 <secondary>displaying information about</secondary>
2783 <para>This section explains how to display information about volumes. If you know a volume's name or volume ID number, there are
2784 commands for displaying its VLDB entry, its volume header, or both. Other commands display the name or location of the volume
2785 that contains a specified file or directory.</para>
2787 <para>For instructions on displaying a volume's quota, see <link linkend="HDRWQ234">Setting and Displaying Volume Quota and
2788 Current Size</link>.</para>
2790 <sect2 id="HDRWQ217">
2791 <title>Displaying VLDB Entries</title>
2794 <primary>displaying</primary>
2796 <secondary>volume's VLDB entry</secondary>
2800 <primary>VLDB</primary>
2802 <secondary>displaying volume entry</secondary>
2806 <primary>volume entry (VLDB)</primary>
2808 <secondary>displaying</secondary>
2812 <primary>locked VLDB entry</primary>
2814 <secondary>displaying</secondary>
2817 <para>The <emphasis role="bold">vos listvldb</emphasis> command displays the VLDB entry for the volumes indicated by the
2818 combination of arguments you provide. The possibilities are listed here from most to least inclusive: <itemizedlist>
2820 <para>To display every entry in the VLDB, provide no arguments. It can take a long time to generate the output,
2821 depending on the number of entries.</para>
2825 <para>To display every VLDB entry that mentions a specific file server machine as the site of a volume, specify the
2826 machine's name with the <emphasis role="bold">-server</emphasis> argument.</para>
2830 <para>To display every VLDB entry that mentions a certain partition on any file server machine as the site of a volume,
2831 specify the partition name with the <emphasis role="bold">-partition</emphasis> argument.</para>
2835 <para>To display every VLDB entry that mentions a certain partition on a certain file server machine as the site of a
2836 volume, combine the <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis>
2841 <para>To display a single VLDB entry, specify a volume name or ID number with the <emphasis role="bold">-name</emphasis>
2846 <para>To display the VLDB entry only for volumes with locked VLDB entries, use the <emphasis
2847 role="bold">-locked</emphasis> flag with any of the site definitions mentioned previously.</para>
2849 </itemizedlist></para>
2852 <primary>commands</primary>
2854 <secondary>vos listvldb</secondary>
2856 <tertiary>syntax</tertiary>
2860 <primary>vos commands</primary>
2862 <secondary>listvldb</secondary>
2864 <tertiary>syntax</tertiary>
2868 <sect2 id="HDRWQ218">
2869 <title>To display VLDB entries</title>
2873 <para>Issue the <emphasis role="bold">vos listvldb</emphasis> command. <programlisting>
2874 % <emphasis role="bold">vos listvldb</emphasis> [<emphasis role="bold">-name</emphasis> <<replaceable>volume name or ID</replaceable>>] [<emphasis
2875 role="bold">-server</emphasis> <<replaceable>machine name</replaceable>>] \
2876 [<emphasis role="bold">-partition</emphasis> <<replaceable>partition name</replaceable>>] [<emphasis role="bold">-locked</emphasis>]
2877 </programlisting></para>
2879 <para>where <variablelist>
2881 <term><emphasis role="bold">listvl</emphasis></term>
2884 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">listvldb</emphasis>.</para>
2889 <term><emphasis role="bold">-name</emphasis></term>
2892 <para>Identifies one volume either by its complete name or volume ID number. Do not combine this argument with the
2893 <emphasis role="bold">-server</emphasis> or <emphasis role="bold">-partition</emphasis> arguments.</para>
2898 <term><emphasis role="bold">-server</emphasis></term>
2901 <para>Specifies a file server machine. Combine this argument with the <emphasis role="bold">-partition</emphasis>
2902 argument if desired, but not with the <emphasis role="bold">-name</emphasis> argument.</para>
2907 <term><emphasis role="bold">-partition</emphasis></term>
2910 <para>Specifies a partition. Combine this argument with the <emphasis role="bold">-server</emphasis> argument if
2911 desired, but not with the <emphasis role="bold">-name</emphasis> argument.</para>
2916 <term><emphasis role="bold">-locked</emphasis></term>
2919 <para>Displays only locked VLDB entries. Combine this flag with any of the other options.</para>
2922 </variablelist></para>
2926 <para>The VLDB entry for each volume includes the following information: <itemizedlist>
2928 <para>The base (read/write) volume name. The read-only and backup versions have the same name with a <emphasis
2929 role="bold">.readonly</emphasis> and <emphasis role="bold">.backup</emphasis> extension, respectively.</para>
2933 <para>The volume ID numbers allocated to the versions of the volume that actually exist, in fields labeled
2934 <computeroutput>RWrite</computeroutput> for the read/write, <computeroutput>ROnly</computeroutput> for the read-only,
2935 <computeroutput>Backup</computeroutput> for the backup, and <computeroutput>RClone</computeroutput> for the
2936 ReleaseClone. (If a field does not appear, the corresponding version of the volume does not exist.) The appearance of
2937 the <computeroutput>RClone</computeroutput> field normally indicates that a release operation did not complete
2938 successfully; the <computeroutput>Old release</computeroutput> and <computeroutput>New release</computeroutput> flags
2939 often also appear on one or more of the site definition lines described just following.</para>
2942 <primary>site</primary>
2944 <secondary>count in VLDB</secondary>
2948 <primary>VLDB</primary>
2950 <secondary>site count for volume</secondary>
2955 <para>The number of sites that house a read/write or read-only copy of the volume, following the string
2956 <computeroutput>number of sites -></computeroutput>.</para>
2959 <primary>type flag for volume</primary>
2961 <secondary>VLDB entry</secondary>
2965 <primary>VLDB</primary>
2967 <secondary>volume type flags</secondary>
2971 <primary>release</primary>
2973 <secondary>status flags on site definitions in VLDB entry</secondary>
2977 <primary>VLDB</primary>
2979 <secondary>release status flags in volume entry</secondary>
2983 <primary>status flag</primary>
2985 <secondary>release, on site definitions in VLDB entry</secondary>
2990 <para>A line for each site that houses a read/write or read-only copy of the volume, specifying the file server machine,
2991 partition, and type of volume (<computeroutput>RW</computeroutput> for read/write or <computeroutput>RO</computeroutput>
2992 for read-only). If a backup version exists, it is understood to share the read/write site. Several flags can appear with
2993 a site definition: <variablelist>
2995 <primary>Not released</primary>
2997 <secondary>status flag on site definition in VLDB entry</secondary>
3001 <term><computeroutput>Not released</computeroutput></term>
3004 <para>Indicates that the <emphasis role="bold">vos release</emphasis> command has not been issued since the
3005 <emphasis role="bold">vos addsite</emphasis> command was used to define the read-only site.</para>
3008 <primary>Old release</primary>
3010 <secondary>status flag on site definition in VLDB entry</secondary>
3016 <term><computeroutput>Old release</computeroutput></term>
3019 <para>Indicates that a <emphasis role="bold">vos release</emphasis> command did not complete successfully,
3020 leaving the previous, obsolete version of the volume at this site.</para>
3023 <primary>New release</primary>
3025 <secondary>status flag on site definition in VLDB entry</secondary>
3031 <term><computeroutput>New release</computeroutput></term>
3034 <para>Indicates that a <emphasis role="bold">vos release</emphasis> command did not complete successfully, but
3035 that this site did receive the correct new version of the volume.</para>
3038 </variablelist></para>
3042 <para>If the VLDB entry is locked, the string <computeroutput>Volume is currently LOCKED</computeroutput>.</para>
3044 </itemizedlist></para>
3046 <para>For further discussion of the <computeroutput>New release</computeroutput> and <computeroutput>Old
3047 release</computeroutput> flags, see <link linkend="HDRWQ192">Replicating Volumes (Creating Read-only Volumes)</link>.</para>
3049 <para>An example of this command and its output for a single volume:</para>
3052 % <emphasis role="bold">vos listvldb user.terry</emphasis>
3054 RWrite: 50489902 Backup: 50489904
3055 number of sites -> 1
3056 server fs3.abc.com partition /vicepc RW Site
3060 <sect2 id="HDRWQ219">
3061 <title>Displaying Volume Headers</title>
3064 <primary>displaying</primary>
3066 <secondary>volume header</secondary>
3070 <primary>volume header</primary>
3072 <secondary>displaying</secondary>
3074 <tertiary>only</tertiary>
3077 <para>The <emphasis role="bold">vos listvol</emphasis> command displays the volume header for every volume on one or all
3078 partitions on a file server machine. The <emphasis role="bold">vos</emphasis> command interpreter obtains the information from
3079 the Volume Server on the specified machine. You can control the amount of information displayed by including one of the
3080 <emphasis role="bold">-fast</emphasis>, the <emphasis role="bold">-long</emphasis>, or the <emphasis
3081 role="bold">-extended</emphasis> flags described following the instructions in <link linkend="HDRWQ220">To display volume
3082 headers</link>.</para>
3084 <para>To display a single volume's volume header of one volume only, use the <emphasis role="bold">vos examine</emphasis>
3085 command as described in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume Header</link>.</para>
3088 <primary>commands</primary>
3090 <secondary>vos listvol</secondary>
3092 <tertiary>syntax</tertiary>
3096 <primary>vos commands</primary>
3098 <secondary>listvol</secondary>
3100 <tertiary>syntax</tertiary>
3104 <sect2 id="HDRWQ220">
3105 <title>To display volume headers</title>
3109 <para>Issue the <emphasis role="bold">vos listvol</emphasis> command. <programlisting>
3110 % <emphasis role="bold">vos listvol</emphasis> <<replaceable>machine name</replaceable>> [<<replaceable>partition name</replaceable>>] [<emphasis
3111 role="bold">-fast</emphasis>] [<emphasis role="bold">-long</emphasis>] [<emphasis role="bold">-extended</emphasis>]
3112 </programlisting></para>
3114 <para>where <variablelist>
3116 <term><emphasis role="bold">listvo</emphasis></term>
3119 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">listvol</emphasis>.</para>
3124 <term><emphasis role="bold">machine name</emphasis></term>
3127 <para>Names the file server machine for which to display volume headers. Provide this argument alone or with the
3128 partition name argument.</para>
3133 <term><emphasis role="bold">partition name</emphasis></term>
3136 <para>Names one partition on the file server machine named by the machine name argument, which must be provided
3137 along with this one.</para>
3142 <term><emphasis role="bold">-fast</emphasis></term>
3145 <para>Displays only the volume ID numbers of relevant volumes. Do not combine this flag with the <emphasis
3146 role="bold">-long</emphasis> or <emphasis role="bold">-extended</emphasis> flag.</para>
3151 <term><emphasis role="bold">-long</emphasis></term>
3154 <para>Displays more detailed information about each volume. Do not combine this flag with the <emphasis
3155 role="bold">-fast</emphasis> or <emphasis role="bold">-extended</emphasis> flag.</para>
3160 <term><emphasis role="bold">-extended</emphasis></term>
3163 <para>Displays all of the information displayed by the <emphasis role="bold">-long</emphasis> flag, plus tables of
3164 statistics about reads and writes to the files in the volume. Do not combine this flag with the <emphasis
3165 role="bold">-fast</emphasis> or <emphasis role="bold">-long</emphasis> flag.</para>
3168 </variablelist></para>
3172 <para>The output is ordered alphabetically by volume name and by default provides the following information on a single line
3173 for each volume: <itemizedlist>
3179 <para>Volume ID number</para>
3182 <primary>type flag for volume</primary>
3184 <secondary>volume header</secondary>
3189 <para>Type (the flag is <computeroutput>RW</computeroutput> for read/write, <computeroutput>RO</computeroutput> for
3190 read-only, <computeroutput>BK</computeroutput> for backup)</para>
3194 <para>Size in kilobytes (<computeroutput>1024</computeroutput> equals a megabyte)</para>
3198 <para>Number of files in the volume, if the <emphasis role="bold">-extended</emphasis> flag is provided</para>
3201 <primary>status flags in volume header</primary>
3206 <para>Status on the file server machine, which is one of the following: <variablelist>
3208 <primary>On-line status flag in volume header</primary>
3212 <term><computeroutput>On-line</computeroutput></term>
3215 <para>The volume is completely accessible to Cache Managers.</para>
3218 <primary>Off-line status flag in volume header</primary>
3224 <term><computeroutput>Off-line</computeroutput></term>
3227 <para>The volume is not accessible to Cache Managers, but does not seem to be corrupted. This status appears
3228 while a volume is being dumped, for example.</para>
3231 <primary>needs salvage status flag in volume header</primary>
3237 <term><computeroutput>Off-line**needs salvage**</computeroutput></term>
3240 <para>The volume is not accessible to Cache Managers, because it seems to be corrupted. Use the <emphasis
3241 role="bold">bos salvage</emphasis> or <emphasis role="bold">salvager</emphasis> command to repair the
3245 </variablelist></para>
3247 </itemizedlist></para>
3249 <para>If the following message appears instead of the previously listed information, it indicates that a volume is not
3250 accessible to Cache Managers or the <emphasis role="bold">vos</emphasis> command interpreter, for example because a clone is
3251 being created.</para>
3254 **** Volume volume_ID is busy ****
3257 <para>If the following message appears instead of the previously listed information, it indicates that the File Server is
3258 unable to attach the volume, perhaps because it is seriously corrupted. The <emphasis role="bold">FileLog</emphasis> and
3259 <emphasis role="bold">VolserLog</emphasis> log files in the <emphasis role="bold">/usr/afs/logs</emphasis> directory on the
3260 file server machine possibly provide additional information; use the <emphasis role="bold">bos getlog</emphasis> command to
3261 display them.</para>
3264 **** Could not attach volume volume_ID ****
3267 <para>(For instructions on salvaging a corrupted or unattached volume, see <link linkend="HDRWQ232">Salvaging
3268 Volumes</link>.)</para>
3270 <para>The information about individual volumes is bracketed by summary lines. The first line of output specifies the number of
3271 volumes in the listing. The last line of output summarizes the number of volumes that are online, offline, and busy, as in the
3272 following example:</para>
3275 % <emphasis role="bold">vos listvol fs2.abc.com /vicepb</emphasis>
3276 Total number of volumes on server fs2.abc.com \
3277 partition /vicepb : 66
3278 sys 1969534847 RW 1582 K On-line
3279 sys.backup 1969535105 BK 1582 K On-line
3282 user.pat 1969534536 RW 17518 K On-line
3283 user.pat.backup 1969534538 BK 17537 K On-line
3284 Total volumes onLine 66 ; Total volumes offLine 0 ; Total busy 0
3287 <para><emphasis role="bold">Output with the -fast Flag</emphasis></para>
3290 <primary>vos commands</primary>
3292 <secondary>listvol</secondary>
3294 <tertiary>output with -fast flag</tertiary>
3297 <para>If you include the <emphasis role="bold">-fast</emphasis> flag displays only the volume ID number of each volume,
3298 arranged in increasing numerical order, as in the following example. The final line (which summarizes the number of on-line,
3299 off-line, and busy volumes) is omitted.</para>
3302 % <emphasis role="bold">vos listvol fs3.abc.com /vicepa -f</emphasis>
3303 Total number of volumes on server fs3.abc.com \
3304 partition /vicepa: 37
3313 <para><emphasis role="bold">Output with the -long Flag</emphasis></para>
3316 <primary>vos commands</primary>
3318 <secondary>listvol</secondary>
3320 <tertiary>output with -long flag</tertiary>
3323 <para>When you include the <emphasis role="bold">-long</emphasis> flag, , the output for each volume includes all of the
3324 information in the default listing plus the following. Each item in this list corresponds to a separate line of output:
3327 <para>The file server machine and partition that house the volume, as determined by the command interpreter as the
3328 command runs, rather than derived from the VLDB or the volume header.</para>
3331 <primary>read/write volume</primary>
3333 <secondary>ID number in volume header</secondary>
3337 <primary>read-only volume</primary>
3339 <secondary>ID number in volume header</secondary>
3343 <primary>backup volume</primary>
3345 <secondary>ID number in volume header</secondary>
3349 <primary>ReleaseClone volume</primary>
3351 <secondary>ID number in volume header</secondary>
3355 <primary>RWrite field in volume header</primary>
3359 <primary>ROnly field in volume header</primary>
3363 <primary>Backup field in volume header</primary>
3367 <primary>RClone field in volume header</primary>
3372 <para>The volume ID numbers associated with the various versions of the volume: read/write
3373 (<computeroutput>RWrite</computeroutput>), read-only (<computeroutput>ROnly</computeroutput>), backup
3374 (<computeroutput>Backup</computeroutput>), and ReleaseClone (<computeroutput>RClone</computeroutput>). One of them
3375 matches the volume ID number that appears on the first line of the volume's output. If the value in the
3376 <computeroutput>RWrite</computeroutput>, <computeroutput>ROnly</computeroutput>, or
3377 <computeroutput>Backup</computeroutput> field is <computeroutput>0</computeroutput> (zero), there is no volume of that
3378 type. If there is currently no ReleaseClone, the <computeroutput>RClone</computeroutput> field does not appear at
3382 <primary>volume quota</primary>
3384 <secondary>recorded in volume header</secondary>
3388 <primary>MaxQuota field in volume header</primary>
3393 <para>The maximum space quota allotted to the read/write copy of the volume, expressed in kilobyte blocks in the
3394 <computeroutput>MaxQuota</computeroutput> field.</para>
3397 <primary>creation date</primary>
3399 <secondary>recorded in volume header</secondary>
3403 <primary>volume</primary>
3405 <secondary>Creation date in volume header</secondary>
3410 <para>The date and time the volume was created, in the <computeroutput>Creation</computeroutput> field. If the volume
3411 has been restored with the <emphasis role="bold">backup diskrestore</emphasis>, <emphasis role="bold">backup
3412 volrestore</emphasis>, or <emphasis role="bold">vos restore</emphasis> command, this is the restore time.</para>
3415 <primary>update date</primary>
3417 <secondary>recorded in volume header</secondary>
3421 <primary>volume</primary>
3423 <secondary>Last Update date in volume header</secondary>
3428 <para>The date and time when the contents of the volume last changed, in the <computeroutput>Last
3429 Update</computeroutput> field. For read-only and backup volumes, it matches the timestamp in the
3430 <computeroutput>Creation</computeroutput> field.</para>
3433 <primary>access</primary>
3435 <secondary>count, in volume header</secondary>
3439 <primary>volume</primary>
3441 <secondary>counter in header for number of accesses</secondary>
3446 <para>The number of times the volume has been accessed for a fetch or store operation since the later of the two
3447 following times: <itemizedlist>
3449 <para>12:00 a.m. on the day the command is issued</para>
3453 <para>The last time the volume changed location</para>
3455 </itemizedlist></para>
3457 </itemizedlist></para>
3459 <para>An example of the output when the <emphasis role="bold">-long</emphasis> flag is included:</para>
3462 % <emphasis role="bold">vos listvol fs2.abc.com b -long</emphasis>
3463 Total number of volumes on server fs2.abc.com
3464 partition /vicepb: 66
3467 user.pat 1969534536 RW 17518 K On-line
3469 RWrite 1969534536 ROnly 0 Backup 1969534538
3471 Creation Mon Jun 12 09:02:25 1989
3472 Last Update Thu Jan 4 17:39:34 1990
3473 1573 accesses in the past day (i.e., vnode references)
3474 user.pat.backup 1969534538 BK 17537 K On-line
3476 RWrite 1969534536 ROnly 0 Backup 1969534538
3478 Creation Fri Jan 5 06:37:59 1990
3479 Last Update Fri Jan 5 06:37:59 1990
3480 0 accesses in the past day (i.e., vnode references)
3483 Total volumes onLine 66 ; Total volumes offLine 0 ; Total busy 0
3486 <para><emphasis role="bold">Output with the -extended Flag</emphasis></para>
3489 <primary>vos commands</primary>
3491 <secondary>listvol</secondary>
3493 <tertiary>output with -extended flag</tertiary>
3496 <para>When you include the <emphasis role="bold">-extended</emphasis> flag, the output for each volume includes all of the
3497 information reported with the <emphasis role="bold">-long</emphasis> flag, plus two tables of statistics: <itemizedlist>
3499 <para>The table labeled <computeroutput>Raw Read/Write Stats</computeroutput> table summarizes the number of times the
3500 volume has been accessed for reading or writing.</para>
3504 <para>The table labeled <computeroutput>Writes Affecting Authorship</computeroutput> table contains information on
3505 writes made to files and directories in the specified volume.</para>
3507 </itemizedlist></para>
3509 <para>An example of the output when the <emphasis role="bold">-extended</emphasis> flag is included:</para>
3512 % <emphasis role="bold">vos listvol fs3.abc.com a -extended</emphasis>
3513 common.bboards 1969535592 RW 23149 K used 9401 files On-line
3515 RWrite 1969535592 ROnly 0 Backup 1969535594
3517 Creation Mon Mar 8 14:26:05 1999
3518 Last Update Mon Apr 26 09:20:43 1999
3519 11533 accesses in the past day (i.e., vnode references)
3520 Raw Read/Write Stats
3521 |-------------------------------------------|
3522 | Same Network | Diff Network |
3523 |----------|----------|----------|----------|
3524 | Total | Auth | Total | Auth |
3525 |----------|----------|----------|----------|
3526 Reads | 151 | 151 | 1092 | 1068 |
3527 Writes | 3 | 3 | 324 | 324 |
3528 |-------------------------------------------|
3529 Writes Affecting Authorship
3530 |-------------------------------------------|
3531 | File Authorship | Directory Authorship|
3532 |----------|----------|----------|----------|
3533 | Same | Diff | Same | Diff |
3534 |----------|----------|----------|----------|
3535 0-60 sec | 92 | 0 | 100 | 4 |
3536 1-10 min | 1 | 0 | 14 | 6 |
3537 10min-1hr | 0 | 0 | 19 | 4 |
3538 1hr-1day | 1 | 0 | 13 | 0 |
3539 1day-1wk | 1 | 0 | 1 | 0 |
3540 > 1wk | 0 | 0 | 0 | 0 |
3541 |-------------------------------------------|
3545 <sect2 id="HDRWQ221">
3546 <title>Displaying One Volume's VLDB Entry and Volume Header</title>
3549 <primary>displaying</primary>
3551 <secondary>VLDB entry</secondary>
3553 <tertiary>with volume header</tertiary>
3557 <primary>displaying</primary>
3559 <secondary>VLDB entry with volume header</secondary>
3563 <primary>VLDB</primary>
3565 <secondary>displaying entry</secondary>
3567 <tertiary>with volume header</tertiary>
3571 <primary>entry in VLDB</primary>
3573 <secondary>displaying, with volume header</secondary>
3577 <primary>displaying</primary>
3579 <secondary>volume header</secondary>
3581 <tertiary>with VLDB entry</tertiary>
3585 <primary>displaying</primary>
3587 <secondary>volume header with VLDB entry</secondary>
3591 <primary>volume header</primary>
3593 <secondary>displaying</secondary>
3595 <tertiary>with VLDB entry</tertiary>
3598 <para>The <emphasis role="bold">vos examine</emphasis> command displays information from both the VLDB and the volume header
3599 for a single volume. There is some redundancy in the information from the two sources, which allows you to compare the VLDB
3600 and volume header.</para>
3602 <para>Because the volume header for each version of a volume (read/write, read-only, and backup) is different, you can specify
3603 which one to display. Include the <emphasis role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis>
3604 extension on the volume name or ID argument as appropriate. The information from the VLDB is the same for all three
3608 <primary>commands</primary>
3610 <secondary>vos examine</secondary>
3612 <tertiary>basic instructions</tertiary>
3616 <primary>vos commands</primary>
3618 <secondary>examine</secondary>
3620 <tertiary>basic instructions</tertiary>
3624 <sect2 id="HDRWQ222">
3625 <title>To display one volume's VLDB entry and volume header</title>
3629 <para>Issue the <emphasis role="bold">vos examine</emphasis> command. <programlisting>
3630 % <emphasis role="bold">vos examine</emphasis> <<replaceable>volume name or ID</replaceable>>
3631 </programlisting></para>
3633 <para>where <variablelist>
3635 <term><emphasis role="bold">e</emphasis></term>
3638 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">examine</emphasis>.</para>
3643 <term><emphasis role="bold">volume name or ID</emphasis></term>
3646 <para>Identifies one volume either by its complete name or volume ID number. It can be a read/write, read-only, or
3647 backup type. Use the <emphasis role="bold">.backup</emphasis> or <emphasis role="bold">.readonly</emphasis>
3648 extension if appropriate.</para>
3651 </variablelist></para>
3655 <para>The top part of the output displays the same information from a volume header as the <emphasis role="bold">vos
3656 listvol</emphasis> command with the <emphasis role="bold">-long</emphasis> flag, as described following the instructions in
3657 <link linkend="HDRWQ220">To display volume headers</link>. If you specify the read-only version of the volume and it exists at
3658 more than one site, the output includes all of them. The bottom part of the output lists the same information from the VLDB as
3659 the <emphasis role="bold">vos listvldb</emphasis> command, as described following the instructions in <link
3660 linkend="HDRWQ218">To display VLDB entries</link>.</para>
3662 <para>Below is an example for a volume whose VLDB entry is currently locked.</para>
3665 % <emphasis role="bold">vos examine user.terry</emphasis>
3666 user.terry 536870981 RW 3459 K On-line
3668 Write 5360870981 ROnly 0 Backup 536870983
3670 Creation Mon Jun 12 15:22:06 1989
3671 Last Update Fri Jun 16 09:34:35 1989
3672 5719 accesses in the past day (i.e., vnode references)
3673 RWrite: 5360870981 Backup: 536870983
3674 number of sites -> 1
3675 server fs3.abc.com partition /vicepa RW Site
3676 Volume is currently LOCKED
3680 <sect2 id="HDRWQ223">
3681 <title>Displaying the Name or Location of the Volume that Contains a File</title>
3683 <para>This section explains how to learn the name, volume ID number, or location of the volume that contains a file or
3686 <para>You can also use one piece of information about a volume (for example, its name) to obtain other information about it
3687 (for example, its location). The following list points you to the relevant instructions: <itemizedlist>
3689 <primary>translating</primary>
3691 <secondary>volume name to ID number</secondary>
3695 <primary>learning</primary>
3697 <secondary>volume ID</secondary>
3699 <tertiary>given volume name</tertiary>
3703 <primary>volume name</primary>
3705 <secondary>translating</secondary>
3707 <tertiary>to volume ID number</tertiary>
3711 <primary>volume ID number</primary>
3713 <secondary>learning</secondary>
3715 <tertiary>from volume name</tertiary>
3719 <primary>vos commands</primary>
3721 <secondary>examine</secondary>
3723 <tertiary>to learn volume ID</tertiary>
3727 <primary>translating</primary>
3729 <secondary>volume ID number to name</secondary>
3733 <primary>learning</primary>
3735 <secondary>volume name</secondary>
3737 <tertiary>given volume ID number</tertiary>
3741 <primary>volume name</primary>
3743 <secondary>learning</secondary>
3745 <tertiary>from volume ID number</tertiary>
3749 <primary>volume ID number</primary>
3751 <secondary>translating</secondary>
3753 <tertiary>to volume name</tertiary>
3757 <primary>vos commands</primary>
3759 <secondary>examine</secondary>
3761 <tertiary>to learn volume name</tertiary>
3765 <para>To use a volume's name to learn the volume ID numbers of all its existing versions, use the <emphasis
3766 role="bold">vos examine</emphasis> command as described in <link linkend="HDRWQ222">To display one volume's VLDB entry
3767 and volume header</link>.</para>
3769 <para>You can also use the command to learn a volume's name by providing its ID number.</para>
3773 <para>To use a volume's name or ID number to learn its location, use the <emphasis role="bold">vos listvldb</emphasis>
3774 command as described in <link linkend="HDRWQ218">To display VLDB entries</link>.</para>
3777 <primary>translating</primary>
3779 <secondary>volume name/ID number to volume location</secondary>
3783 <primary>learning</primary>
3785 <secondary>volume location</secondary>
3787 <tertiary>given volume name/ID number</tertiary>
3791 <primary>volume name</primary>
3793 <secondary>translating</secondary>
3795 <tertiary>to volume location</tertiary>
3799 <primary>volume ID number</primary>
3801 <secondary>translating</secondary>
3803 <tertiary>to volume location</tertiary>
3807 <primary>volume location</primary>
3809 <secondary>learning from volume name/ID number</secondary>
3813 <primary>vos commands</primary>
3815 <secondary>listvldb</secondary>
3817 <tertiary>to learn volume location</tertiary>
3820 </itemizedlist></para>
3823 <primary>translating</primary>
3825 <secondary>directory/file name to volume name</secondary>
3829 <primary>learning</primary>
3831 <secondary>volume name</secondary>
3833 <tertiary>given directory/file name</tertiary>
3837 <primary>directory/file name</primary>
3839 <secondary>translating to volume name</secondary>
3843 <primary>volume name</primary>
3845 <secondary>learning</secondary>
3847 <tertiary>from directory/file name</tertiary>
3851 <primary>commands</primary>
3853 <secondary>fs listquota</secondary>
3857 <primary>fs commands</primary>
3859 <secondary>listquota</secondary>
3862 <sect3 id="HDRWQ224">
3863 <title>To display the name of the volume that contains a file</title>
3867 <para>Issue the <emphasis role="bold">fs listquota</emphasis> command. <programlisting>
3868 % <emphasis role="bold">fs listquota</emphasis> [<<replaceable>dir/file path</replaceable>>]
3869 </programlisting></para>
3871 <para>where <variablelist>
3873 <term><emphasis role="bold">lq</emphasis></term>
3876 <para>Is an acceptable alias for <emphasis role="bold">listquota</emphasis>(and <emphasis
3877 role="bold">listq</emphasis> the shortest acceptable abbreviation).</para>
3882 <term><emphasis role="bold">dir/file path</emphasis></term>
3885 <para>Names a directory or file housed in the volume for which to display the name. Partial pathnames are
3886 interpreted relative to the current working directory, which is the default if this argument is omitted.</para>
3889 </variablelist></para>
3893 <para>The following is an example of the output:</para>
3896 % <emphasis role="bold">fs listquota /afs/abc.com/usr/terry</emphasis>
3897 Volume Name Quota Used % Used Partition
3898 user.terry 15000 5071 34% 86%
3902 <primary>translating</primary>
3904 <secondary>directory/file name to volume ID number</secondary>
3908 <primary>learning</primary>
3910 <secondary>volume ID</secondary>
3912 <tertiary>given directory/file name</tertiary>
3916 <primary>directory/file name</primary>
3918 <secondary>translating to volume ID number</secondary>
3922 <primary>volume ID number</primary>
3924 <secondary>learning from directory/file name</secondary>
3928 <primary>commands</primary>
3930 <secondary>fs examine</secondary>
3934 <primary>fs commands</primary>
3936 <secondary>examine</secondary>
3940 <sect3 id="HDRWQ225">
3941 <title>To display the ID number of the volume that contains a file</title>
3945 <para>Issue the <emphasis role="bold">fs examine</emphasis> command. <programlisting>
3946 % <emphasis role="bold">fs examine</emphasis> [<<replaceable>dir/file path</replaceable>>]
3947 </programlisting></para>
3949 <para>where <variablelist>
3951 <term><emphasis role="bold">exa</emphasis></term>
3954 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">examine</emphasis>.</para>
3959 <term><emphasis role="bold">dir/file path</emphasis></term>
3962 <para>Names a directory or file housed in the volume for which to display the volume ID. Partial pathnames are
3963 interpreted relative to the current working directory, which is the default if this argument is omitted.</para>
3966 </variablelist></para>
3970 <para>The following example illustrates how the output reports the volume ID number in the
3971 <computeroutput>vid</computeroutput> field.</para>
3974 % <emphasis role="bold">fs examine /afs/abc.com/usr/terry</emphasis>
3975 Volume status for vid = 50489902 named user.terry
3976 Current maximum quota is 15000
3977 Current blocks used are 5073
3978 The partition has 46383 blocks available out of 333305
3982 <para>The partition-related statistics in this command's output do not always agree with the corresponding values in the
3983 output of the standard UNIX <emphasis role="bold">df</emphasis> command. The statistics reported by this command can be up
3984 to five minutes old, because the Cache Manager polls the File Server for partition information at that frequency. Also, on
3985 some operating systems, the <emphasis role="bold">df</emphasis> command's report of partition size includes reserved space
3986 not included in this command's calculation, and so is likely to be about 10% larger.</para>
3990 <primary>translating</primary>
3992 <secondary>directory/file name to volume location</secondary>
3996 <primary>learning</primary>
3998 <secondary>volume location</secondary>
4000 <tertiary>given directory/file name</tertiary>
4004 <primary>directory/file name</primary>
4006 <secondary>translating to volume location</secondary>
4010 <primary>volume location</primary>
4012 <secondary>learning from directory/file name</secondary>
4016 <primary>volume</primary>
4018 <secondary>location</secondary>
4020 <see>volume location</see>
4024 <primary>commands</primary>
4026 <secondary>fs whereis</secondary>
4030 <primary>fs commands</primary>
4032 <secondary>whereis</secondary>
4036 <sect3 id="Header_242">
4037 <title>To display the location of the volume that contains a file</title>
4041 <para>Issue the <emphasis role="bold">fs whereis</emphasis> command to display the name of the file server machine that
4042 houses the volume containing a file or directory. <programlisting>
4043 % <emphasis role="bold">fs whereis</emphasis> [<<replaceable>dir/file path</replaceable>>]
4044 </programlisting></para>
4046 <para>where <variablelist>
4048 <term><emphasis role="bold">whe</emphasis></term>
4051 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">whereis</emphasis>.</para>
4056 <term><emphasis role="bold">dir/file path</emphasis></term>
4059 <para>Names a directory or file for which to report the location. Partial pathnames are interpreted relative to
4060 the current working directory, which is the default if this argument is omitted.</para>
4063 </variablelist></para>
4065 <para>The output displays the file server machine that houses the volume containing the file, as in the following
4069 % <emphasis role="bold">fs whereis /afs/abc.com/user/terry</emphasis>
4070 File /afs/abc.com/usr/terry is on host fs2.abc.com
4075 <para>If you also want to know which partition houses the volume, first issue the <emphasis role="bold">fs
4076 listquota</emphasis> command to display the volume's name. For complete syntax, see <link linkend="HDRWQ224">To display
4077 the name of the volume that contains a file</link>. <programlisting>
4078 % <emphasis role="bold">fs listquota</emphasis> [<<replaceable>dir/file path</replaceable>>]
4079 </programlisting></para>
4081 <para>Then issue the <emphasis role="bold">vos listvldb</emphasis> command, providing the volume name as the volume name
4082 or ID argument. For complete syntax and a description of the output, see <link linkend="HDRWQ218">To display VLDB
4083 entries</link>.</para>
4086 % <emphasis role="bold">vos listvldb</emphasis> <<replaceable>volume name or ID</replaceable>>
4094 <sect1 id="HDRWQ226">
4095 <title>Moving Volumes</title>
4098 <primary>moving</primary>
4100 <secondary>volume</secondary>
4104 <primary>volume</primary>
4106 <secondary>moving</secondary>
4109 <para>There are three main reasons to move volumes: <itemizedlist>
4111 <para>To place volumes on other partitions or machines temporarily while repairing or replacing a disk or file server
4117 <primary>disk partition</primary>
4119 <secondary>moving volumes to reduce overcrowding</secondary>
4120 </indexterm> <indexterm>
4121 <primary>overcrowding of disk partition</primary>
4123 <secondary>moving volumes to reduce</secondary>
4124 </indexterm> <indexterm>
4125 <primary>overcrowding of disk partition</primary>
4127 <secondary>effect on users</secondary>
4128 </indexterm> <indexterm>
4129 <primary>failure</primary>
4131 <secondary>of file storage due to full partition</secondary>
4132 </indexterm> <indexterm>
4133 <primary>file storage</primary>
4135 <secondary>failed due to partition crowding</secondary>
4136 </indexterm> To free space on a partition that is becoming overcrowded. One symptom of overcrowding is that users cannot
4137 to save files even though the relevant volume is below its quota. The following error message confirms the problem:
4139 afs: failed to store file (partition full)
4140 </programlisting></para>
4142 <para>You can track available space on AFS server partitions by using the <emphasis role="bold">scout</emphasis> or
4143 <emphasis role="bold">afsmonitor</emphasis> programs described in <link linkend="HDRWQ323">Monitoring and Auditing AFS
4144 Performance</link>.</para>
4148 <para>A file server machine is becoming overloaded because it houses many more volumes than other machines of the same
4149 size, or has volumes with more popular files in them.</para>
4151 </itemizedlist></para>
4154 <primary>read/write volume</primary>
4156 <secondary>moving</secondary>
4160 <primary>backup volume</primary>
4162 <secondary>removed by read/write move</secondary>
4165 <para>To move a read/write volume, use the <emphasis role="bold">vos move</emphasis> command as described in the following
4166 instructions. Before attempting to move the volume, the <emphasis role="bold">vos</emphasis> command interpreter verifies that
4167 there is enough free space for it on the destination partition. If not, it does not attempt the move operation and prints the
4168 following message.</para>
4171 vos: no space on target partition destination_part to move volume volume
4174 <para>To move a read-only volume, you actually remove the volume from the current site by issuing the <emphasis role="bold">vos
4175 remove</emphasis> command as described in <link linkend="HDRWQ236">To remove a volume and unmount it</link>. Then define a new
4176 site and release the volume to it by issuing the <emphasis role="bold">vos addsite</emphasis> and <emphasis role="bold">vos
4177 release</emphasis> commands as described in <link linkend="HDRWQ194">To replicate a read/write volume (create a read-only
4178 volume)</link>.</para>
4181 <primary>read-only volume</primary>
4183 <secondary>moving</secondary>
4187 <primary>backup volume</primary>
4189 <secondary>moving</secondary>
4192 <para>A backup volume always resides at the same site as its read/write source volume, so you cannot move a backup volume except
4193 as part of moving the read/write source. The <emphasis role="bold">vos move</emphasis> command automatically deletes the backup
4194 version when you move a read/write volume. To create a new backup volume at the new site as soon as the move operation
4195 completes, issue the <emphasis role="bold">vos backup</emphasis> command as described in <link linkend="HDRWQ205">To create and
4196 mount a backup volume</link>.</para>
4199 <primary>commands</primary>
4201 <secondary>vos move</secondary>
4203 <tertiary>basic instructions</tertiary>
4207 <primary>vos commands</primary>
4209 <secondary>move</secondary>
4211 <tertiary>basic instructions</tertiary>
4214 <sect2 id="Header_244">
4215 <title>To move a read/write volume</title>
4219 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
4220 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
4221 display the users in the UserList file</link>. <programlisting>
4222 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
4223 </programlisting></para>
4227 <para>Issue the <emphasis role="bold">vos move</emphasis> command to move the volume. Type it on a single line; it appears
4228 on multiple lines here only for legibility. <programlisting>
4229 % <emphasis role="bold">vos move</emphasis> <<replaceable>volume name or ID</replaceable>> \ <<replaceable>machine name on source</replaceable>>
4230 <<replaceable>partition name on source </replaceable>> \ <<replaceable>machine name on destination</replaceable>> <partition name on
4232 </programlisting></para>
4234 <para>where <variablelist>
4236 <term><emphasis role="bold">m</emphasis></term>
4239 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">move</emphasis>.</para>
4244 <term><emphasis role="bold">volume name or ID</emphasis></term>
4247 <para>Specifies the name or volume ID number of the read/write volume to move.</para>
4252 <term><emphasis role="bold">machine name on source</emphasis></term>
4255 <para>Names the file server machine currently housing the volume.</para>
4260 <term><emphasis role="bold">partition name on source</emphasis></term>
4263 <para>Names the partition currently housing the volume.</para>
4268 <term><emphasis role="bold">machine name on destination</emphasis></term>
4271 <para>Names the file server machine to which to move the volume.</para>
4276 <term><emphasis role="bold">partition name on destination</emphasis></term>
4279 <para>Names the partition to which to move the volume.</para>
4282 </variablelist></para>
4285 <para>It is best not to halt a <emphasis role="bold">vos move</emphasis> operation before it completes, because parts of
4286 the volume can be left on both the source and destination machines. For more information, see the command's reference
4287 page in the <emphasis>OpenAFS Administration Reference</emphasis>.</para>
4292 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">vos listvldb</emphasis> command to
4293 confirm the success of the move. Complete instructions appear in <link linkend="HDRWQ218">To display VLDB entries</link>.
4295 % <emphasis role="bold">vos listvldb</emphasis> <<replaceable>volume name or ID</replaceable>>
4296 </programlisting></para>
4300 <para>If a backup version existed at the read/write volume's previous site, create a new backup at the new site by issuing
4301 the <emphasis role="bold">vos backup</emphasis> command, which is fully described in <link linkend="HDRWQ205">To create
4302 and mount a backup volume</link>. <programlisting>
4303 % <emphasis role="bold">vos backup</emphasis> <<replaceable>volume name or ID</replaceable>>
4304 </programlisting></para>
4310 <sect1 id="HDRWQ227">
4311 <title>Synchronizing the VLDB and Volume Headers</title>
4314 <primary>VLDB</primary>
4316 <secondary>synchronizing with volume headers</secondary>
4320 <primary>volume header</primary>
4322 <secondary>synchronizing with VLDB</secondary>
4326 <primary>volume</primary>
4328 <secondary>synchronizing VLDB and volume header</secondary>
4331 <para>AFS can provide transparent file access because the Volume Location Database (VLDB) constantly tracks volume locations.
4332 When the Cache Manager needs a file, it contacts the Volume Location (VL) Server, which reads the VLDB for the current location
4333 of the volume containing the file. Therefore, the VLDB must accurately reflect the state of volumes on the file server machines
4334 at all times. The Volume Server and VL Server automatically update a volume's VLDB entry when its status changes during a
4335 <emphasis role="bold">vos</emphasis> operation, by performing the following series of steps. <orderedlist>
4337 <para><anchor id="LIWQ228" />The VL Server locks the VLDB entry. The lock advises other operations not to manipulate any
4338 of the volume versions (read/write, read-only, or backup), which prevents the inconsistency that can result from multiple
4339 simultaneous operations.</para>
4344 <primary>intention flag in VLDB entry</primary>
4345 </indexterm> <indexterm>
4346 <primary>VLDB</primary>
4348 <secondary>intention flag set by VL Server</secondary>
4349 </indexterm> <anchor id="LIWQ229" />The VL Server sets an <emphasis>intention flag</emphasis> in the VLDB entry that
4350 indicates the kind of operation to be performed. This flag never appears in VLDB listings because it is for internal use
4351 only. In case the operation terminates prematurely, this flag tells the Salvager which operation was interrupted. (The
4352 Salvager then determines the steps necessary either to complete the operation or return the volume to a previous
4353 consistent state. For more information on salvaging, see <link linkend="HDRWQ232">Salvaging Volumes</link>.)</para>
4357 <para><anchor id="LIWQ230" />The Volume Server manipulates the volume. It usually sets the
4358 <computeroutput>Off-line</computeroutput> flag in the volume header, which makes the volume inaccessible to the File
4359 Server and other Volume Server operations during the manipulation. When the operation completes, the volume is again
4360 marked <computeroutput>On-line</computeroutput>.</para>
4364 <para><anchor id="LIWQ231" />The VL Server records any changes resulting from the operation in the VLDB entry. Once the
4365 operation is complete, it removes the intention flag set in Step <link linkend="LIWQ229">2</link>and releases the lock set
4366 in Step <link linkend="LIWQ228">1</link>.</para>
4368 </orderedlist></para>
4370 <para>If a <emphasis role="bold">vos</emphasis> operation fails while the Volume Server is manipulating the volume
4371 (corresponding to Step <link linkend="LIWQ230">3</link>), the volume can be left in an intermediate state, which is termed
4372 <emphasis>corruption</emphasis>. In this case, the <computeroutput>Off-line</computeroutput> or <computeroutput>Off-line**needs
4373 salvage**</computeroutput> marker usually appears at the end of the first line of output from the <emphasis role="bold">vos
4374 examine</emphasis> command. To repair the corruption, run the Salvager before attempting to resynchronize the VLDB and volume
4375 headers. For salvaging instructions, see <link linkend="HDRWQ232">Salvaging Volumes</link>.</para>
4377 <para>More commonly, an interruption while flags are being set or removed (corresponding to Step <link
4378 linkend="LIWQ228">1</link>, Step <link linkend="LIWQ229">2</link>, or Step <link linkend="LIWQ231">4</link>) causes a
4379 discrepancy between the VLDB and volume headers. To resynchronize the VLDB and volumes, use the <emphasis role="bold">vos
4380 syncvldb</emphasis> and <emphasis role="bold">vos syncserv</emphasis> commands. To achieve complete VLDB consistency, it is best
4381 to run the <emphasis role="bold">vos syncvldb</emphasis> command on all file server machines in the cell, and then run the
4382 <emphasis role="bold">vos syncserv</emphasis> command on all file server machines in the cell.</para>
4385 <primary>symptoms</primary>
4387 <secondary>of VLDB/volume header desynchronization</secondary>
4391 <primary>desynchronization of VLDB/volume headers</primary>
4393 <secondary>symptoms of</secondary>
4397 <primary>synchrony of VLDB and volume headers</primary>
4399 <secondary>symptoms of lack of</secondary>
4402 <para>There are several symptoms that indicate a volume operation failed: <itemizedlist>
4404 <para>Error messages on the standard error stream or in server process log files indicate that an operation terminated
4405 abnormally. Perhaps you had to halt the operation before it completed (for instance, by using a signal such as <emphasis
4406 role="bold">Ctrl-c</emphasis>), or a file server machine or server process was not functioning when the operation ran. To
4407 determine if a machine or process is still not functioning, issue the <emphasis role="bold">bos status</emphasis> command
4408 as described in <link linkend="HDRWQ158">Displaying Process Status and Information from the BosConfig File</link>.</para>
4412 <para>A subsequent <emphasis role="bold">vos</emphasis> operation fails because a previous failure left a VLDB entry
4413 locked. Sometimes an error message reports that a volume is locked. To display a list of locked volumes, use the <emphasis
4414 role="bold">-locked</emphasis> flag on the <emphasis role="bold">vos listvldb</emphasis> command as described in <link
4415 linkend="HDRWQ217">Displaying VLDB Entries</link>.</para>
4417 <para>If the only problem with a volume is that its VLDB entry is locked, you probably do not need to synchronize the
4418 entire VLDB. Instead use the <emphasis role="bold">vos unlock</emphasis> or <emphasis role="bold">vos
4419 unlockvldb</emphasis> command to unlock the entry, as described in <link linkend="HDRWQ247">Unlocking and Locking VLDB
4420 Entries</link>.</para>
4424 <para>A subsequent <emphasis role="bold">vos</emphasis> operation fails because a previous failure left a volume marked as
4425 offline. To check a volume's current status, check the first line of output from the <emphasis role="bold">vos
4426 examine</emphasis> command as described in <link linkend="HDRWQ221">Displaying One Volume's VLDB Entry and Volume
4427 Header</link>.</para>
4429 </itemizedlist></para>
4432 <primary>synchrony of VLDB and volume headers</primary>
4434 <secondary>restoring</secondary>
4438 <primary>restoring</primary>
4440 <secondary>synchrony of VLDB and volume headers</secondary>
4444 <primary>desynchronization of VLDB/volume headers</primary>
4446 <secondary>fixing</secondary>
4450 <primary>Salvager</primary>
4452 <secondary>running before VLDB/volume header resynchronization</secondary>
4456 <primary>vos commands</primary>
4458 <secondary>syncvldb</secondary>
4460 <tertiary>effect</tertiary>
4463 <para>The <emphasis role="bold">vos syncvldb</emphasis> command corrects the information in the Volume Location Database (VLDB)
4464 either about all volumes housed on a file server machine, about the volumes on just one partition, or about a single volume. If
4465 checking about one or more partitions, the command contacts the Volume Server to obtain a list of the volumes that actually
4466 reside on each partition. It then obtains the VLDB entry for each volume from the VL Server. It changes the VLDB entry as
4467 necessary to reflect the state of the volume on the partition. For example, it creates or updates a VLDB entry when it finds a
4468 volume for which the VLDB entry is missing or incomplete. However, if there is already a VLDB entry that defines a different
4469 location for the volume, or there are irreconcilable conflicts with other VLDB entries, it instead writes a message about the
4470 conflict to the standard error stream. The command never removes volumes from the file server machine.</para>
4472 <para>When checking a single volume's VLDB entry, the command also automatically performs the operations invoked by the
4473 <emphasis role="bold">vos syncserv</emphasis> command: it not only verifies that the VLDB entry is correct for the specified
4474 volume type (read/write, backup, or read-only), but also checks that any related volume types mentioned in the VLDB entry
4475 actually exist at the site listed in the entry.</para>
4478 <primary>vos commands</primary>
4480 <secondary>syncserv</secondary>
4482 <tertiary>effect</tertiary>
4485 <para>The <emphasis role="bold">vos syncserv</emphasis> command verifies that each volume type (read/write, read-only, and
4486 backup) mentioned in a VLDB entry actually exists at the site indicated in the entry. It checks all VLDB entries that mention a
4487 site either on any of a file server machine's partitions or on one partition. Note that command can end up inspecting sites
4488 other than on the specified machine or partition, if there are read-only versions of the volume at sites other than the
4489 read/write site.</para>
4491 <para>The command alters any incorrect information in the VLDB, unless there is an irreconcilable conflict with other VLDB
4492 entries. In that case, it writes a message to the standard error stream instead. The command never removes volumes from their
4496 <primary>commands</primary>
4498 <secondary>vos syncvldb</secondary>
4502 <primary>vos commands</primary>
4504 <secondary>syncvldb</secondary>
4506 <tertiary>syntax</tertiary>
4510 <primary>commands</primary>
4512 <secondary>vos syncserv</secondary>
4516 <primary>vos commands</primary>
4518 <secondary>syncserv</secondary>
4520 <tertiary>syntax</tertiary>
4523 <sect2 id="Header_246">
4524 <title>To synchronize the VLDB with volume headers</title>
4528 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
4529 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
4530 display the users in the UserList file</link>. <programlisting>
4531 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
4532 </programlisting></para>
4536 <para><anchor id="LIVOL-SYNCVL" />Issue the <emphasis role="bold">vos syncvldb</emphasis> command to make the VLDB reflect
4537 the true state of all volumes on a machine or partition, or the state of one volume.</para>
4540 <para>To synchronize the VLDB completely, issue the command repeatedly, substituting each file server machine in your
4541 cell for the <emphasis role="bold">-server</emphasis> argument in turn and omitting the <emphasis
4542 role="bold">-partition</emphasis> and <emphasis role="bold">-volume</emphasis> arguments, before proceeding to Step
4543 <link linkend="LIVOL-SYNCSR">3</link>.</para>
4547 % <emphasis role="bold">vos syncvldb -server</emphasis> <<replaceable>machine name</replaceable>> [<emphasis role="bold">-partition</emphasis> <<replaceable>partition name</replaceable>>] \
4548 [<emphasis role="bold">-volume</emphasis> <<replaceable>volume name or ID</replaceable>>] [<emphasis role="bold">-verbose >></emphasis> file]
4551 <para>where <variablelist>
4553 <term><emphasis role="bold">syncv</emphasis></term>
4556 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">syncvldb</emphasis>.</para>
4561 <term><emphasis role="bold">-server</emphasis></term>
4564 <para>Names the file server machine housing the volumes for which to verify VLDB entries. If you are also
4565 providing the <emphasis role="bold">-volume</emphasis> argument, this argument must name the machine where the
4566 volume actually resides.</para>
4571 <term><emphasis role="bold">-partition</emphasis></term>
4574 <para>Identifies the partition (on the file server machine specified by the <emphasis
4575 role="bold">-server</emphasis> argument) housing the volumes for which to verify VLDB entries. In general, it is
4576 best to omit this argument so that either the VLDB entries for all volumes on a server machine are corrected (if
4577 you do not provide the <emphasis role="bold">-volume</emphasis> argument), or so that you do not need to guarantee
4578 that the partition actually houses the volume named by the <emphasis role="bold">-volume</emphasis>
4584 <term><emphasis role="bold">-volume</emphasis></term>
4587 <para>Specifies the name or volume ID number of a single volume for which to verify the VLDB entry.</para>
4592 <term><emphasis role="bold">-verbose >> file</emphasis></term>
4595 <para>Directs a detailed trace to the file called file, which can be either in AFS or on the local disk of the
4596 machine on which you are issuing the command. The command often writes a large amount of output to the standard
4597 output stream; writing it to a file enables you to examine the output more carefully.</para>
4600 </variablelist></para>
4604 <para><anchor id="LIVOL-SYNCSR" />Issue the <emphasis role="bold">vos syncserv</emphasis> command to inspect each volume
4605 for which the VLDB lists a version at the specified site.</para>
4608 <para>To synchronize the VLDB completely, issue the command repeatedly, substituting each file server machine in your
4609 cell for the machine name argument in turn and omitting the partition name argument.</para>
4613 % <emphasis role="bold">vos syncserv</emphasis> <<replaceable>machine name</replaceable>> [<<replaceable>partition name</replaceable>>] [<emphasis
4614 role="bold">-v >></emphasis> file]
4617 <para>where <variablelist>
4619 <term><emphasis role="bold">syncs</emphasis></term>
4622 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">syncserv</emphasis>.</para>
4627 <term><emphasis role="bold">machine name</emphasis></term>
4630 <para>Names the file server machine mentioned in each VLDB entry to check.</para>
4635 <term><emphasis role="bold">partition name</emphasis></term>
4638 <para>Identifies the partition mentioned in each VLDB entry to check. If synchronizing the entire VLDB, omit this
4644 <term><emphasis role="bold">-v >> file</emphasis></term>
4647 <para>Directs a detailed trace to the file called file, which can be either in AFS or on the local disk of the
4648 machine on which you are issuing the command. The command often writes a large amount of output to the standard
4649 output stream; writing it to a file enables you to examine the output more carefully.</para>
4652 </variablelist></para>
4658 <sect1 id="HDRWQ232">
4659 <title>Salvaging Volumes</title>
4662 <primary>volume</primary>
4664 <secondary>salvaging</secondary>
4668 <primary>corruption</primary>
4670 <secondary>symptoms and types</secondary>
4674 <primary>symptoms</primary>
4676 <secondary>volume corruption</secondary>
4680 <primary>volume</primary>
4682 <secondary>symptoms of corruption</secondary>
4686 <primary>Salvager</primary>
4688 <secondary>instructions for invoking</secondary>
4692 <primary>file server machine</primary>
4694 <secondary>salvaging volumes</secondary>
4698 <primary>salvaging</primary>
4700 <secondary>volumes</secondary>
4704 <primary>partition</primary>
4706 <secondary>salvaging all volumes</secondary>
4709 <para>An unexpected interruption while the Volume Server or File Server is manipulating the data in a volume can leave the
4710 volume in an intermediate state (<emphasis>corrupted</emphasis>), rather than just creating a discrepancy between the
4711 information in the VLDB and volume headers. For example, the failure of the operation that saves changes to a file (by
4712 overwriting old data with new) can leave the old and new data mixed together on the disk.</para>
4714 <para>If an operation halts because the Volume Server or File Server exits unexpectedly, the BOS Server automatically shuts down
4715 all components of the <emphasis role="bold">fs</emphasis> process and invokes the Salvager. The Salvager checks for and repairs
4716 any inconsistencies it can. Sometimes, however, there are symptoms of the following sort, which indicate corruption serious
4717 enough to create problems but not serious enough to cause the File Server component to fail. In these cases you can invoke the
4718 Salvager yourself by issuing the <emphasis role="bold">bos salvage</emphasis> command. <itemizedlist>
4720 <para><emphasis role="bold">Symptom:</emphasis> A file appears in the output of the <emphasis role="bold">ls</emphasis>
4721 command, but attempts to access the file fail with messages indicating that it does not exist.</para>
4723 <para><emphasis role="bold">Possible cause:</emphasis> The Volume Server or File Server exited in the middle of a
4724 file-creation operation, after changing the directory structure, but before actually storing data. (Other possible causes
4725 are that the ACL on the directory does not grant the permissions you need to access the file, or there is a process,
4726 machine, or network outage. Check for these causes before assuming the file is corrupted.)</para>
4728 <para><emphasis role="bold">Salvager's solution:</emphasis> Remove the file's entry from the directory structure.</para>
4732 <para><emphasis role="bold">Symptom:</emphasis> A volume is marked <computeroutput>Off-line</computeroutput> in the output
4733 from the <emphasis role="bold">vos examine</emphasis> and <emphasis role="bold">vos listvol</emphasis> commands, or
4734 attempts to access the volume fail.</para>
4736 <para><emphasis role="bold">Possible cause:</emphasis> Two files or versions of a file are sharing the same disk blocks
4737 because of an interrupted operation. The File Server and Volume Server normally refuse to attach volumes that exhibit this
4738 type of corruption, because it can be very dangerous. If the Volume Server or File Server do attach the volume but are
4739 unsure of the status of the affected disk blocks, they sometimes try to write yet more data there. When they cannot
4740 perform the write, the data is lost. This effect can cascade, causing loss of all data on a partition.</para>
4742 <para><emphasis role="bold">Salvager's solution:</emphasis> Delete the data from the corrupted disk blocks in preference
4743 to losing an entire partition.</para>
4747 <para><emphasis role="bold">Symptom:</emphasis> There is less space available on the partition than you expect based on
4748 the size statistic reported for each volume by the <emphasis role="bold">vos listvol</emphasis> command.</para>
4750 <para><emphasis role="bold">Possible cause:</emphasis> There are orphaned files and directories. An
4751 <emphasis>orphaned</emphasis> element is completely inaccessible because it is not referenced by any directory that can
4752 act as its parent (is higher in the file tree). An orphaned element is not counted in the calculation of a volume's size
4753 (or against its quota), even though it occupies space on the server partition.</para>
4755 <para><emphasis role="bold">Salvager's solution:</emphasis> By default, print a message to the <emphasis
4756 role="bold">/usr/afs/logs/SalvageLog</emphasis> file reporting how many orphans were found and the approximate number of
4757 kilobytes they are consuming. You can use the <emphasis role="bold">-orphans</emphasis> argument to remove or attach
4758 orphaned elements instead. See <link linkend="HDRWQ233">To salvage volumes</link>.</para>
4760 </itemizedlist></para>
4762 <para>When you notice symptoms such as these, use the <emphasis role="bold">bos salvage</emphasis> command to invoke the
4763 Salvager before corruption spreads. (Even though it operates on volumes, the command belongs to the <emphasis
4764 role="bold">bos</emphasis> suite because the BOS Server must coordinate the shutdown and restart of the Volume Server and File
4765 Server with the Salvager. It shuts them down before the Salvager starts, and automatically restarts them when the salvage
4766 operation finishes.)</para>
4768 <para>All of the AFS data stored on a file server machine is inaccessible during the salvage of one or more partitions. If you
4769 salvage just one volume, it alone is inaccessible.</para>
4771 <para>When processing one or more partitions, the command restores consistency to corrupted read/write volumes where possible.
4772 For read-only or backup volumes, it inspects only the volume header: <itemizedlist>
4774 <para>If the volume header is corrupted, the Salvager removes the volume completely and records the removal in its log
4775 file, <emphasis role="bold">/usr/afs/logs/SalvageLog</emphasis>. Issue the <emphasis role="bold">vos release</emphasis> or
4776 <emphasis role="bold">vos backup</emphasis> command to create the read-only or backup volume again.</para>
4780 <para>If the volume header is intact, the Salvager skips the volume (does not check for corruption in the contents).
4781 However, if the File Server notices corruption as it initializes, it sometimes refuses to attach the volume or bring it
4782 online. In this case, it is simplest to remove the volume by issuing the <emphasis role="bold">vos remove</emphasis> or
4783 <emphasis role="bold">vos zap</emphasis> command. Then issue the <emphasis role="bold">vos release</emphasis> or <emphasis
4784 role="bold">vos backup</emphasis> command to create it again.</para>
4786 </itemizedlist></para>
4788 <para>Combine the <emphasis role="bold">bos salvage</emphasis> command's arguments as indicated to salvage different numbers of
4789 volumes: <itemizedlist>
4791 <para>To salvage all volumes on a file server machine, combine the <emphasis role="bold">-server</emphasis> argument and
4792 the <emphasis role="bold">-all</emphasis> flag.</para>
4796 <para>To salvage all volumes on one partition, combine the <emphasis role="bold">-server</emphasis> and <emphasis
4797 role="bold">-partition</emphasis> arguments.</para>
4801 <para>To salvage only one read/write volume, combine the <emphasis role="bold">-server</emphasis>, <emphasis
4802 role="bold">-partition</emphasis>, and <emphasis role="bold">-volume</emphasis> arguments. Only that volume is
4803 inaccessible to Cache Managers, because the BOS Server does not shutdown the File Server and Volume Server processes
4804 during the salvage of a single volume. Do not name a read-only or backup volume with the <emphasis
4805 role="bold">-volume</emphasis> argument. Instead, remove the volume, using the <emphasis role="bold">vos remove</emphasis>
4806 or <emphasis role="bold">vos zap</emphasis> command. Then create a new copy of the volume with the <emphasis
4807 role="bold">vos release</emphasis> or <emphasis role="bold">vos backup</emphasis> command.</para>
4809 </itemizedlist></para>
4811 <para>The Salvager always writes a trace to the <emphasis role="bold">/usr/afs/logs/SalvageLog</emphasis> file on the file
4812 server machine where it runs. To record the trace in another file as well (either in AFS or on the local disk of the machine
4813 where you issue the <emphasis role="bold">bos salvage</emphasis> command), name the file with the <emphasis
4814 role="bold">-file</emphasis> argument. Or, to display the trace on the standard output stream as it is written to the <emphasis
4815 role="bold">/usr/afs/logs/SalvageLog</emphasis> file, include the <emphasis role="bold">-showlog</emphasis> flag.</para>
4817 <para>By default, multiple Salvager subprocesses run in parallel: one for each partition up to four, and four subprocesses for
4818 four or more partitions. To increase or decrease the number of subprocesses running in parallel, provide a positive integer
4819 value for the <emphasis role="bold">-parallel</emphasis> argument.</para>
4821 <para>If there is more than one server partition on a physical disk, the Salvager by default salvages them serially to avoid the
4822 inefficiency of constantly moving the disk head from one partition to another. However, this strategy is often not ideal if the
4823 partitions are configured as logical volumes that span multiple disks. To force the Salvager to salvage logical volumes in
4824 parallel, provide the string <emphasis role="bold">all</emphasis> as the value for the <emphasis
4825 role="bold">-parallel</emphasis> argument. Provide a positive integer to specify the number of subprocesses to run in parallel
4826 (for example, <emphasis role="bold">-parallel 5all</emphasis> for five subprocesses), or omit the integer to run up to four
4827 subprocesses, depending on the number of logical volumes being salvaged.</para>
4829 <para>The Salvager creates temporary files as it runs, by default writing them to the partition it is salvaging. The number of
4830 files can be quite large, and if the partition is too full to accommodate them, the Salvager terminates without completing the
4831 salvage operation (it always removes the temporary files before exiting). Other Salvager subprocesses running at the same time
4832 continue until they finish salvaging all other partitions where there is enough disk space for temporary files. To complete the
4833 interrupted salvage, reissue the command against the appropriate partitions, adding the <emphasis role="bold">-tmpdir</emphasis>
4834 argument to redirect the temporary files to a local disk directory that has enough space.</para>
4836 <para>The <emphasis role="bold">-orphans</emphasis> argument controls how the Salvager handles orphaned files and directories
4837 that it finds on server partitions it is salvaging. An orphaned element is completely inaccessible because it is not referenced
4838 by the vnode of any directory that can act as its parent (is higher in the filespace). Orphaned objects occupy space on the
4839 server partition, but do not count against the volume's quota.</para>
4841 <para>During the salvage, the output of the <emphasis role="bold">bos status</emphasis> command reports the following auxiliary
4842 status for the <emphasis role="bold">fs</emphasis> process:</para>
4845 Salvaging file system
4849 <primary>bos commands</primary>
4851 <secondary>salvage</secondary>
4855 <primary>commands</primary>
4857 <secondary>bos salvage</secondary>
4860 <sect2 id="HDRWQ233">
4861 <title>To salvage volumes</title>
4865 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
4866 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
4867 display the users in the UserList file</link>. <programlisting>
4868 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
4869 </programlisting></para>
4873 <para>Issue the <emphasis role="bold">bos salvage</emphasis> command to salvage one or more volumes. <programlisting>
4874 % <emphasis role="bold">bos salvage -server</emphasis> <<replaceable>machine name</replaceable>> [<emphasis role="bold">-partition</emphasis> <<replaceable>salvage partition</replaceable>>] \
4875 [<emphasis role="bold">-volume</emphasis> <<replaceable>salvage volume number or volume name</replaceable>>] \
4876 [<emphasis role="bold">-file</emphasis> salvage log output file] [<emphasis role="bold">-all</emphasis>] [<emphasis
4877 role="bold">-showlog</emphasis>] \
4878 [<emphasis role="bold">-parallel</emphasis> <<replaceable># of max parallel partition salvaging</replaceable>>] \
4879 [<emphasis role="bold">-tmpdir</emphasis> <<replaceable>directory to place tmp files</replaceable>>] \
4880 [<emphasis role="bold">-orphans</emphasis> <<emphasis role="bold">ignore</emphasis> | <emphasis role="bold">remove</emphasis> | <emphasis
4881 role="bold">attach</emphasis> >]
4882 </programlisting></para>
4884 <para>where <variablelist>
4886 <term><emphasis role="bold">-server</emphasis></term>
4889 <para>Names the file server machine on which to salvage volumes. This argument can be combined either with the
4890 <emphasis role="bold">-all</emphasis> flag, the <emphasis role="bold">-partition</emphasis> argument, or both the
4891 <emphasis role="bold">-partition</emphasis> and <emphasis role="bold">-volume</emphasis> arguments.</para>
4896 <term><emphasis role="bold">-partition</emphasis></term>
4899 <para>Names a single partition on which to salvage all volumes. The <emphasis role="bold">-server</emphasis>
4900 argument must be provided along with this one.</para>
4905 <term><emphasis role="bold">-volume</emphasis></term>
4908 <para>Specifies the name or volume ID number of one read/write volume to salvage. Combine this argument with the
4909 <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments.</para>
4914 <term><emphasis role="bold">-file</emphasis></term>
4917 <para>Specifies the complete pathname of a file into which to write a trace of the salvage operation, in addition
4918 to the <emphasis role="bold">/usr/afs/logs/SalvageLog</emphasis> file on the server machine. If the file pathname
4919 is local, the trace is written to the specified file on the local disk of the machine where the <emphasis
4920 role="bold">bos salvage</emphasis> command is issued. If the <emphasis role="bold">-volume</emphasis> argument is
4921 included, the file can be in AFS, though not in the volume being salvaged. Do not combine this argument with the
4922 <emphasis role="bold">-showlog</emphasis> flag.</para>
4927 <term><emphasis role="bold">-all</emphasis></term>
4930 <para>Salvages all volumes on all of the partitions on the machine named by the <emphasis
4931 role="bold">-server</emphasis> argument.</para>
4936 <term><emphasis role="bold">-showlog</emphasis></term>
4939 <para>Displays the trace of the salvage operation on the standard output stream, as well as writing it to the
4940 <emphasis role="bold">/usr/afs/logs/SalvageLog</emphasis> file.</para>
4945 <term><emphasis role="bold">-parallel</emphasis></term>
4948 <para>Specifies the maximum number of Salvager subprocesses to run in parallel. Provide one of three values:
4951 <para>An integer from the range <emphasis role="bold">1</emphasis> to <emphasis role="bold">32</emphasis>. A
4952 value of <emphasis role="bold">1</emphasis> means that a single Salvager process salvages the partitions
4953 sequentially.</para>
4957 <para>The string <emphasis role="bold">all</emphasis> to run up to four Salvager subprocesses in parallel on
4958 partitions formatted as logical volumes that span multiple physical disks. Use this value only with such
4959 logical volumes.</para>
4963 <para>The string <emphasis role="bold">all</emphasis> followed immediately (with no intervening space) by an
4964 integer from the range <emphasis role="bold">1</emphasis> to <emphasis role="bold">32</emphasis>, to run the
4965 specified number of Salvager subprocesses in parallel on partitions formatted as logical volumes. Use this
4966 value only with such logical volumes.</para>
4968 </itemizedlist></para>
4970 <para>The BOS Server never starts more Salvager subprocesses than there are partitions, and always starts only one
4971 process to salvage a single volume. If this argument is omitted, up to four Salvager subprocesses run in
4977 <term><emphasis role="bold">-tmpdir</emphasis></term>
4980 <para>Specifies the full pathname of a local disk directory to which the Salvager process writes temporary files
4981 as it runs. By default, it writes them to the partition it is currently salvaging.</para>
4986 <term><emphasis role="bold">-orphans</emphasis></term>
4989 <para>Controls how the Salvager handles orphaned files and directories. Choose one of the following three values:
4992 <term><emphasis role="bold">ignore</emphasis></term>
4995 <para>Leaves the orphaned objects on the disk, but prints a message to the <emphasis
4996 role="bold">/usr/afs/logs/SalvageLog</emphasis> file reporting how many orphans were found and the
4997 approximate number of kilobytes they are consuming. This is the default if you omit the <emphasis
4998 role="bold">-orphans</emphasis> argument.</para>
5003 <term><emphasis role="bold">remove</emphasis></term>
5006 <para>Removes the orphaned objects, and prints a message to the <emphasis
5007 role="bold">/usr/afs/logs/SalvageLog</emphasis> file reporting how many orphans were removed and the
5008 approximate number of kilobytes they were consuming.</para>
5013 <term><emphasis role="bold">attach</emphasis></term>
5016 <para>Attaches the orphaned objects by creating a reference to them in the vnode of the volume's root
5017 directory. Since each object's actual name is now lost, the Salvager assigns each one a name of the
5018 following form: <simplelist>
5019 <member><emphasis role="bold">_ _ORPHANFILE_ _.</emphasis> index for files</member>
5021 <member><emphasis role="bold">_ _ORPHANDIR_ _.</emphasis> index for directories</member>
5022 </simplelist></para>
5024 <para>where index is a two-digit number that uniquely identifies each object. The orphans are charged
5025 against the volume's quota and appear in the output of the <emphasis role="bold">ls</emphasis> command
5026 issued against the volume's root directory.</para>
5029 </variablelist></para>
5032 </variablelist></para>
5038 <sect1 id="HDRWQ234">
5039 <title>Setting and Displaying Volume Quota and Current Size</title>
5042 <primary>volume</primary>
5044 <secondary>quota</secondary>
5046 <see>volume quota</see>
5050 <primary>default</primary>
5052 <secondary>volume quota</secondary>
5055 <para>Every AFS volume has an associated quota which limits the volume's size. The default quota for a newly created volume is
5056 5,000 kilobyte blocks (slightly less that 5 MB). When a volume reaches its quota, the File Server rejects attempts to create new
5057 files or directories in it. If an application is writing data into an existing file in a full volume, the File Server allows a
5058 defined overage (by default, 1 MB). (You can use the <emphasis role="bold">fileserver</emphasis> command's <emphasis
5059 role="bold">-spare</emphasis> or <emphasis role="bold">-pctspare</emphasis> argument to change the default overage; see the
5060 command's reference page in the <emphasis>OpenAFS Administration Reference</emphasis>.)</para>
5062 <para>To set a quota other than 5000 KB as you create a volume, include the <emphasis role="bold">-maxquota</emphasis> argument
5063 to the <emphasis role="bold">vos create</emphasis> command, as described in <link linkend="HDRWQ185">Creating Read/write
5064 Volumes</link>. To modify an existing volume's quota, issue either the <emphasis role="bold">fs setquota</emphasis> or the
5065 <emphasis role="bold">fs setvol</emphasis> command as described in the following instructions. Do not set an existing volume's
5066 quota lower than its current size.</para>
5068 <para>In general, smaller volumes are easier to administer than larger ones. If you need to move volumes, say for load-balancing
5069 purposes, it is easier to find enough free space on other partitions for small volumes. Move operations complete more quickly
5070 for small volumes, reducing the potential for outages or other errors to interrupt the move. AFS supports a maximum volume size,
5071 which can vary for different AFS releases; see the <emphasis> OpenAFS Release Notes</emphasis> for the version you are using.
5072 Also, the size of a partition or logical places an absolute limit on volume size, because a volume cannot span multiple
5073 partitions or logical volumes.</para>
5075 <para>It is generally safe to overpack partitions by putting more volumes on them than can actually fit if all the volumes reach
5076 their maximum quota. However, only experience determines to what degree overpacking works in your cell. It depends on what kind
5077 of quota you assign to volumes (particularly user volumes, which are more likely than system volumes to grow unpredictably) and
5078 how much information people generate and store in comparison to their quota.</para>
5080 <para>There are several commands that display a volume's quota, as described in the following instructions. They differ in how
5081 much related information they produce.</para>
5083 <sect2 id="Header_250">
5084 <title>To set quota for a single volume</title>
5087 <primary>maximum volume quota</primary>
5091 <primary>setting</primary>
5093 <secondary>volume quota</secondary>
5095 <tertiary>on single volume</tertiary>
5099 <primary>volume quota</primary>
5101 <secondary>setting</secondary>
5103 <tertiary>on single volume</tertiary>
5107 <primary>commands</primary>
5109 <secondary>fs setquota</secondary>
5113 <primary>fs commands</primary>
5115 <secondary>setquota</secondary>
5120 <para>Verify that you belong to the <emphasis role="bold">system:administrators</emphasis> group. If necessary, issue the
5121 <emphasis role="bold">pts membership</emphasis> command, which is fully described in <link linkend="HDRWQ587">To display
5122 the members of the system:administrators group</link>. <programlisting>
5123 % <emphasis role="bold">pts membership system:administrators</emphasis>
5124 </programlisting></para>
5128 <para>Issue the <emphasis role="bold">fs setquota</emphasis> command to set the volume's maximum quota. <programlisting>
5129 % <emphasis role="bold">fs setquota</emphasis> [<<replaceable>dir/file path</replaceable>>] <emphasis role="bold">-max</emphasis> <<replaceable>max quota in kbytes</replaceable>>
5130 </programlisting></para>
5132 <para>where <variablelist>
5134 <term><emphasis role="bold">sq</emphasis></term>
5137 <para>Is an acceptable alias for <emphasis role="bold">setquota</emphasis>.</para>
5142 <term><emphasis role="bold">dir/file path</emphasis></term>
5145 <para>Names a file or directory in the volume for which to set the indicated quota. Partial pathnames are
5146 interpreted relative to the current working directory, which is the default if you omit this argument.</para>
5148 <para>Specify the read/write path to the file or directory, to avoid the failure that results when you attempt to
5149 change a read-only volume. By convention, you indicate the read/write path by placing a period before the cell
5150 name at the pathname's second level (for example, <emphasis role="bold">/afs/.abc.com</emphasis>). For further
5151 discussion of the concept of read/write and read-only paths through the filespace, see <link
5152 linkend="HDRWQ209">The Rules of Mount Point Traversal</link>.</para>
5157 <term><emphasis role="bold">max quota in kbytes</emphasis></term>
5160 <para>Sets the volume's quota, expressed in kilobyte blocks ( <emphasis role="bold">1024</emphasis> equals a
5161 megabyte). A value of <emphasis role="bold">0</emphasis> grants an unlimited quota, but the size of the partition
5162 imposes an absolute limit. You must include the <emphasis role="bold">-max</emphasis> switch if omitting the
5163 dir/file path argument (to set the quota on the volume that houses the current working directory).</para>
5166 </variablelist></para>
5171 <sect2 id="Header_251">
5172 <title>To set maximum quota on one or more volumes</title>
5175 <primary>setting</primary>
5177 <secondary>volume quota</secondary>
5179 <tertiary>on multiple volumes</tertiary>
5183 <primary>volume quota</primary>
5185 <secondary>setting</secondary>
5187 <tertiary>on multiple volumes</tertiary>
5191 <primary>commands</primary>
5193 <secondary>fs setvol</secondary>
5197 <primary>fs commands</primary>
5199 <secondary>setvol</secondary>
5204 <para>Verify that you belong to the <emphasis role="bold">system:administrators</emphasis> group. If necessary, issue the
5205 <emphasis role="bold">pts membership</emphasis> command, which is fully described in <link linkend="HDRWQ587">To display
5206 the members of the system:administrators group</link>. <programlisting>
5207 % <emphasis role="bold">pts membership system:administrators</emphasis>
5208 </programlisting></para>
5212 <para>Issue the <emphasis role="bold">fs setvol</emphasis> command to set the quota on one or more volumes.
5214 % <emphasis role="bold">fs setvol</emphasis> [<<replaceable>dir/file path</replaceable>>+] <emphasis role="bold">-max</emphasis> <<replaceable>disk space quota in 1K units</replaceable>>
5215 </programlisting></para>
5217 <para>where <variablelist>
5219 <term><emphasis role="bold">sv</emphasis></term>
5222 <para>Is an acceptable alias for <emphasis role="bold">setvol</emphasis>.</para>
5227 <term><emphasis role="bold">dir/file path</emphasis></term>
5230 <para>Names one file or directory that resides in each volume for which to set the indicated quota. Partial
5231 pathnames are interpreted relative to the current working directory, which is the default if you omit this
5237 <term><emphasis role="bold">disk space quota in 1K units</emphasis></term>
5240 <para>Sets the maximum quota on each volume, expressed in kilobytes blocks ( <emphasis role="bold">1024</emphasis>
5241 equals a megabyte). A value of <emphasis role="bold">0</emphasis> grants an unlimited quota, but the size of the
5242 partition does impose an absolute limit.</para>
5245 </variablelist></para>
5250 <primary>commands</primary>
5252 <secondary>fs quota</secondary>
5256 <primary>fs commands</primary>
5258 <secondary>quota</secondary>
5262 <primary>displaying</primary>
5264 <secondary>volume quota</secondary>
5266 <tertiary>percent used</tertiary>
5270 <primary>volume quota</primary>
5272 <secondary>displaying</secondary>
5274 <tertiary>percent used</tertiary>
5278 <sect2 id="Header_252">
5279 <title>To display percent quota used</title>
5283 <para>Issue the <emphasis role="bold">fs quota</emphasis> command. <programlisting>
5284 % <emphasis role="bold">fs quota</emphasis> [<<replaceable>dir/file path</replaceable>>+]
5285 </programlisting></para>
5287 <para>where <variablelist>
5289 <term><emphasis role="bold">q</emphasis></term>
5292 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">quota</emphasis>.</para>
5297 <term><emphasis role="bold">dir/file path</emphasis></term>
5300 <para>Names a directory or file in each volume for which to display percent quota used. Partial pathnames are
5301 interpreted relative to the current working directory, which is the default if you omit this argument.</para>
5304 </variablelist></para>
5308 <para>The following example illustrates the output produced by this command:</para>
5311 % <emphasis role="bold">fs quota /afs/abc.com/usr/terry</emphasis>
5316 <primary>commands</primary>
5318 <secondary>fs listquota</secondary>
5322 <primary>fs commands</primary>
5324 <secondary>listquota</secondary>
5328 <primary>displaying</primary>
5330 <secondary>volume quota</secondary>
5332 <tertiary>with volume size</tertiary>
5336 <primary>volume quota</primary>
5338 <secondary>displaying</secondary>
5340 <tertiary>with volume size</tertiary>
5344 <primary>displaying</primary>
5346 <secondary>volume size</secondary>
5350 <primary>volume</primary>
5352 <secondary>size, displaying</secondary>
5356 <sect2 id="Header_253">
5357 <title>To display quota, current size, and other information</title>
5361 <para>Issue the <emphasis role="bold">fs listquota</emphasis> command. <programlisting>
5362 % <emphasis role="bold">fs listquota</emphasis> [<<replaceable>dir/file path</replaceable>>+]
5363 </programlisting></para>
5365 <para>where <variablelist>
5367 <term><emphasis role="bold">lq</emphasis></term>
5370 <para>Is an alias for <emphasis role="bold">listquota</emphasis>.</para>
5375 <term><emphasis role="bold">dir/file path</emphasis></term>
5378 <para>Names a directory or file in each volume for which to display quota along with volume name and current space
5379 usage. Partial pathnames are interpreted relative to the current working directory, which is the default if you
5380 omit this argument.</para>
5383 </variablelist></para>
5387 <para>As illustrated in the following example, the output reports the volume's name, its quota and current size (both in
5388 kilobyte units), the percent quota used, and the percentage of space on the volume's host partition that is used.</para>
5391 % <emphasis role="bold">fs listquota /afs/abc.com/usr/terry</emphasis>
5392 Volume Name Quota Used % Used Partition
5393 user.terry 15000 5071 34% 86%
5397 <primary>displaying</primary>
5399 <secondary>volume quota</secondary>
5401 <tertiary>with volume & partition info</tertiary>
5405 <primary>displaying</primary>
5407 <secondary>volume size</secondary>
5411 <primary>volume quota</primary>
5413 <secondary>displaying</secondary>
5415 <tertiary>with volume &partition info</tertiary>
5419 <primary>displaying</primary>
5421 <secondary>disk partition size</secondary>
5425 <primary>disk partition</primary>
5427 <secondary>displaying size of single</secondary>
5431 <primary>commands</primary>
5433 <secondary>fs examine</secondary>
5437 <primary>fs commands</primary>
5439 <secondary>examine</secondary>
5443 <sect2 id="Header_254">
5444 <title>To display quota, current size, and more partition information</title>
5448 <para>Issue the <emphasis role="bold">fs examine</emphasis> command. <programlisting>
5449 % <emphasis role="bold">fs examine</emphasis> [<<replaceable>dir/file path</replaceable>>+]
5450 </programlisting></para>
5452 <para>where <variablelist>
5454 <term><emphasis role="bold">exa</emphasis></term>
5457 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">examine</emphasis>.</para>
5462 <term><emphasis role="bold">dir/file path</emphasis></term>
5465 <para>Names a directory or file in each volume for which to display quota information and information about the
5466 host partition. Partial pathnames are interpreted relative to the current working directory, which is the default
5467 if you omit this argument.</para>
5470 </variablelist></para>
5474 <para>As illustrated in the following example, the output displays the volume's volume ID number and name, its quota and
5475 current size (both in kilobyte units), and the free and total number of kilobyte blocks on the volume's host partition.</para>
5478 % <emphasis role="bold">fs examine /afs/abc.com/usr/terry</emphasis>
5479 Volume status for vid = 50489902 named user.terry
5480 Current maximum quota is 15000
5481 Current blocks used are 5073
5482 The partition has 46383 blocks available out of 333305
5486 <para>The partition-related statistics in this command's output do not always agree with the corresponding values in the
5487 output of the standard UNIX <emphasis role="bold">df</emphasis> command. The statistics reported by this command can be up
5488 to five minutes old, because the Cache Manager polls the File Server for partition information at that frequency. Also, on
5489 some operating systems, the <emphasis role="bold">df</emphasis> command's report of partition size includes reserved space
5490 not included in this command's calculation, and so is likely to be about 10% larger.</para>
5495 <sect1 id="HDRWQ235">
5496 <title>Removing Volumes and their Mount Points</title>
5499 <primary>volume</primary>
5501 <secondary>removing</secondary>
5503 <tertiary>basic instructions</tertiary>
5507 <primary>removing</primary>
5509 <secondary>mount point</secondary>
5513 <primary>unmounting</primary>
5515 <secondary>volume</secondary>
5519 <primary>mount point</primary>
5521 <secondary>removing</secondary>
5525 <primary>removing</primary>
5527 <secondary>volume</secondary>
5530 <para>To remove a volume from its site and its record from the VLDB, use the <emphasis role="bold">vos remove</emphasis>
5531 command. Use it to remove any of the three types of volumes; the effect depends on the type. <itemizedlist>
5534 <primary>read/write volume</primary>
5536 <secondary>removing</secondary>
5538 <tertiary>effect of</tertiary>
5539 </indexterm> <indexterm>
5540 <primary>backup volume</primary>
5542 <secondary>removed by read/write removal</secondary>
5543 </indexterm> If you indicate the read/write volume by specifying the volume's base name without a <emphasis
5544 role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis> extension, the command removes both the
5545 read/write and associated backup volume from the partition that houses them. You do not need to provide the <emphasis
5546 role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments, because there can be only one
5547 read/write site. The site information is also removed from the VLDB entry, and the site count (reported by the <emphasis
5548 role="bold">vos examine</emphasis> and <emphasis role="bold">vos listvldb</emphasis> commands as <computeroutput>number of
5549 sites</computeroutput>) decrements by one. The read/write and backup volume ID numbers no longer appear in the output from
5550 the <emphasis role="bold">vos examine</emphasis> and <emphasis role="bold">vos listvldb</emphasis> commands, but they are
5551 preserved internally. Read-only sites, if any, are not affected, but cannot be changed unless a read/write site is again
5552 defined. The entire VLDB entry is removed if there are no read-only sites.</para>
5554 <para>If there are no read-only copies left, it is best to remove the volume's mount point to prevent attempts to access
5555 the volume's contents. Do not remove the mount point if copies of the read-only volume remain.</para>
5559 <para>If you indicate a read-only volume by including the <emphasis role="bold">.readonly</emphasis> extension on its
5560 name, it is removed from the partition that houses it, and the corresponding site information is removed from the VLDB
5561 entry. The site count reported by the <emphasis role="bold">vos examine</emphasis> and <emphasis role="bold">vos
5562 listvldb</emphasis> commands as <computeroutput>number of sites</computeroutput> decrements by one for each volume you
5566 <primary>read-only volume</primary>
5568 <secondary>removing</secondary>
5570 <tertiary>effect of</tertiary>
5573 <para>If there is more than one read-only site, you must include the <emphasis role="bold">-server</emphasis> argument
5574 (and optionally <emphasis role="bold">-partition</emphasis> argument) to specify the site from which to remove the volume.
5575 If there is only one read-only site, the volume name is sufficient; if no read/write volume exists in this case, the
5576 entire VLDB entry is removed.</para>
5578 <para>It is not generally appropriate to remove the volume's mount point when removing a read-only volume, especially if
5579 the read/write version of the volume still exists. If the read/write version no longer exists, remove the mount point as
5580 described in Step <link linkend="LIWQ239">5</link>of <link linkend="HDRWQ236">To remove a volume and unmount
5585 <para>If you indicate a backup volume by including the <emphasis role="bold">.backup</emphasis> extension on its name, it
5586 is removed from the partition that houses it and its site information is removed from the VLDB entry. You do not need to
5587 provide the <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments, because
5588 there can be only one backup site. The backup volume ID number no longer appears in the output from the <emphasis
5589 role="bold">vos examine</emphasis> or <emphasis role="bold">vos listvldb</emphasis> command, but is preserved
5592 <para>In the standard configuration, there is a separate mount point for the backup version of a user volume. Remember to
5593 remove the mount point to prevent attempt to access the nonexistent volume's contents.</para>
5595 </itemizedlist></para>
5597 <sect2 id="Header_256">
5598 <title>Other Removal Commands</title>
5601 <primary>volume</primary>
5603 <secondary>removing</secondary>
5605 <tertiary>alternate commands</tertiary>
5608 <para>The <emphasis role="bold">vos remove</emphasis> command is almost always the appropriate way to remove a volume, because
5609 it automatically removes a volume's VLDB entry and both the volume header and all data from the partition. If either the VLDB
5610 entry or volume header does not exist, it is sometimes necessary to use other commands that remove only the remaining element.
5611 Do not use these commands in the normal case when both the VLDB entry and the volume header exist, because by definition they
5612 create discrepancies between them. For details on the commands' syntax, see their reference pages in the <emphasis> OpenAFS
5613 Administration Reference</emphasis>.</para>
5616 <primary>commands</primary>
5618 <secondary>vos zap</secondary>
5622 <primary>vos commands</primary>
5624 <secondary>zap</secondary>
5627 <para>The <emphasis role="bold">vos zap</emphasis> command removes a volume from its site by removing the volume header and
5628 volume data for which a VLDB entry no longer exists. You can tell a VLDB entry is missing if the <emphasis role="bold">vos
5629 listvol</emphasis> command displays the volume header but the <emphasis role="bold">vos examine</emphasis> or <emphasis
5630 role="bold">vos listvldb</emphasis> command cannot locate the VLDB entry. You must run this command to correct the
5631 discrepancy, because the <emphasis role="bold">vos syncvldb</emphasis> and <emphasis role="bold">vos syncserv</emphasis>
5632 commands never remove volume headers.</para>
5635 <primary>commands</primary>
5637 <secondary>vos remsite</secondary>
5641 <primary>vos commands</primary>
5643 <secondary>remsite</secondary>
5646 <para>The <emphasis role="bold">vos remsite</emphasis> command removes a read-only site definition from the VLDB without
5647 affecting the volume on the file server machine. Use this command when you have mistakenly issued the <emphasis
5648 role="bold">vos addsite</emphasis> command to define a read-only site, but have not yet issued the <emphasis role="bold">vos
5649 release</emphasis> command to release the volume to the site. If you have actually released a volume to the site, use the
5650 <emphasis role="bold">vos remove</emphasis> command instead.</para>
5653 <primary>commands</primary>
5655 <secondary>vos delentry</secondary>
5659 <primary>vos commands</primary>
5661 <secondary>delentry</secondary>
5664 <para>The <emphasis role="bold">vos delentry</emphasis> command removes the entire VLDB entry that mentions the volume you
5665 specify. If versions of the volume actually exist on file server machines, they are not affected. This command is useful if
5666 you know for certain that a volume removal was not recorded in the VLDB (perhaps you used the <emphasis role="bold">vos
5667 zap</emphasis> command during an emergency), and do not want to take the time to resynchronize the entire VLDB with the
5668 <emphasis role="bold">vos syncvldb</emphasis> and <emphasis role="bold">vos syncserv</emphasis> commands.</para>
5671 <sect2 id="HDRWQ236">
5672 <title>To remove a volume and unmount it</title>
5675 <primary>read/write volume</primary>
5677 <secondary>removing</secondary>
5679 <tertiary>instructions</tertiary>
5684 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
5685 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
5686 display the users in the UserList file</link>. <programlisting>
5687 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
5688 </programlisting></para>
5692 <para>If removing the volume's mount point, verify that you have the <emphasis role="bold">d</emphasis>( <emphasis
5693 role="bold">delete</emphasis>) permission on its parent directory's ACL. If necessary, issue the <emphasis role="bold">fs
5694 listacl</emphasis> command, which is fully described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
5695 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
5696 </programlisting></para>
5698 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
5699 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
5700 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
5701 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
5705 <anchor id="LIWQ237" />
5707 <para><emphasis role="bold">(Optional)</emphasis> Dump the volume to a file or to tape, in case you want to restore it
5708 later. To copy the volume's contents to a file, use the <emphasis role="bold">vos dump</emphasis> command as instructed in
5709 <link linkend="HDRWQ240">Dumping and Restoring Volumes</link>. You can then copy the file to tape using a third-party
5710 backup utility or an archiving utility such as the UNIX <emphasis role="bold">tar</emphasis> command.</para>
5712 <para>Alternatively, use the AFS Backup System to create a tape copy. In this case, it can be convenient to create a
5713 temporary volume set that includes only the volume of interest. Temporary volume sets are not recorded in the Backup
5714 Database, and so do not clutter database with records for volume sets that you use only once. For instructions, see <link
5715 linkend="HDRWQ301">To create a dump</link>.</para>
5718 <primary>commands</primary>
5720 <secondary>vos remove</secondary>
5722 <tertiary>basic instructions</tertiary>
5726 <primary>vos commands</primary>
5728 <secondary>remove</secondary>
5730 <tertiary>basic instructions</tertiary>
5735 <para><anchor id="LIWQ238" />Issue the <emphasis role="bold">vos remove</emphasis> command to remove the volume. If
5736 removing a read-only volume from multiple sites, repeat the command for each one. <programlisting>
5737 % <emphasis role="bold">vos remove</emphasis> [<emphasis role="bold">-server</emphasis> machine name>] [<emphasis role="bold">-partition</emphasis> <<replaceable>partition name</replaceable>>] \
5738 <emphasis role="bold">-id</emphasis> <<replaceable>volume name or ID</replaceable>>
5739 </programlisting></para>
5741 <para>where <variablelist>
5743 <term><emphasis role="bold">remo</emphasis></term>
5746 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">remove</emphasis>.</para>
5751 <term><emphasis role="bold">-server</emphasis></term>
5754 <para>Specifies the file server machine on which the volume resides. It is necessary only when the <emphasis
5755 role="bold">-id</emphasis> argument names a read-only volume that exists at multiple sites.</para>
5760 <term><emphasis role="bold">-partition</emphasis></term>
5763 <para>Specifies the partition on machine name where the volume resides. It is necessary only when the <emphasis
5764 role="bold">-id</emphasis> argument names a read-only volume that exists at multiple sites. Provide the <emphasis
5765 role="bold">-server</emphasis> argument along with this one.</para>
5770 <term><emphasis role="bold">-id</emphasis></term>
5773 <para>Identifies the volume to remove, either by its complete name or volume ID number. If identifying a read-only
5774 or backup volume by name, include the appropriate extension ( <emphasis role="bold">.readonly</emphasis> or
5775 <emphasis role="bold">.backup</emphasis>).</para>
5778 </variablelist></para>
5781 <primary>commands</primary>
5783 <secondary>fs rmmount</secondary>
5787 <primary>fs commands</primary>
5789 <secondary>rmmount</secondary>
5791 <tertiary>when removing volume</tertiary>
5796 <para><anchor id="LIWQ239" />If you are removing the last existing version of the volume, issue the <emphasis
5797 role="bold">fs rmmount</emphasis> command remove the corresponding mount point. Complete instructions appear in <link
5798 linkend="HDRWQ236">To remove a volume and unmount it</link>.</para>
5800 <para>If you are removing a backup volume that is mounted in the conventional way (at a subdirectory of its read/write
5801 volume's root directory), then removing the source volume's mount point in this step is sufficient to remove the backup
5802 volume's mount point. If you mounted the backup at a completely separate directory, you need to repeat this step for the
5803 backup volume's mount point.</para>
5806 % <emphasis role="bold">fs rmmount</emphasis> <<replaceable>directory</replaceable>>
5811 <para><emphasis role="bold">(Optional)</emphasis> If you created a dump file in Step <link linkend="LIWQ237">3</link>,
5812 transfer it to tape. The preferred method is to use the AFS Backup System, which is described in <link
5813 linkend="HDRWQ248">Configuring the AFS Backup System</link>and <link linkend="HDRWQ283">Backing Up and Restoring AFS
5820 <sect1 id="HDRWQ240">
5821 <title>Dumping and Restoring Volumes</title>
5824 <primary>dumping</primary>
5826 <secondary>volumes</secondary>
5828 <tertiary>without using AFS Backup System</tertiary>
5832 <primary>volume</primary>
5834 <secondary>dumping without AFS Backup System</secondary>
5837 <para><emphasis>Dumping</emphasis> a volume with the <emphasis role="bold">vos dump</emphasis> command converts its contents
5838 into ASCII format and writes them to the file you specify. The <emphasis role="bold">vos restore</emphasis> command places a
5839 dump file's contents into a volume after converting them into the volume format appropriate for the indicated file server
5842 <sect2 id="Header_259">
5843 <title>About Dumping Volumes</title>
5846 <primary>read/write volume</primary>
5848 <secondary>dumping</secondary>
5852 <primary>read-only volume</primary>
5854 <secondary>dumping</secondary>
5858 <primary>backup volume</primary>
5860 <secondary>dumping</secondary>
5864 <primary>availability of data</primary>
5866 <secondary>interrupted by dumping</secondary>
5870 <primary>data</primary>
5872 <secondary>availability interrupted by dumping</secondary>
5876 <primary>dumping</primary>
5878 <secondary>volumes</secondary>
5880 <tertiary>reasons</tertiary>
5883 <para>Dumping a volume can be useful in several situations, including the following: <itemizedlist>
5885 <para>You want to back it up to tape, perhaps by using a third-party backup utility. To facilitate this type of backup
5886 operation, the <emphasis role="bold">vos dump</emphasis> command can write to a named pipe. To learn about using the AFS
5887 Backup System instead, see <link linkend="HDRWQ248">Configuring the AFS Backup System</link>and <link
5888 linkend="HDRWQ283">Backing Up and Restoring AFS Data</link>.</para>
5892 <para>You are removing the volume from your cell (perhaps because its owner is leaving your cell). The <emphasis
5893 role="bold">vos dump</emphasis> command enables you to create a copy for safekeeping without incurring the overhead of
5894 the Backup System. For complete instructions on removing a volume, see <link linkend="HDRWQ235">Removing Volumes and
5895 their Mount Points</link>.</para>
5899 <para>You want to create a copy of the volume for safekeeping on a non-AFS server partition, perhaps while you move the
5900 actual volume to another machine or perform maintenance tasks on the partition that houses the volume.</para>
5904 <para>You need to replace a corrupted read/write volume. If an uncorrupted read-only or backup version of the volume
5905 exists, dump it and restore the data into the read/write volume, overwriting the corrupted contents.</para>
5909 <para>You want to copy or transfer the contents of the volume to another cell. You cannot use the <emphasis
5910 role="bold">vos move</emphasis> command, because AFS supports volume moves only between file server machines that belong
5911 to the same cell.</para>
5915 <para>You want to have another read/write copy of the volume's contents. The second volume must have a different name
5916 than the original one. If you want the contents of the two volumes to remain identical, you must update them both
5917 manually. AFS provides no facility for keeping read/write volumes synchronized in this way.</para>
5921 <para>You want a copy of only the files and directories in the volume with modification time stamps after a certain
5922 date. The <emphasis role="bold">vos dump</emphasis> command can create an incremental dump file as described in Step
5923 <link linkend="LIWQ241">3</link>of the following instructions.</para>
5925 </itemizedlist></para>
5928 <primary>full dump</primary>
5930 <secondary>creating using vos command</secondary>
5934 <primary>incremental dump</primary>
5936 <secondary>creating using vos command</secondary>
5940 <primary>dumping</primary>
5942 <secondary>volumes</secondary>
5944 <tertiary>using vos command</tertiary>
5947 <para>You can use the <emphasis role="bold">vos dump</emphasis> command to create a <emphasis>full dump</emphasis>, which
5948 contains the complete contents of the volume at the time you issue the command, or an <emphasis>incremental dump</emphasis>,
5949 which contains only those files and directories with modification timestamps (as displayed by the <emphasis role="bold">ls
5950 -l</emphasis> command) that are later than a date and time you specify. See Step <link linkend="LIWQ241">3</link>of the
5951 following instructions.</para>
5953 <para>Dumping a volume does not change its VLDB entry or permanently affect its status on the file server machine, but the
5954 volume's contents are inaccessible during the dump operation. To avoid interrupting access to the volume, it is generally best
5955 to dump the volume's backup version, just after using the <emphasis role="bold">vos backup</emphasis> or <emphasis
5956 role="bold">vos backupsys</emphasis> command to create a new backup version.</para>
5958 <para>If you do not provide a filename into which to write the dump, the <emphasis role="bold">vos dump</emphasis> command
5959 directs the output to the standard output stream. You can pipe it directly to the <emphasis role="bold">vos restore</emphasis>
5960 command if you wish.</para>
5962 <para>Because a volume dump file is in ASCII format, you can read its contents using a text editor or a command such as the
5963 <emphasis role="bold">cat</emphasis> command. However, dump files sometimes contain special characters that do not have
5964 alphanumeric correlates, which can cause problems for some display programs.</para>
5966 <para>By default, the <emphasis role="bold">vos</emphasis> command interpreter consults the Volume Location Database (VLDB) to
5967 learn the volume's location, so the <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis>
5968 arguments are not required. If the <emphasis role="bold">-id</emphasis> argument identifies a read-only volume that resides at
5969 multiple sites, then the command dumps the version from just one of them (normally, the one listed first in the volume's VLDB
5970 entry as reported by the <emphasis role="bold">vos examine</emphasis> or <emphasis role="bold">vos listvldb</emphasis>
5971 command). To dump the read-only volume from a particular site, use the <emphasis role="bold">-server</emphasis> and <emphasis
5972 role="bold">-partition</emphasis> arguments to specify the site. To bypass the VLDB lookup entirely, provide a volume ID
5973 number (rather than a volume name) as the value for the <emphasis role="bold">-id</emphasis> argument, along with the
5974 <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments. This makes it possible to
5975 dump a volume for which there is no VLDB entry.</para>
5978 <primary>commands</primary>
5980 <secondary>vos dump</secondary>
5984 <primary>vos commands</primary>
5986 <secondary>dump</secondary>
5990 <sect2 id="Header_260">
5991 <title>To dump a volume</title>
5995 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
5996 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
5997 display the users in the UserList file</link>. <programlisting>
5998 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
5999 </programlisting></para>
6003 <para>Verify that you have the permissions necessary to create the dump file. If placing it in AFS, you must have the
6004 <emphasis role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>) permission on the ACL of the file's
6005 directory. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully described in <link
6006 linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
6007 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
6008 </programlisting></para>
6010 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
6011 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
6012 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
6013 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
6017 <para><anchor id="LIWQ241" />Issue the <emphasis role="bold">vos dump</emphasis> command to dump the volume.
6019 % <emphasis role="bold">vos dump -id</emphasis> <<replaceable>volume name or ID</replaceable>> [<emphasis role="bold">-time</emphasis> <<replaceable>dump from time</replaceable>>] [<emphasis
6020 role="bold">-file</emphasis> <<replaceable>arg</replaceable>>] [<emphasis role="bold">-server</emphasis> <<replaceable>server</replaceable>>] [<emphasis
6021 role="bold">-partition</emphasis> <<replaceable>partition</replaceable>>]
6022 </programlisting></para>
6024 <para>where <variablelist>
6026 <term><emphasis role="bold">-id</emphasis></term>
6029 <para>Identifies the volume to be dumped by its complete name or volume ID number. If you want to dump the
6030 read-only or backup version, specify its volume ID number or add the appropriate extension ( <emphasis
6031 role="bold">.readonly</emphasis> or <emphasis role="bold">.backup</emphasis>) to the name.</para>
6033 <para>To bypass the normal VLDB lookup of the volume's location, provide the volume ID number and combine this
6034 argument with the <emphasis role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis>
6040 <term><emphasis role="bold">-time</emphasis></term>
6043 <para>Specifies whether the dump is full or incremental. Omit this argument to create a full dump, or provide one
6044 of three acceptable values: <itemizedlist>
6046 <para>The value <emphasis role="bold">0</emphasis>(zero) to create a full dump.</para>
6050 <para>A date in the format mm <emphasis role="bold">/</emphasis> dd <emphasis role="bold">/</emphasis> yyyy
6051 (month, day and year) to create an incremental dump that includes only files and directories with
6052 modification timestamps later than midnight (12:00 a.m.) on the indicated date. Valid values for the year
6053 range from <emphasis role="bold">1970</emphasis> to <emphasis role="bold">2037</emphasis>; higher values are
6054 not valid because the latest possible date in the standard UNIX representation is in 2038. The command
6055 interpreter automatically reduces later dates to the maximum value. An example is <emphasis
6056 role="bold">01/13/1999</emphasis>.</para>
6060 <para>A date and time in the format <emphasis role="bold">"</emphasis> mm <emphasis role="bold">/</emphasis>
6061 dd <emphasis role="bold">/</emphasis> yyyy hh <emphasis role="bold">:</emphasis> MM <emphasis
6062 role="bold">"</emphasis> to create an incremental dump that includes only files and directories with
6063 modification timestamps later than the specified date and time. The date format is the same as for a date
6064 alone. Express the time as hours and minutes (hh:MM) in 24-hour format (for example, <emphasis
6065 role="bold">20:30</emphasis> is 8:30 p.m.). Surround the entire expression with double quotes (" ") because
6066 it contains a space. An example is <emphasis role="bold">"01/13/1999 22:30"</emphasis>.</para>
6068 </itemizedlist></para>
6073 <term><emphasis role="bold">-file</emphasis></term>
6076 <para>Specifies the pathname of the file to which to write the dump. The file can be in AFS, but not in the volume
6077 being dumped. A partial pathname is interpreted relative to the current working directory. Omit this argument to
6078 direct the dump to the standard output stream.</para>
6083 <term><emphasis role="bold">-server</emphasis></term>
6086 <para>Specifies the file server machine on which the volume resides. Provide the <emphasis
6087 role="bold">-partition</emphasis> argument along with this one.</para>
6092 <term><emphasis role="bold">-partition</emphasis></term>
6095 <para>Specifies the partition on which the volume resides. Provide the <emphasis role="bold">-server</emphasis>
6096 argument along with this one.</para>
6099 </variablelist></para>
6104 <sect2 id="Header_261">
6105 <title>About Restoring Volumes</title>
6108 <primary>volume</primary>
6110 <secondary>restoring</secondary>
6112 <tertiary>with vos restore command</tertiary>
6116 <primary>restoring</primary>
6118 <secondary>volumes without using AFS Backup System</secondary>
6121 <para>Although you can dump any of the three types of volumes (read/write, read-only, or backup), you can restore a dump file
6122 to the file system only as a read/write volume, using the <emphasis role="bold">vos restore</emphasis> command. The command
6123 automatically translates the dump file's contents from ASCII back into the volume format appropriate for the file server
6124 machine that stores the restored version. As with the <emphasis role="bold">vos dump</emphasis> command, you can restore a
6125 dump file via a named pipe, which facilitates interoperation with third-party backup utilities.</para>
6127 <para>You can restore the contents of a dump file in one of two basic ways. In either case, you must restore a full dump of
6128 the volume before restoring any incremental dumps. Any incremental dumps that you then restore must have been created after
6129 the full dump. If there is more than one incremental dump, you must restore them in the order they were created. <itemizedlist>
6131 <para>You can restore volume data into a brand new volume with a new name and at a location that you specify. See <link
6132 linkend="HDRWQ242">To restore a dump into a new volume and mount it</link>.</para>
6134 <para>You can assign a volume ID number as you restore the volume, though it is best to have the Volume Server allocate
6135 a volume number automatically. The most common reason for specifying the volume ID is that a volume's VLDB entry has
6136 disappeared for some reason, but you know the former read/write volume ID number and want to reuse it.</para>
6140 <para>You can restore volume data into an existing volume (usually the one that was previously dumped), overwriting its
6141 current contents. This is convenient if the current contents are corrupted or otherwise incorrect, because it allows you
6142 to replace them with a coherent version from the past or from one of the volume's clones. See <link
6143 linkend="HDRWQ244">To restore a dump file, overwriting an existing volume</link>.</para>
6145 <para>Provide the <emphasis role="bold">-overwrite</emphasis> argument to preconfirm that you wish to overwrite the
6146 volume's contents, and to specify whether you are restoring a full or incremental dump. If you omit the <emphasis
6147 role="bold">-overwrite</emphasis> argument, the Volume Server generates the following prompt to confirm that you want to
6148 overwrite the existing volume with either a full ( <emphasis role="bold">f</emphasis>) or incremental ( <emphasis
6149 role="bold">i</emphasis>) dump:</para>
6152 Do you want to do a full/incremental restore or abort? [fia](a):
6155 <para>If you pipe in the dump file via the standard input stream instead of using the <emphasis
6156 role="bold">-file</emphasis> argument to name it, you must include the <emphasis role="bold">-overwrite</emphasis>
6157 argument because there is nowhere for the Volume Server to display the prompt in this case.</para>
6159 <para>You can move the volume to a new site as you overwrite it with a full dump, by using the <emphasis
6160 role="bold">-server</emphasis> and <emphasis role="bold">-partition</emphasis> arguments to specify the new site. You
6161 cannot move the volume when restoring an incremental dump.</para>
6163 </itemizedlist></para>
6165 <para>The <emphasis role="bold">vos restore</emphasis> command sets the restored volume's creation date in the volume header
6166 to the time of the restore operation, as reported in the <computeroutput>Creation</computeroutput> field in the output from
6167 the <emphasis role="bold">vos examine</emphasis> and <emphasis role="bold">vos listvol</emphasis> commands.</para>
6170 <primary>commands</primary>
6172 <secondary>vos restore</secondary>
6176 <primary>vos commands</primary>
6178 <secondary>restore</secondary>
6180 <tertiary>to create new volume</tertiary>
6184 <sect2 id="HDRWQ242">
6185 <title>To restore a dump into a new volume and mount it</title>
6189 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
6190 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
6191 display the users in the UserList file</link>. <programlisting>
6192 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
6193 </programlisting></para>
6197 <para>Verify that you have permissions needed to read the dump file and to mount the new volume. If the dump file resides
6198 in AFS, you need the <emphasis role="bold">r</emphasis>( <emphasis role="bold">read</emphasis>) permission on the ACL of
6199 its directory. You need the <emphasis role="bold">i</emphasis>( <emphasis role="bold">insert</emphasis>) and <emphasis
6200 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) permissions on the ACL of the directory where you
6201 are mounting the new volume. If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully
6202 described in <link linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
6203 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
6204 </programlisting></para>
6206 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
6207 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
6208 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
6209 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
6213 <para>Select a site (disk partition on a file server machine) for the new volume. If your cell groups different types of
6214 volumes onto different file server machines, that can guide your decision. It often makes sense to put the volume on the
6215 emptiest partition that meets your other criteria. To display how much space is available on a file server machine's
6216 partitions, use the <emphasis role="bold">vos partinfo</emphasis> command, which is described fully in <link
6217 linkend="HDRWQ185">Creating Read/write Volumes</link>. <programlisting>
6218 % <emphasis role="bold">vos partinfo</emphasis> <<replaceable>machine name</replaceable>> [<<replaceable>partition name</replaceable>>]
6219 </programlisting></para>
6223 <para><anchor id="LIWQ243" />Issue the <emphasis role="bold">vos restore</emphasis> command to create a new volume and
6224 restore the dump file into it. Type it on a single line; it appears on multiple lines here only for legibility.
6226 % <emphasis role="bold">vos restore</emphasis> <<replaceable>machine name</replaceable>> <<replaceable>partition name</replaceable>> \
6227 <<replaceable>name of volume to be restored</replaceable>> \
6228 [<emphasis role="bold">-file</emphasis> <<replaceable>dump file</replaceable>>] [<emphasis role="bold">-id</emphasis> <<replaceable>volume ID</replaceable>>]
6229 </programlisting></para>
6231 <para>where <variablelist>
6233 <term><emphasis role="bold">res</emphasis></term>
6236 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">restore</emphasis>.</para>
6241 <term><emphasis role="bold">machine name</emphasis></term>
6244 <para>Names the file server machine on which to create the new volume.</para>
6249 <term><emphasis role="bold">partition name</emphasis></term>
6252 <para>Names the partition on which to create the new volume.</para>
6257 <term><emphasis role="bold">name of volume to be restored</emphasis></term>
6260 <para>Names the new read/write volume, which must not already have a VLDB entry. It can be up to 22 characters in
6266 <term><emphasis role="bold">-file</emphasis></term>
6269 <para>Is the dump file to restore. Partial pathnames are interpreted with respect to the current working
6270 directory. Omit this argument if using a pipe to read in the dump file from the standard input stream.</para>
6275 <term><emphasis role="bold">-volume</emphasis></term>
6278 <para>Specifies the new volume's ID number. It is appropriate only if you are restoring a volume that no longer
6279 exists and want to use the volume ID number it had previously.</para>
6282 </variablelist></para>
6285 <primary>commands</primary>
6287 <secondary>fs mkmount</secondary>
6289 <tertiary>when restoring volume</tertiary>
6293 <primary>fs commands</primary>
6295 <secondary>mkmount</secondary>
6297 <tertiary>when restoring volume</tertiary>
6302 <para>Issue the <emphasis role="bold">fs mkmount</emphasis> command to mount the new volume, making its contents
6303 accessible. Complete instructions appear in <link linkend="HDRWQ212">To create a regular or read/write mount point</link>.
6305 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>>
6306 </programlisting></para>
6310 <para><emphasis role="bold">(Optional)</emphasis> Issue the <emphasis role="bold">fs lsmount</emphasis> command to verify
6311 that the mount point refers to the correct volume. Complete instructions appear in <link linkend="HDRWQ211">To display a
6312 mount point</link>. <programlisting>
6313 % <emphasis role="bold">fs lsmount</emphasis> <<replaceable>directory</replaceable>>
6314 </programlisting></para>
6319 <primary>commands</primary>
6321 <secondary>vos restore</secondary>
6325 <primary>vos commands</primary>
6327 <secondary>restore</secondary>
6329 <tertiary>to overwrite volume</tertiary>
6333 <sect2 id="HDRWQ244">
6334 <title>To restore a dump file, overwriting an existing volume</title>
6338 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
6339 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
6340 display the users in the UserList file</link>. <programlisting>
6341 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
6342 </programlisting></para>
6346 <para>Verify that you have permissions needed to read the dump file. If it resides in AFS, you need the <emphasis
6347 role="bold">r</emphasis>( <emphasis role="bold">read</emphasis>) permission on the ACL of its directory. If necessary,
6348 issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully described in <link
6349 linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
6350 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
6351 </programlisting></para>
6353 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
6354 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
6355 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
6356 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
6360 <para>Restore the contents of the dump file into a read/write volume, overwriting the current contents. The volume retains
6361 its current volume ID number. Type it on a single line; it appears on multiple lines here only for legibility.
6363 % <emphasis role="bold">vos restore</emphasis> <<replaceable>machine name</replaceable>> <<replaceable>partition name</replaceable>> \
6364 <<replaceable>name of volume to be restored</replaceable>> \
6365 [<emphasis role="bold">-file</emphasis> <<replaceable>dump file</replaceable>>] [<emphasis role="bold">-id</emphasis> <<replaceable>volume ID</replaceable>>]
6366 </programlisting></para>
6368 <para>where <variablelist>
6370 <term><emphasis role="bold">res</emphasis></term>
6373 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">restore</emphasis>.</para>
6378 <term><emphasis role="bold">machine name</emphasis></term>
6381 <para>Names the file server machine where the volume already exists, or the machine to which to move it. In the
6382 latter case, the value for the <emphasis role="bold">-overwrite</emphasis> argument must be <emphasis
6383 role="bold">full</emphasis>.</para>
6388 <term><emphasis role="bold">partition name</emphasis></term>
6391 <para>Names the partition where the volume already exists, or the partition to which to move it. In the latter
6392 case, the value for the <emphasis role="bold">-overwrite</emphasis> argument must be <emphasis
6393 role="bold">full</emphasis>.</para>
6398 <term><emphasis role="bold">name of volume to be restored</emphasis></term>
6401 <para>Names the read/write volume to overwrite with the contents of the dump file.</para>
6406 <term><emphasis role="bold">-file</emphasis></term>
6409 <para>Is the dump file to restore. Partial pathnames are interpreted with respect to the current working
6410 directory. Omit this argument if using a pipe to read in the dump file from the standard input stream; in this
6411 case, you must provide the <emphasis role="bold">-overwrite</emphasis> argument.</para>
6416 <term><emphasis role="bold">-overwrite</emphasis></term>
6419 <para>Preconfirms that you want to overwrite the existing volume and specifies which type of dump file you are
6420 restoring. Provide one of the following values: <itemizedlist>
6422 <para><emphasis role="bold">f</emphasis> or <emphasis role="bold">full</emphasis> if restoring a full dump
6427 <para><emphasis role="bold">i</emphasis> or <emphasis role="bold">incremental</emphasis> if restoring an
6428 incremental dump file. This value is not acceptable if you are moving the volume while restoring it.</para>
6432 <para><emphasis role="bold">a</emphasis> to terminate the restore operation</para>
6434 </itemizedlist></para>
6437 </variablelist></para>
6441 <para>If the volume is replicated, issue the <emphasis role="bold">vos release</emphasis> command to release the newly
6442 restored contents to read-only sites. Complete instructions appear in <link linkend="HDRWQ192">Replicating Volumes
6443 (Creating Read-only Volumes)</link>. <programlisting>
6444 % <emphasis role="bold">vos release</emphasis> <<replaceable>volume name or ID</replaceable>>
6445 </programlisting></para>
6449 <para>Issue the <emphasis role="bold">vos backup</emphasis> command to create a new backup version of the volume. Complete
6450 instructions appear in <link linkend="HDRWQ201">Creating Backup Volumes</link>. <programlisting>
6451 % <emphasis role="bold">vos backup</emphasis> <<replaceable>volume name or ID</replaceable>>
6452 </programlisting></para>
6458 <sect1 id="HDRWQ245">
6459 <title>Renaming Volumes</title>
6462 <primary>renaming</primary>
6464 <secondary>volume</secondary>
6468 <primary>volume</primary>
6470 <secondary>renaming</secondary>
6474 <primary>changing</primary>
6476 <secondary>volume name</secondary>
6480 <primary>volume name</primary>
6482 <secondary>changing</secondary>
6484 <tertiary>basic instructions</tertiary>
6487 <para>You can use the <emphasis role="bold">vos rename</emphasis> command to rename a volume. For example, it is appropriate to
6488 rename a user's home volume if you use the <emphasis role="bold">user.</emphasis> username convention for user volume names and
6489 you change the username. (For complete instructions for changing usernames, see <link linkend="HDRWQ518">Changing
6490 Usernames</link>.)</para>
6493 <primary>read/write volume</primary>
6495 <secondary>changing name of</secondary>
6499 <primary>read-only volume</primary>
6501 <secondary>changing name of</secondary>
6505 <primary>backup volume</primary>
6507 <secondary>changing name of</secondary>
6510 <para>The <emphasis role="bold">vos rename</emphasis> command accepts only read/write volume names, but automatically changes
6511 the names of the associated read-only and backup volumes. As directed in the following instructions, you need to replace the
6512 volume's current mount point with a new one that reflects the name change.</para>
6515 <primary>commands</primary>
6517 <secondary>vos rename</secondary>
6519 <tertiary>basic instructions</tertiary>
6523 <primary>vos commands</primary>
6525 <secondary>rename</secondary>
6527 <tertiary>basic instructions</tertiary>
6530 <sect2 id="HDRWQ246">
6531 <title>To rename a volume</title>
6535 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
6536 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
6537 display the users in the UserList file</link>. <programlisting>
6538 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
6539 </programlisting></para>
6543 <para>Verify that you have the <emphasis role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>), <emphasis
6544 role="bold">d</emphasis>( <emphasis role="bold">delete</emphasis>), and <emphasis role="bold">i</emphasis>( <emphasis
6545 role="bold">insert</emphasis>) access permissions for the directory in which you are replacing the volume's mount point.
6546 If necessary, issue the <emphasis role="bold">fs listacl</emphasis> command, which is fully described in <link
6547 linkend="HDRWQ572">Displaying ACLs</link>. <programlisting>
6548 % <emphasis role="bold">fs listacl</emphasis> [<<replaceable>dir/file path</replaceable>>]
6549 </programlisting></para>
6551 <para>Members of the <emphasis role="bold">system:administrators</emphasis> group always implicitly have the <emphasis
6552 role="bold">a</emphasis>( <emphasis role="bold">administer</emphasis>) and by default also the <emphasis
6553 role="bold">l</emphasis>( <emphasis role="bold">lookup</emphasis>) permission on every ACL and can use the <emphasis
6554 role="bold">fs setacl</emphasis> command to grant other rights as necessary.</para>
6558 <para><anchor id="LIVOL-REN" />Issue the <emphasis role="bold">vos rename</emphasis> command to rename the volume.
6560 % <emphasis role="bold">vos rename</emphasis> <<replaceable>old volume name</replaceable>> <<replaceable>new volume name</replaceable>>
6561 </programlisting></para>
6563 <para>where <variablelist>
6565 <term><emphasis role="bold">ren</emphasis></term>
6568 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">rename</emphasis>.</para>
6573 <term><emphasis role="bold">old volume name</emphasis></term>
6576 <para>Is the current name of a read/write volume.</para>
6581 <term><emphasis role="bold">new volume name</emphasis></term>
6584 <para>Is the new name for the volume. It cannot be more than 22 characters in length.</para>
6587 </variablelist></para>
6589 <para>If there is no Volume Location Database (VLDB) entry for the specified current volume name, the command fails with
6590 the following error message:</para>
6593 vos: Could not find entry for volume old_volume_name.
6597 <primary>commands</primary>
6599 <secondary>fs rmmount</secondary>
6603 <primary>fs commands</primary>
6605 <secondary>rmmount</secondary>
6607 <tertiary>when renaming volume</tertiary>
6612 <para>Issue the <emphasis role="bold">fs rmmount</emphasis> command to remove the mount point that refers to the volume's
6613 old name. Complete instructions appear in <link linkend="HDRWQ215">To remove a mount point</link>. <programlisting>
6614 % <emphasis role="bold">fs rmmount</emphasis> <<replaceable>directory</replaceable>>
6615 </programlisting></para>
6618 <primary>commands</primary>
6620 <secondary>fs mkmount</secondary>
6622 <tertiary>when renaming volume</tertiary>
6626 <primary>fs commands</primary>
6628 <secondary>mkmount</secondary>
6630 <tertiary>when renaming volume</tertiary>
6635 <para>Issue the <emphasis role="bold">fs mkmount</emphasis> to create a mount point that indicates the volume's new name.
6636 Complete instructions appear in <link linkend="HDRWQ212">To create a regular or read/write mount point</link>.
6638 % <emphasis role="bold">fs mkmount</emphasis> <<replaceable>directory</replaceable>> <<replaceable>volume name</replaceable>> [<emphasis
6639 role="bold">-rw</emphasis>]
6640 </programlisting></para>
6646 <sect1 id="HDRWQ247">
6647 <title>Unlocking and Locking VLDB Entries</title>
6649 <para>As detailed in <link linkend="HDRWQ227">Synchronizing the VLDB and Volume Headers</link>, The Volume Location (VL) Server
6650 locks the Volume Location Database (VLDB) entry for a volume before the Volume Server executes any operation on it. No other
6651 operation can affect a volume with a locked VLDB entry, so the lock prevents the inconsistency or corruption that can result
6652 from multiple simultaneous operations on a volume.</para>
6655 <primary>locking</primary>
6657 <secondary>VLDB entry</secondary>
6661 <primary>VLDB</primary>
6663 <secondary>locking/unlocking entry</secondary>
6667 <primary>entry in VLDB</primary>
6669 <secondary>locking/unlocking</secondary>
6673 <primary>unlocking</primary>
6675 <secondary>VLDB entry</secondary>
6679 <primary>locked VLDB entry</primary>
6681 <secondary>unlocking</secondary>
6684 <para>To verify that a VLDB entry is locked, issue the <emphasis role="bold">vos listvldb</emphasis> command as described in
6685 <link linkend="HDRWQ218">To display VLDB entries</link>. The command has a <emphasis role="bold">-locked</emphasis> flag that
6686 displays locked entries only. If the VLDB entry is locked, the string <computeroutput>Volume is currently
6687 LOCKED</computeroutput> appears on the last line of the volume's output.</para>
6689 <para>To lock a VLDB entry yourself, use the <emphasis role="bold">vos lock</emphasis> command. This is useful when you suspect
6690 something is wrong with a volume and you want to prevent any changes to it while you are investigating the problem.</para>
6692 <para>To unlock a locked VLDB entry, issue the <emphasis role="bold">vos unlock</emphasis> command, which unlocks a single VLDB
6693 entry, or the <emphasis role="bold">vos unlockvldb</emphasis> command, which unlocks potentially many entries. This is useful
6694 when a volume operation fails prematurely and leaves a VLDB entry locked, preventing you from acting to correct the problems
6695 resulting from the failure.</para>
6698 <primary>commands</primary>
6700 <secondary>vos lock</secondary>
6704 <primary>vos commands</primary>
6706 <secondary>lock</secondary>
6709 <sect2 id="Header_267">
6710 <title>To lock a VLDB entry</title>
6714 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
6715 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
6716 display the users in the UserList file</link>. <programlisting>
6717 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
6718 </programlisting></para>
6722 <para>Issue the <emphasis role="bold">vos lock</emphasis> to lock the entry. <programlisting>
6723 % <emphasis role="bold">vos lock</emphasis> <<replaceable>volume name or ID</replaceable>>
6724 </programlisting></para>
6726 <para>where <variablelist>
6728 <term><emphasis role="bold">lo</emphasis></term>
6731 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">lock</emphasis>.</para>
6736 <term><emphasis role="bold">volume name or ID</emphasis></term>
6739 <para>Identifies the volume to be locked, either by its complete name or volume ID number. It can be any of the
6740 three versions of the volume.</para>
6743 </variablelist></para>
6748 <primary>commands</primary>
6750 <secondary>vos unlock</secondary>
6754 <primary>vos commands</primary>
6756 <secondary>unlock</secondary>
6760 <sect2 id="Header_268">
6761 <title>To unlock a single VLDB entry</title>
6765 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
6766 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
6767 display the users in the UserList file</link>. <programlisting>
6768 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
6769 </programlisting></para>
6773 <para>Issue the <emphasis role="bold">vos unlock</emphasis> command to unlock the entry. <programlisting>
6774 % <emphasis role="bold">vos unlock</emphasis> <<replaceable>volume name or ID</replaceable>>
6775 </programlisting></para>
6777 <para>where <variablelist>
6779 <term><emphasis role="bold">unlock</emphasis></term>
6782 <para>Must be typed in full.</para>
6787 <term><emphasis role="bold">volume name or ID</emphasis></term>
6790 <para>Identifies the volume to be unlocked, either by its complete name or volume ID number. It can be any of the
6791 three versions of the volume.</para>
6794 </variablelist></para>
6799 <primary>commands</primary>
6801 <secondary>vos unlockvldb</secondary>
6805 <primary>vos commands</primary>
6807 <secondary>unlockvldb</secondary>
6811 <sect2 id="Header_269">
6812 <title>To unlock multiple VLDB entries</title>
6816 <para>Verify that you are listed in the <emphasis role="bold">/usr/afs/etc/UserList</emphasis> file. If necessary, issue
6817 the <emphasis role="bold">bos listusers</emphasis> command, which is fully described in <link linkend="HDRWQ593">To
6818 display the users in the UserList file</link>. <programlisting>
6819 % <emphasis role="bold">bos listusers</emphasis> <<replaceable>machine name</replaceable>>
6820 </programlisting></para>
6824 <para>Issue the <emphasis role="bold">vos unlockvldb</emphasis> command to unlock the desired entries. <programlisting>
6825 % <emphasis role="bold">vos unlockvldb</emphasis> [<<replaceable>machine name</replaceable>>] [<<replaceable>partition name</replaceable>>]
6826 </programlisting></para>
6828 <para>where <variablelist>
6830 <term><emphasis role="bold">unlockv</emphasis></term>
6833 <para>Is the shortest acceptable abbreviation of <emphasis role="bold">unlockvldb</emphasis>.</para>
6838 <term><emphasis role="bold">machine name</emphasis></term>
6841 <para>Specifies a file server machine. Provide this argument alone to unlock all VLDB entries that mention the
6842 machine in a site definition. Omit both this argument and the partition name argument to unlock all VLDB
6848 <term><emphasis role="bold">partition name</emphasis></term>
6851 <para>Specifies a partition. Provide this argument alone to unlock all VLDB entries that mention the partition (on
6852 any machine) in a site definition. Omit both this argument and the machine name argument to unlock all VLDB
6856 </variablelist></para>