RESTORE(8)

RESTORE(8)                System management commands                RESTORE(8)



NAME
       restore - restore files or file systems from backups made with dump

SYNOPSIS
       restore  -C  [-cdHklMvVy]  [-b blocksize] [-D filesystem] [-f file] [-F
       script] [-L limit] [-s fileno] [-T directory]

       restore -i [-acdhHklmMNouvVy] [-A file] [-b blocksize]  [-f  file]  [-F
       script] [-Q file] [-s fileno] [-T directory]

       restore  -P file [-acdhHklmMNuvVy] [-b blocksize] [-f file] [-F script]
       [-s fileno] [-T directory] [-X filelist] [ file ... ]

       restore -R [-cdHklMNuvVy] [-b blocksize]  [-f  file]  [-F  script]  [-s
       fileno] [-T directory]

       restore  -r  [-cdHklMNuvVy]  [-b  blocksize]  [-f file] [-F script] [-s
       fileno] [-T directory]

       restore -t [-cdhHklMNuvVy] [-A  file]  [-b  blocksize]  [-f  file]  [-F
       script] [-Q file] [-s fileno] [-T directory] [-X filelist] [ file ... ]

       restore -x [-adchHklmMNouvVy] [-A file] [-b blocksize]  [-f  file]  [-F
       script] [-Q file] [-s fileno] [-T directory] [-X filelist] [ file ... ]

DESCRIPTION
       The restore command performs the inverse function of dump(8).   A  full
       backup  of  a  file  system  may be restored and subsequent incremental
       backups layered on top of it. Single files and directory  subtrees  may
       be  restored from full or partial backups.  Restore works across a net-
       work; to do this see the -f flag described below.  Other  arguments  to
       the  command  are file or directory names specifying the files that are
       to be restored. Unless the  -h  flag  is  specified  (see  below),  the
       appearance  of  a  directory name refers to the files and (recursively)
       subdirectories of that directory.

       Exactly one of the following flags is required:

       -C     This mode allows comparison of files from a dump.  Restore reads
              the  backup  and compares its contents with files present on the
              disk. It first changes its working directory to the root of  the
              filesystem  that was dumped and compares the tape with the files
              in its new current directory. See also  the  -L  flag  described
              below.

       -i     This  mode  allows interactive restoration of files from a dump.
              After reading  in  the  directory  information  from  the  dump,
              restore  provides a shell like interface that allows the user to
              move around the directory tree selecting files to be  extracted.
              The  available commands are given below; for those commands that
              require an argument, the default is the current directory.

              add [arg]
                     The current directory or specified argument is  added  to
                     the  list  of  files  to be extracted.  If a directory is
                     specified, then it and all its descendents are  added  to
                     the  extraction  list (unless the -h flag is specified on
                     the command line). Files that are on the extraction  list
                     are prepended with a “*” when they are listed by ls.

              cd arg Change  the  current  working  directory to the specified
                     argument.

              delete [arg]
                     The current directory or specified  argument  is  deleted
                     from the list of files to be extracted. If a directory is
                     specified, then it and all its  descendents  are  deleted
                     from the extraction list (unless the -h flag is specified
                     on the command line). The most expedient way  to  extract
                     most  of  the files from a directory is to add the direc-
                     tory to the extraction list and then delete  those  files
                     that are not needed.

              extract
                     All  files  on the extraction list are extracted from the
                     dump.  Restore will ask which volume the user  wishes  to
                     mount.  The  fastest  way  to  extract a f ew files is to
                     start with the last volume and  work  towards  the  first
                     volume.

              help   List a summary of the available commands.

              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 flag is set, the inode number of  each  entry
                     is also listed.

              pwd    Print the full pathname of the current working directory.

              quit   Restore immediately exits, even if the extraction list is
                     not empty.

              setmodes
                     All  directories  that  have been added to the extraction
                     list have their owner, modes, and times set;  nothing  is
                     extracted  from  the dump. This is useful for cleaning up
                     after a restore has been prematurely aborted.

              verbose
                     The sense of the -v flag is toggled. When set,  the  ver-
                     bose flag causes the ls command to list the inode numbers
                     of all entries. It  also  causes  restore  to  print  out
                     information about each file as it is extracted.

       -P file
              Restore creates a new Quick File Access file file from an exist-
              ing dump file without restoring its contents.

       -R     Restore requests a particular tape  of  a  multi-volume  set  on
              which to restart a full restore (see the -r flag below). This is
              useful if the restore has been interrupted.

       -r     Restore (rebuild) a file system. The target file  system  should
              be made pristine with mke2fs(8), mounted, and the user cd’d into
              the pristine file system before starting the restoration of  the
              initial  level  0  backup. If the level 0 restores successfully,
              the -r flag may be used to  restore  any  necessary  incremental
              backups on top of the level 0. The -r flag precludes an interac-
              tive file extraction and can be detrimental to one’s health (not
              to mention the disk) if not used carefully. An example:

                     mke2fs /dev/sda1

                     mount /dev/sda1 /mnt

                     cd /mnt

                     restore rf /dev/st0

              Note  that  restore  leaves  a  file restoresymtable in the root
              directory  to  pass  information  between  incremental   restore
              passes.   This  file should be removed when the last incremental
              has been restored.

              Restore, in conjunction with mke2fs(8) and dump(8), may be  used
              to modify file system parameters such as size or block size.

       -t     The names of the specified files are listed if they occur on the
              backup. If no file argument is  given,  the  root  directory  is
              listed,  which results in the entire content of the backup being
              listed, unless the -h flag has been specified.  Note that the -t
              flag  replaces  the function of the old dumpdir(8) program.  See
              also the -X option below.

       -x     The named files are read from the given media. If a  named  file
              matches  a directory whose contents are on the backup and the -h
              flag is not specified, the directory is  recursively  extracted.
              The  owner,  modification time, and mode are restored (if possi-
              ble). If no file  argument  is  given,  the  root  directory  is
              extracted,  which  results  in  the entire content of the backup
              being extracted, unless the -h flag  has  been  specified.   See
              also the -X option below.

OPTIONS
       The following additional options may be specified:

       -a     In  -i or -x mode, restore does ask the user for the volume num-
              ber on which the files to be extracted are supposed  to  be  (in
              order  to minimise the time by reading only the interesting vol-
              umes). The -a option disables this behaviour and reads  all  the
              volumes starting with 1. This option is useful when the operator
              does not know on which volume the  files  to  be  extracted  are
              and/or  when  he  prefers the longer unattended mode rather than
              the shorter interactive mode.

       -A archive_file
              Read the table of contents  from  archive_file  instead  of  the
              media.  This  option can be used in combination with the -t, -i,
              or -x options, making it possible to check whether files are  on
              the media without having to mount the media.

       -b blocksize
              The number of kilobytes per dump record. If the -b option is not
              specified, restore tries  to  determine  the  media  block  size
              dynamically.

       -c     Normally,  restore will try to determine dynamically whether the
              dump was made from an old (pre-4.4) or new format  file  system.
              The  -c flag disables this check, and only allows reading a dump
              in the old format.

       -d     The -d (debug) flag causes restore to print debug information.

       -D filesystem
              The -D flag allows the user to specify the filesystem name  when
              using restore with the -C option to check the backup.

       -f file
              Read  the  backup  from  file; file may be a special device file
              like /dev/st0 (a tape drive), /dev/sda1 (a disk drive), an ordi-
              nary file, or - (the standard input). If the name of the file is
              of the form host:file or user @host :file, restore reads from  the
              named file on the remote host using rmt(8).

       -F script
              Run  script  at  the beginning of each tape. The device name and
              the current volume number are passed on the  command  line.  The
              script  must  return 0 if restore should continue without asking
              the user to change the tape, 1 if restore  should  continue  but
              ask  the user to change the tape. Any other exit code will cause
              restore to abort. For security reasons, restore reverts back  to
              the  real  user  ID  and  the  real  group ID before running the
              script.

       -h     Extract the actual directory, rather than the files that it ref-
              erences. This prevents hierarchical restoration of complete sub-
              trees from the dump.

       -H hash_size
              Use a hashtable having the specified number of entries for stor-
              ing  the  directories  entries  instead  of  a linked list. This
              hashtable will considerably  speed  up  inode  lookups  (visible
              especially  in  interactive mode when adding/removing files from
              the restore list), but at the price of much more  memory  usage.
              The default value is 1, meaning no hashtable is used.

       -k     Use  Kerberos  authentication  when  contacting  the remote tape
              server. (Only available if this options was enabled when restore
              was compiled.)

       -l     When  doing remote restores, assume the remote file is a regular
              file (instead of a tape device). If you’re  restoring  a  remote
              compressed file, you will need to specify this option or restore
              will fail to access it correctly.

       -L limit
              The -L flag allows the user to specify a maximal number of  mis-
              compares  when  using  restore  with  the -C option to check the
              backup. If this limit is reached, restore  will  abort  with  an
              error  message.  A  value  of 0 (the default value) disables the
              check.

       -m     Extract by inode numbers rather than by file name. This is  use-
              ful  if  only  a few files are being extracted, and one wants to
              avoid regenerating the complete pathname to the file.

       -M     Enables the multi-volume feature (for reading dumps  made  using
              the -M option of dump). The name specified with -f is treated as
              a prefix and restore tries to read in sequence from <prefix>001,
              <prefix>002 etc.

       -N     The  -N  flag  causes  restore  to  perform  a full execution as
              requested by one of -i, -R, -r, t or x command without  actually
              writing any file on disk.

       -o     The  -o flag causes restore to automatically restore the current
              directory permissions without asking the operator whether to  do
              so in one of -i or -x modes.

       -Q file
              Use the file file in order to read tape position as stored using
              the dump Quick File Access mode, in one of -i, -x or -t mode.

              It is recommended to set up the st driver to return logical tape
              positions  rather than physical before calling dump/restore with
              parameter -Q.  Since not all tape devices support physical  tape
              positions those tape devices return an error during dump/restore
              when the st driver is  set  to  the  default  physical  setting.
              Please  see  the  st(4) man page, option MTSETDRVBUFFER , or the
              mt(1) man page, on how to set the driver to return logical  tape
              positions.

              Before  calling  restore with parameter -Q, always make sure the
              st driver is set to return the same type of tape  position  used
              during the call to dump.  Otherwise restore may be confused.

              This  option  can  be  used  when restoring from local or remote
              tapes (see above) or from local or remote files.

       -s fileno
              Read from the specified fileno on a multi-file tape.  File  num-
              bering starts at 1.

       -T directory
              The  -T  flag  allows the user to specify a directory to use for
              the storage of temporary files. The default value is /tmp.  This
              flag  is  most  useful  when restoring files after having booted
              from a floppy. There might be little or no space on  the  floppy
              filesystem, but another source of space might exist.

       -u     When  creating  certain  types  of files, restore may generate a
              warning diagnostic if they already exist in  the  target  direc-
              tory.  To  prevent  this, the -u (unlink) flag causes restore to
              remove old entries before attempting to create new ones.

       -v     Normally restore does its work silently. The -v  (verbose)  flag
              causes  it  to  type the name of each file it treats preceded by
              its file type.

       -V     Enables reading multi-volume non-tape mediums like CDROMs.

       -X filelist
              Read list of files to be listed or extracted from the text  file
              filelist  in  addition  to  those specified on the command line.
              This can be used in conjunction with the -t or -x commands.  The
              file  filelist  should contain file names separated by newlines.
              filelist may be an ordinary file or - (the standard input).

       -y     Do not ask the user whether to abort the restore in the event of
              an  error.   Always  try  to skip over the bad block(s) and con-
              tinue.

       (The 4.3BSD option syntax is implemented for backward compatibility but
       is not documented here.)

DIAGNOSTICS
       Complains if it gets a read error. If y has been specified, or the user
       responds y, restore will attempt to continue the restore.

       If a backup was made using more than  one  tape  volume,  restore  will
       notify  the user when it is time to mount the next volume. If the -x or
       -i flag has been specified, restore will also ask 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 created on an active file system.

       Incremental dump too low
              When  doing  an  incremental  restore,  a  dump that was written
              before the previous incremental dump, or that  has  too  low  an
              incremental level has been loaded.

       Incremental dump too high
              When  doing  an  incremental restore, a dump that does not begin
              its coverage where the previous incremental dump  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 (or other media) read error has occurred. If a file name
              is specified, its contents are probably partially wrong.  If  an
              inode  is  being skipped or the tape is trying to resynchronize,
              no extracted files have been corrupted, though files may not  be
              found on the tape.

       resync restore, skipped <num> blocks
              After  a  dump  read  error,  restore  may have to resynchronize
              itself. This message  lists  the  number  of  blocks  that  were
              skipped over.

EXIT STATUS
       Restore  exits  with  zero status on success. Tape errors are indicated
       with an exit code of 1.

       When doing a comparison of files from a dump, an exit code of  2  indi-
       cates that some files were modified or deleted since the dump was made.

ENVIRONMENT
       If the following environment variable exists it  will  be  utilized  by
       restore:

       TAPE   If no -f option was specified, restore will use the device spec-
              ified via TAPE as the dump device.  TAPE  may  be  of  the  form
              tapename, host:tapename or user @host :tapename.

       TMPDIR The  directory  given  in TMPDIR will be used instead of /tmp to
              store temporary files.

       RMT    The environment variable RMT will be used to determine the path-
              name of the remote rmt(8) program.

       RSH    Restore uses the contents of this variable to determine the name
              of the remote shell command to use when doing a network  restore
              (rsh,  ssh  etc.).  If this variable is not set, rcmd(3) will be
              used, but only root will be able to do a network restore.

FILES
       /dev/st0
              the default tape drive

       /tmp/rstdir*
              file containing directories on the tape

       /tmp/rstmode*
              owner, mode, and time stamps for directories

       ./restoresymtable
              information passed between incremental restores

SEE ALSO
       dump(8), mount(8), mke2fs(8), rmt(8)

BUGS
       Restore can get confused when doing  incremental  restores  from  dumps
       that were made on active file systems.

       A  level 0 dump must be done after a full restore. Because restore runs
       in user code, it has no control over inode allocation; thus a full dump
       must  be  done to get a new set of directories reflecting the new inode
       numbering, even though the content of the files is unchanged.

       The temporary files /tmp/rstdir* and /tmp/rstmode* are generated with a
       unique  name  based  on  the  date  of the dump and the process ID (see
       mktemp(3)), except when -r or -R is used.  Because  -R  allows  you  to
       restart  a  -r  operation that may have been interrupted, the temporary
       files should be the same  across  different  processes.  In  all  other
       cases,  the files are unique because it is possible to have two differ-
       ent dumps started at the same time, and separate  operations  shouldn’t
       conflict with each other.

       To  do  a  network  restore,  you  have to run restore as root or use a
       remote shell replacement (see RSH variable).  This is due to the previ-
       ous  security  history of dump and restore.  ( restore is written to be
       setuid root, but we are not certain all bugs are gone from the  code  -
       run setuid at your own risk.)

       At  the end of restores in -i or -x modes (unless -o option is in use),
       restore will ask the operator whether to set  the  permissions  on  the
       current  directory.  If  the operator confirms this action, the permis-
       sions on the directory from where restore was launched will be replaced
       by the permissions on the dumped root inode. Although this behaviour is
       not really a bug, it has proven itself to be confusing for many  users,
       so  it  is  recommended to answer ’no’, unless you’re performing a full
       restore and you do want to restore the permissions on ’/’.

       It should be underlined that because it runs in user  code,  restore  ,
       when  run  with  the  -C  option, sees the files as the kernel presents
       them, whereas dump sees all the files on a given filesystem. In partic-
       ular,  this can cause some confusion when comparing a dumped filesystem
       a part of which is hidden by a filesystem mounted on top of it.

AUTHOR
       The dump/restore backup suite was ported  to  Linux’s  Second  Extended
       File System by Remy Card <[email protected]>. He maintained the initial
       versions of dump (up and including 0.4b4, released in January 1997).

       Starting   with   0.4b5,   the   new   maintainer   is   Stelian    Pop
       <[email protected]>.

AVAILABILITY
       The  dump/restore  backup  suite is available from <http://dump.source-
       forge.net>

HISTORY
       The restore command appeared in 4.2BSD.



BSD                     version 0.4b42 of June 18, 2009             RESTORE(8)

你可能感兴趣的:(RESTORE(8))