RESTORE(8) — MAINTENANCE COMMANDS
NAME
restore − incremental file system restore
SYNOPSIS
/etc/restore key [ name ... ]
DESCRIPTION
Restore restores files from tapes previously created via the dump(8) command. Restore’s actions are controlled by the key argument. The key is a string of characters containing at most one function letter and possibly one or more function modifiers. Other arguments to restore are file or directory names specifying the files that are to be restored. Unless the h key is specified (see below), the appearance of a directory name refers to the files and (recursively) subdirectories of that directory.
FUNCTION LETTERS
The function portion of the key is specified by one of the following letters:
r The tape is read and loaded into the current directory. This should not be done lightly; the r key should only be used to restore a complete dump tape onto a clear file system or to restore an incremental dump tape after a full level zero restore. Thus:
tutorial% /etc/newfs /dev/rxy0g eagle
tutorial% /etc/mount /dev/xy0g /mnt
tutorial% cd /mnt
tutorial% restore r
is a typical sequence to restore a complete dump. Another restore can be done to get an incremental dump in on top of this. A dump(8) followed by a newfs(8) and a restore can be used to change the size of a file system.
R Restore requests a particular tape of a multi volume set on which to restart a full restore (see the r key above). This allows restore to be interrupted and then restarted.
x Extract the named files from the tape. If the named file matches a directory whose contents had been written onto the tape, and the h key is not specified, the directory is recursively extracted. The owner, modification time, and mode are restored (if possible). If no file argument is given, the root directory is extracted, which results in the entire content of the tape being extracted, unless the h key has been specified.
t List the names of the specified files if they occur on the tape. If no file argument is given, the root directory is listed, which results in the entire content of the tape being listed, unless the h key has been specified. Note that the t key replaces the function of the old dumpdir program.
i Restore files interactively from a dump tape. After reading in the directory information from the tape, restore provides a shell like interface within which the user can move around the directory tree selecting files to be extracted. The available commands that this ‘shell’ provides are given below. For those commands that require an argument, the default is the current directory.
ls [arg]List the current or specified directory. Entries that are directories are appended with a ‘/’. Entries that have been marked for extraction are prepended with a ‘∗’. If the verbose key is set the inode number of each entry is also listed.
cd argChange the current working directory to the specified argument.
pwdPrint the full pathname of the current working directory.
add [arg]Add the current directory or specified argument to the list of files to be extracted. If a directory is specified, add that directory and all its to the extraction list (unless the h key is specified on the command line). Files that are on the extraction list are prepended with a ‘∗’ when they are listed by ls.
delete [arg]
Delete the current directory or specified argument from the list of files to be extracted. If a directory is specified, delete that directory and all its descendents from the extraction list (unless the h key is specified on the command line). The most expedient way to extract most of the files from a directory is to add the directory to the extraction list and then delete those files that are not needed.
extractExtract from the dump tape all the files that are on the extraction list. Restore asks which volume the user wishes to mount. The fastest way to extract a few files is to start with the last volume, and work towards the first volume.
verboseToggle the sense of the v key. When the verbose key is set, the ls command lists the inode numbers of all entries, and restore also displays information about each file as it is extracted.
helpList a summary of the available commands.
quitRestore immediately exits, even if the extraction list is not empty.
FUNCTION MODIFIERS
The function modifiers which may be used in addition to the function letters are as follows. A few of these modifiers — namely b, f, and s— take an argument from the command line. If you use more than one of b, f, and s, nest your arguments as you do your modifiers; if you use b first on the command line, place its argument first on the command line, and so on.
b Specifies the blocking factor for the restore. The blocking factor is taken from the next argument on the command line. This corresponds to the b key in dump(8).
d Turns on debugging output.
v This is the verbose option. It means display the name of each file it treats preceded by its file type. Restore normally works silently.
f Use the next argument to restore as the name of the archive instead of /dev/rmt?. If the name of the file is ‘−’, restore reads from standard input. Thus, dump(8) and restore can be used in a pipeline to dump and restore a file system with the command
tutorial% dump 0f − /usr | (cd /mnt; restore xf −)
If the name of the file is ‘machine:device’ the restore is done from the specified machine through the internet using rmt(8C).
s The next argument indicates that restore is to skip to the n’th file when there are multiple dump files on the dump tape. For example, a command like
tutorial% restore xfs /dev/nrar0 5
would position you at the fifth file on the tape.
y Do not ask whether to abort the restore in the event of tape errors. Restore always tries to skip over the bad tape block(s) and continue as best it can.
m Extract by inode numbers rather than by file name. This is useful if only a few files are being extracted, and one wants to avoid regenerating the complete pathname to the file.
h Extract the actual directory, rather than the files that it references. This prevents hierarchical restoration of complete subtrees from the tape.
c Convert the contents of the dump tape to the new file system format.
DIAGNOSTICS
Complaints about bad key characters.
Complaints if it gets a read error. If y has been specified, or the user responds ‘y’, restore will attempt to continue the restore.
If the dump extends over more than one tape, restore asks the user to change tapes. If the x or i key has been specified, restore also asks which volume the user wishes to mount. The fastest way to extract a few files is to start with the last volume, and work towards the first volume.
There are numerous consistency checks that can be listed by restore. Most checks are self-explanatory or can ‘never happen’. Common errors are given below.
Converting to new file system format.
A dump tape created from the old file system has been loaded. It is automatically converted to the new file system format.
<filename>: not found on tape
The specified file name was listed in the tape directory, but was not found on the tape. This is caused by tape read errors while looking for the file, and from using a dump tape created on an active file system.
expected next file <inumber>, got <inumber>
A file that was not listed in the directory showed up. This can occur when using a dump tape created on an active file system.
Incremental tape too low
When doing incremental restore, a tape that was written before the previous incremental tape, or that has too low an incremental level has been loaded.
Incremental tape too high
When doing incremental restore, a tape that does not begin its coverage where the previous incremental tape left off, or that has too high an incremental level has been loaded.
Tape read error while restoring <filename>
Tape read error while skipping over inode <inumber>
Tape read error while trying to resynchronize
A tape read error has occurred. If a file name is specified, then its contents are probably partially wrong. If an inode is being skipped or the tape is trying to resynchronize, then no extracted files have been corrupted, though files may not be found on the tape.
resync restore, skipped <num> blocks
After a tape read error, restore may have to resynchronize itself. This message lists the number of blocks that were skipped over.
FILES
/dev/rmt?the default tape drive
/tmp/rstdir∗file containing directories on the tape.
/tmp/rstmode∗owner, mode, and time stamps for directories.
./restoresymtabinformation passed between incremental restores.
SEE ALSO
dump(8), newfs(8), mount(8), mkfs(8), rmt(8C)
BUGS
Restore can get confused when doing incremental restores from dump tapes that were made on active file systems.
A level zero dump must be done after a full restore. Because restore runs in user mode, it has no control over inode allocation; this means that restore re-positions the files, although it does change their contents. Thus, a full dump must be done to get a new set of directories reflecting the new file positions, so that later incremental dumps will be correct.
Sun Release 3.0β — Last change: 1 February 1985