 |
Index for Section 8 |
|
 |
Alphabetical listing for S |
|
 |
Bottom of page |
|
salvage(8)
NAME
salvage - Recover file data from damaged AdvFS file domains
SYNOPSIS
/sbin/advfs/salvage [-x | -p] [-l] [-S] [-P] [-v number] [-d time] [-D
directory] [-L path] [-o option] [-F format[-f [archive]]] {-V special [-V
special]... | domain} [fileset[path]]
OPTIONS
-d time
Specifies that the utility attempt to recover only those files that
have been modified after the time. Specify the time as a decimal
number in the following format:
[[CC]YY]MMDDhhmm[.SS]
The paired decimal numbers in the format represent the following:
CC The first two digits of the year (the century)
YY The second two digits of the year (00-99)
MM The month of the year (01-12)
DD The day of the month (00-31)
hh The hour of the day (00-23)
mm The minute of the hour (00-59)
SS The second of the minute (00-61)
Both CC and YY are optional. If neither is specified, the curent year
is the default. If YY is specified but CC is not, CC is derived as
follows: If YY is 69-99, CC is 19; if YY is 00-68, CC is 20.
The range for SS is 00-61 rather than 00-59 because of leap seconds.
If SS is 60 or 61 and the resulting time (as affected by the TZ
environment variable) does not refer to a leap second, the resulting
time is one or two seconds after a time where SS is 59. SS is not a
given value; it is assumed to be 0 (zero).
-D directory
Specifies the path of the directory to which all recovered files are
written. If you do not specify a directory, the utility writes
recovered files to the current working directory.
-l Specifies verbose mode for messages written to the log file. If you
specify this option, the utility writes a message to the log file for
every file that is encountered during the recovery. The message
contains the file name and file status. You specify the path of the log
file by using the -L option.
If you do not specify this option, the utility writes a message to the
log file only for partially-recovered and unrecovered files.
-L path
Specifies the path of the directory or the file name for the log file
you choose to contain messages logged by the utility.
When your path specification includes a log file name, the utility uses
that name for the log file.
When your path specification does not include a log file name, the
utility places the log file in that directory and names it
salvage.log.pid, where pid is the process id of the user process.
When you do not specify this option, the utility places the log file in
the current working directory and names it salvage.log.pid.
-o option
Specifies the action the utility takes when a file being recovered
already exists in the directory to which it is to be written.
The values for option are:
yes Overwrite the existing file without querying the user. This is the
default action when option is not specified.
no Do not overwrite the existing file.
ask Ask the user whether to overwrite the existing file.
If you do not specify this option, the default action is to overwrite
an existing file without querying the user.
-p Specifies that the utility identifies a partially-recovered file by
appending .partial to its file name. If you do not use this option, no
file name extensions are added to partially-recovered files.
Do not use the -p option with the -x option. If you do, an error
message is displayed and the utility exits with an exit value of 2.
-P Specifies that the progress indicators should be turned on and a
progress message printed at regular intervals. The progress indicators
can be useful if salvage is taking a long time to run on a very large
domain.
-S Specifies that the utility is to run in sequential search mode,
checking each page on each volume in the domain. This mode of
operation will take a long time on large AdvFS file domains.
The -S option can be used to recover most files from a domain which has
been damaged from an incorrect execution of the mkfdmn utility. In
some cases, the recovery will need to generate names based on the
file's tag number. These cases usually happen in the root directory,
because mkfdmn usually overwrites this directory.
When you specify the -S option, there may be a security issue, because
the utility could recover old filesets and deleted files.
-F format
Specifies that salvage should recover files in an archive format
instead of directly to a filesystem. The only legitimate value for
format is tar.
-f [archive]
The salvage command uses the next argument as the name of the archive,
or /dev/tape/tape0_d1 if archive is not specified. If the name of the
file is - (dash), salvage writes to standard output.
-v number
Specifies the type of messages directed to stdout. If you do not
specify this option, the default is to direct only error messages to
stdout. If you specify n to be 1, both errors and the names of
partially-recovered files are directed to stdout. If you specify n to
be 2, error messages and the status of all files as they are recovered
are directed to stdout.
-V special [-V special]...
Specifies the block device special file names of volumes in the domain,
for example, /dev/disk/dsk3c. The utility attempts to recover files
only from the volumes you specify.
If you do not specify the -V option, you must specify the domain
operand so that the utility can obtain the special file names of the
volumes in the domain from the /etc/fdmns directory.
Do not use this option with the domain operand. If you do, an error
message is displayed and the utility exits with an exit value of 2.
-x Specifies that partially-recoverable files are not to be recovered. If
you do not use this option, partially-recoverable files are recovered.
Do not use the -x option with the -p option. If you do, the utility
displays an error message and exits with an exit value of 2.
OPERANDS
domain
Specifies the name of an existing AdvFS file domain from which filesets
are to be recovered. Use this parameter when you want the utility to
obtain volume information from the /etc/fdmns directory. The volume
information used by the utility consists of the device special file
names of the AdvFS volumes in the file domain. When the domain operand
is specified without optional arguments, the utility attempts to
recover the files in all filesets in the domain.
Do not use this operand when you want to use the -V special option to
specify device special file names of AdvFS volumes. If you do, the
utility displays an error message and exits with an exit value of 2.
fileset [path]
Specifies the name of a fileset to be recovered from a domain or a
volume.
Specify path to indicate the path of a directory or file in a fileset.
When you specify a path that is a directory, the utility attempts to
recover only the files in that directory tree, starting at the
specified directory. When you specify a path that is a file, the
utility attempts to recover only that file.
Specify path relative to the mount point of the fileset.
DESCRIPTION
The salvage utility helps you recover file data after an AdvFS file domain
has become unmountable due to some type of data corruption. Errors that
could cause data corruption of a file domain include I/O errors in file
system metadata, the accidental removal of a volume, or any I/O error that
produces a panic.
Use the salvage utility as a last resort. You should first repair domain
structures by using the verify utility. If that repair method is
unsatisfactory, attempt to recover fileset data from backup media. Only if
both methods are unsatisfactory should you employ the salvage utility.
Space Needed By salvage
As the utility recovers files, it writes temporary files to a subdirectory
of the recovery directory, and uses these files to process the on-disk
structures it is reading. The utility deletes these temporary files when
it exits.
Format of Log File Messages
The following are log file message formats: The general format is:
fileset/file : uid : gid : size : bytes recovered : type : file status...
For example, for a regular file:
user_fs/data.file : 3500 : 15 : 56116 : 56116 : REG : file successfully \
recovered
For example, for a directory:
user_fs/data/ : 3500 : 15 : 8192 : 8192 : DIR : file successfully \
recovered
For a file and a directory, when its name cannot be found:
user_fs/data.file.lost+found/tag_12345 : 0 : 10 : 24576 : 24576 : REG :\
filename not recovered
user_fs/data/lost+found/tag_54321/ : 0 : 10 : 8192 : 8192 : DIR :\
directory not recovered
For a file, when the ending fragment cannot be found:
user_fs/data.file : 3500: 15 : 56116 : 55092 : REG : file truncated by \
1024 bytes
For a file, when not all the file's pages can be recovered:
user_fs/data.file : 3500 : 15 : 1646592 : 24576 : REG : Incomplete file,\
hole between bytes MMMMM and NNNNN, bytes XXXXX and YYYYY
For a file, when it has an entry in a directory but cannot be found on
disk:
user_fs/data.file : 3500 : 15 : 56116 : 0 : REG : Unable to locate file
NOTES
The salvage utility opens and reads block devices directly and could
present a security issue if it recovers data remaining from previous AdvFS
file domains while attempting to recover data from current AdvFS file
domains.
The salvage utility can be run in single-user mode, without mounting other
file systems. The salvage utility is available from the UNIX Shell option
when you are booting from the Tru64 UNIX Operating System Volume 1 CD-ROM.
The salvage utility can find metadata on disk that appears valid but might
not be: in most cases, the utility can determine when this suspect
metadata should be used or ignored. One of these problems that the utility
cannot detect is the situation when the metadata contains a tag number that
could be valid on a very large fileset, but is invalid for common filesets.
In this case, the utility creates a partial file in the lost+found
directory.
The salvage utility has a builtin soft limit on the number of valid tags in
a fileset: 10,000,000 tags. If an application should exceed this soft
limit, the user is prompted about increasing the limit. For example:
salvage: Current soft-limit on tag array 10000000; increase size \
to 538977250?
If you answer y to the prompt, the soft limit is increased to the new
value. If you answer n to the prompt, the hard limit is set to the new
value and you will not be prompted for tabs larger than this new limit.
If increasing this limit causes a memory error, rerun the utility without
increasing the limit.
RESTRICTIONS
You must be the root user to use the salvage utility.
Before using the salvage utility, all filesets in the domain you are trying
to recover probably have been already unmounted. However, use the
umount(8) command to ensure that the filesets are unmounted. If all
filesets are not unmounted, the utility displays an error message exits
with an exit value of 2.
EXIT STATUS
The exit values for the salvage utility are:
0 Success
1 Partial recovery
2 Failure, including command line syntax errors
ERRORS
The salvage utility error diagnostics cause the utility to exit with an
exit code of 2. The diagnostics are:
· salvage: Error - Out of memory
Explanation:
The utility does not have enough memory
· salvage: Error - No such file or directory
Explanation:
The file or directory you specified could not be found on the device
specified.
· salvage: Error - I/O error
Explanation:
An I/O error occurred during the salvage operation.
· salvage: Error - No space left in recovery directory
Explanation:
The directory to which the recovered files are written is full.
EXAMPLES
1. The following example shows a salvage command that uses all the
defaults to recover all files from the AdvFS file domain named
user_domain. Other results include:
· A log file named salvage.log.pid is written to the fixit
directory
· The files that are recovered from the user_domain are also
written to the fixit directory
· Partially-recoverable files are recovered. These files are
written to the fixit directory. The extension .partial is not
appended to the name of each file.
# cd /fixit
# /sbin/advfs/salvage -p 9611200000 user_domain
2. The following example shows a salvage command that uses the -d option
to recover all the file in the domain user_domain that have been
changed after that date.
# cd /fixit
# /sbin/advfs/salvage -d 9611200000 user_domain
3. The following example shows a salvage command that recovers the file
data.file, whether or not it is only partially recoverable, from the
fileset user_fileset on the volume mounted as /dev/disk/dsk3c.
The data.file file is written to the recovery directory and logged in
the log file only if it was partially recovered.
# cd /fixit
# /sbin/advfs/salvage -V /dev/disk/dsk3c user_fileset/data.file
4. The following example shows a salvage command that recovers the file
data.file, only if it is fully-recoverable, from the fileset
user_fileset on the domain user_domain.
The data.file file, if it is not recovered, is logged in the log file.
Otherwise, it is written to the recovery directory.
# cd /fixit
# /sbin/advfs/salvage -x user_domain user_fileset/data.file
FILES
/etc/fdmns
Contains AdvFS file domain names and devices
/etc/fstab
Contains static information about file systems and filesets
SEE ALSO
Commands: umount(8), verify(8), vrestore(8)
Files: fdmns(4)
 |
Index for Section 8 |
|
 |
Alphabetical listing for S |
|
 |
Top of page |
|