| 1 | =over 4 |
| 2 | |
| 3 | =item [I<initcmd>] |
| 4 | |
| 5 | Accommodates the command's use of the AFS command parser, and is optional. |
| 6 | |
| 7 | =item B<-partition> <I<name of partition to salvage>> |
| 8 | |
| 9 | Specifies the name of the partition to salvage. Specify the full partition |
| 10 | name using the form F</vicepI<x>> or F</vicepI<xx>>. Omit this argument to |
| 11 | salvage every partition on the file server machine. |
| 12 | |
| 13 | =item B<-volumeid> <I<volume id to salvage>> |
| 14 | |
| 15 | Specifies the volume ID of a specific read/write volume to salvage. The |
| 16 | B<-partition> argument must be provided along with this one and specify |
| 17 | the volume's actual site. |
| 18 | |
| 19 | =item B<-debug> |
| 20 | |
| 21 | Allows only one Salvager subprocess to run at a time, regardless of the |
| 22 | setting of the B<-parallel> option. Include it when running the Salvager |
| 23 | in a debugger to make the trace easier to interpret. |
| 24 | |
| 25 | =item B<-nowrite> |
| 26 | |
| 27 | Brings all undamaged volumes online without attempting to salvage any |
| 28 | damaged volumes. |
| 29 | |
| 30 | =item B<-inodes> |
| 31 | |
| 32 | Records in the F</usr/afs/logs/SalvageLog> file a list of all AFS inodes |
| 33 | that the Salvager modified. |
| 34 | |
| 35 | =item B<-force> |
| 36 | |
| 37 | Inspects all volumes for corruption, not just those that are marked as |
| 38 | having been active when a crash occurred. |
| 39 | |
| 40 | =item B<-oktozap> |
| 41 | |
| 42 | Removes a volume that is so damaged that even issuing the B<vos zap> |
| 43 | command with the B<-force> flag is ineffective. Combine it with the |
| 44 | B<-partition> and B<-volumeid> arguments to identify the volume to remove. |
| 45 | Using this flag will destroy data that cannot be read, so use only with |
| 46 | caution and when you're certain that nothing in that volume is still |
| 47 | needed. |
| 48 | |
| 49 | =item B<-rootinodes> |
| 50 | |
| 51 | Records in the F</usr/afs/logs/SalvageLog> file a list of all AFS inodes |
| 52 | owned by the local superuser C<root>. |
| 53 | |
| 54 | =item B<-salvagedirs> |
| 55 | |
| 56 | Salvages entire directory structures, even if they do not appear to be |
| 57 | damaged. By default, the Salvager salvages a directory only if it is |
| 58 | flagged as corrupted. |
| 59 | |
| 60 | =item B<-blockreads> |
| 61 | |
| 62 | Forces the Salvager to read a partition one disk block (512 bytes) at a |
| 63 | time and to skip any blocks that are too badly damaged to be salvaged. |
| 64 | This allows it to salvage as many volumes as possible. By default, the |
| 65 | Salvager reads large disk blocks, which can cause it to exit prematurely |
| 66 | if it encounters disk errors. Use this flag if the partition to be |
| 67 | salvaged has disk errors. |
| 68 | |
| 69 | =item B<-parallel> <I<# of max parallel partition salvaging>> |
| 70 | |
| 71 | Specifies the maximum number of Salvager subprocesses to run in parallel. |
| 72 | Provide one of three values: |
| 73 | |
| 74 | =over 4 |
| 75 | |
| 76 | =item * |
| 77 | |
| 78 | An integer from the range C<1> to C<32>. A value of C<1> means that a |
| 79 | single Salvager process salvages the partitions sequentially. |
| 80 | |
| 81 | =item * |
| 82 | |
| 83 | The string C<all> to run up to four Salvager subprocesses in parallel on |
| 84 | partitions formatted as logical volumes that span multiple physical |
| 85 | disks. Use this value only with such logical volumes. |
| 86 | |
| 87 | =item * |
| 88 | |
| 89 | The string C<all> followed immediately (with no intervening space) by an |
| 90 | integer from the range C<1> to C<32>, to run the specified number of |
| 91 | Salvager subprocesses in parallel on partitions formatted as logical |
| 92 | volumes. Use this value only with such logical volumes. |
| 93 | |
| 94 | =back |
| 95 | |
| 96 | The BOS Server never starts more Salvager subprocesses than there are |
| 97 | partitions, and always starts only one process to salvage a single |
| 98 | volume. If this argument is omitted, up to four Salvager subprocesses run |
| 99 | in parallel but partitions on the same device are salvaged serially. |
| 100 | |
| 101 | =item B<-tmpdir> <I<name of dir to place tmp files>> |
| 102 | |
| 103 | Names a local disk directory in which the Salvager places the temporary |
| 104 | files it creates during a salvage operation, instead of writing them to |
| 105 | the partition being salvaged (the default). If the Salvager cannot write |
| 106 | to the specified directory, it attempts to write to the partition being |
| 107 | salvaged. |
| 108 | |
| 109 | =item B<-showlog> |
| 110 | |
| 111 | Displays on the standard output stream all log data that is being written |
| 112 | to the F</usr/afs/logs/SalvageLog> file. |
| 113 | |
| 114 | =item B<-showsuid> |
| 115 | |
| 116 | Displays a list of the pathnames for all files that have the setuid or |
| 117 | setgid mode bit set. |
| 118 | |
| 119 | =item B<-showmounts> |
| 120 | |
| 121 | Records in the F</usr/afs/logs/SalvageLog> file all mount points found in |
| 122 | each volume. The Salvager does not repair corruption in the volumes, if |
| 123 | any exists. |
| 124 | |
| 125 | =item B<-orphans> (ignore | remove | attach) |
| 126 | |
| 127 | Controls how the Salvager handles orphaned files and directories. Choose |
| 128 | one of the following three values: |
| 129 | |
| 130 | =over 4 |
| 131 | |
| 132 | =item ignore |
| 133 | |
| 134 | Leaves the orphaned objects on the disk, but prints a message to the |
| 135 | F</usr/afs/logs/SalvageLog> file reporting how many orphans were found and |
| 136 | the approximate number of kilobytes they are consuming. This is the |
| 137 | default if the B<-orphans> argument is omitted. |
| 138 | |
| 139 | =item remove |
| 140 | |
| 141 | Removes the orphaned objects, and prints a message to the |
| 142 | F</usr/afs/logs/SalvageLog> file reporting how many orphans were removed |
| 143 | and the approximate number of kilobytes they were consuming. |
| 144 | |
| 145 | =item attach |
| 146 | |
| 147 | Attaches the orphaned objects by creating a reference to them in the vnode |
| 148 | of the volume's root directory. Since each object's actual name is now |
| 149 | lost, the Salvager assigns each one a name of the following form: |
| 150 | |
| 151 | =over 4 |
| 152 | |
| 153 | =item C<__ORPHANFILE__.I<index>> for files. |
| 154 | |
| 155 | =item C<__ORPHANDIR__.I<index>> for directories. |
| 156 | |
| 157 | =back |
| 158 | |
| 159 | where I<index> is a two-digit number that uniquely identifies each |
| 160 | object. The orphans are charged against the volume's quota and appear in |
| 161 | the output of the B<ls> command issued against the volume's root |
| 162 | directory. |
| 163 | |
| 164 | =back |
| 165 | |
| 166 | =item B<-help> |
| 167 | |
| 168 | Prints the online help for this command. All other valid options are |
| 169 | ignored. |
| 170 | |
| 171 | =back |