dump(8)


NAME

   dump - ext2/3/4 filesystem backup

SYNOPSIS

   dump  [-level#]  [-ackMnqSuv] [-A file] [-B records] [-b blocksize] [-d
   density] [-D file] [-e inode numbers] [-E file] [-f file]  [-F  script]
   [-h  level]  [-I  nr errors] [-jcompression level] [-L label] [-Q file]
   [-s feet] [-T date] [-y] [-zcompression level] files-to-dump

   dump [-W | -w]

DESCRIPTION

   Dump examines files on an  ext2/3/4  filesystem  and  determines  which
   files  need  to be backed up. These files are copied to the given disk,
   tape or other storage medium for safe keeping (see the -f option  below
   for doing remote backups). A dump that is larger than the output medium
   is broken into multiple volumes. On most media the size  is  determined
   by writing until an end-of-media indication is returned.

   On  media  that cannot reliably return an end-of-media indication (such
   as some cartridge tape drives), each volume is of  a  fixed  size;  the
   actual  size  is  determined  by specifying cartridge media, or via the
   tape size, density and/or block count options below.  By  default,  the
   same  output  file  name  is  used  for each volume after prompting the
   operator to change media.

   files-to-dump is either a mountpoint of a filesystem or a list of files
   and  directories  to  be  backed up as a subset of a filesystem. In the
   former case, either the path to a mounted filesystem or the  device  of
   an  unmounted  filesystem  can  be  used.  In  the latter case, certain
   restrictions are placed on the backup: -u is not allowed, the only dump
   level  that  is  supported  is 0 and all the files and directories must
   reside on the same filesystem.

OPTIONS

   The following options are supported by dump:

   -level#
          The dump level (any integer). A level 0, full backup,  specified
          by  -0 guarantees the entire file system is copied (but see also
          the -h option  below).  A  level  number  above  0,  incremental
          backup,  tells  dump to copy all files new or modified since the
          last dump of a lower level. The default level is 0. Historically
          only  levels 0 to 9 were usable in dump, this version is able to
          understand any integer as a dump level.

   -a     "auto-size". Bypass all  tape  length  calculations,  and  write
          until  an  end-of-media indication is returned.  This works best
          for most modern tape drives, and is the  default.  Use  of  this
          option is particularly recommended when appending to an existing
          tape, or using a tape drive with hardware compression (where you
          can never be sure about the compression ratio).

   -A archive_file
          Archive  a  dump table-of-contents in the specified archive_file
          to be used by restore(8) to determine whether a file is  in  the
          dump file that is being restored.

   -b blocksize
          The  number  of kilobytes per dump record. The default blocksize
          is 10, unless the -d option has been  used  to  specify  a  tape
          density  of 6250BPI or more, in which case the default blocksize
          is 32. Th maximal value is 1024.  Note however that,  since  the
          IO system slices all requests into chunks of MAXBSIZE (which can
          be as low as 64kB), you can experience problems with dump(8) and
          restore(8)  when  using a higher value, depending on your kernel
          and/or libC versions.

   -B records
          The number of 1 kB blocks per volume. Not normally required,  as
          dump  can  detect  end-of-media.  When  the  specified  size  is
          reached, dump waits for you to change the volume.   This  option
          overrides  the  calculation  of  tape  size  based on length and
          density. If compression is  on  this  limits  the  size  of  the
          compressed output per volume.  Multiple values may be given as a
          single argument separated by commas.  Each value  will  be  used
          for  one  dump  volume in the order listed; if dump creates more
          volumes than the number of values given, the last value will  be
          used  for  the  remaining volumes. This is useful for filling up
          already partially filled media (and then  continuing  with  full
          size volumes on empty media) or mixing media of different sizes.

   -c     Change  the defaults for use with a cartridge tape drive, with a
          density of 8000 bpi, and a length of  1700  feet.  Specifying  a
          cartridge drive overrides the end-of-media detection.

   -d density
          Set tape density to density.  The default is 1600BPI. Specifying
          a tape density overrides the end-of-media detection.

   -D file
          Set the path name of the file storing the information about  the
          previous  full  and  incremental  dumps. The default location is
          /var/lib/dumpdates.

   -e inodes
          Exclude inodes from the dump. The inodes parameter  is  a  comma
          separated list of inode numbers (you can use stat(1) to find the
          inode number for a file or directory).

   -E file
          Read list of inodes to be excluded from the dump from  the  text
          file  file.  The file file should be an ordinary file containing
          inode numbers separated by newlines.

   -f file
          Write the backup to file; file may be a special device file like
          /dev/st0  (a  tape  drive), /dev/rsd1c (a floppy disk drive), an
          ordinary file, or - (the standard output). Multiple  file  names
          may be given as a single argument separated by commas. Each file
          will be used for one dump volume in the  order  listed;  if  the
          dump  requires  more volumes than the number of names given, the
          last file  name  will  used  for  all  remaining  volumes  after
          prompting  for  media changes. If the name of the file is of the
          form host:file or user@host:file dump writes to the  named  file
          on  the  remote  host  (which should already exist, dump doesn't
          create a new remote file) using rmt(8).  The default  path  name
          of the remote rmt(8) program is /etc/rmt; this can be overridden
          by the environment variable RMT.

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

   -h level
          Honor  the user nodump flag UF_NODUMP only for dumps at or above
          the given  level.   The  default  honor  level  is  1,  so  that
          incremental  backups  omit  such  files  but full backups retain
          them.

   -I nr errors
          By default, dump will ignore the first 32  read  errors  on  the
          file  system  before  asking  for operator intervention. You can
          change this using this flag to any value. This  is  useful  when
          running  dump  on  an active filesystem where read errors simply
          indicate  an  inconsistency  between  the  mapping  and  dumping
          passes.

          A value of 0 means that all read errors will be ignored.

   -jcompression level
          Compress  every  block  to  be  written  on the tape using bzlib
          library. This option will work only when dumping to  a  file  or
          pipe  or,  when  dumping  to  a tape drive, if the tape drive is
          capable of writing variable length  blocks.  You  will  need  at
          least  the  0.4b24  version  of  restore  in  order  to  extract
          compressed tapes. Tapes written using compression  will  not  be
          compatible  with  the  BSD tape format. The (optional) parameter
          specifies the compression level  bzlib  will  use.  The  default
          compression  level is 2. If the optional parameter is specified,
          there should be no white space between the option letter and the
          parameter.

   -k     Use  Kerberos  authentication  to  talk  to remote tape servers.
          (Only available  if  this  option  was  enabled  when  dump  was
          compiled.)

   -L label
          The  user-supplied  text  string  label  is placed into the dump
          header, where tools like restore(8) and file(8) can  access  it.
          Note that this label is limited to be at most LBLSIZE (currently
          16) characters, which must include the terminating \0.

   -m     If this flag is specified, dump will  optimise  the  output  for
          inodes  having been changed but not modified since the last dump
          ('changed' and 'modified' have the meaning defined in stat(2) ).
          For  those  inodes, dump will save only the metadata, instead of
          saving the entire  inode  contents.   Inodes  which  are  either
          directories  or have been modified since the last dump are saved
          in a regular way. Uses of this flag must be consistent,  meaning
          that either every dump in an incremental dump set have the flag,
          or no one has it.

          If you use this option, be aware that many programs that  unpack
          files  from archives (e.g. tar, rpm, unzip, dpkg) may set files'
          mtimes to dates in the past.  Files installed in  this  way  may
          not be dumped correctly using "dump -m" if the modified mtime is
          earlier than the previous level dump.

          Tapes written using such 'metadata  only'  inodes  will  not  be
          compatible  with  the  BSD  tape  format  or  older  versions of
          restore.

   -M     Enable the multi-volume feature. The name specified  with  f  is
          treated  as a prefix and dump writes in sequence to <prefix>001,
          <prefix>002 etc. This can be useful when dumping to files on  an
          ext2/3/4  partition,  in  order  to  bypass  the  2GB  file size
          limitation.

   -n     Whenever dump requires operator attention, notify all  operators
          in the group operator by means similar to a wall(1).

   -q     Make  dump  abort  immediately  whenever  operator  attention is
          required, without  prompting  in  case  of  write  errors,  tape
          changes etc.

   -Q file
          Enable  the  Quick  File Access support. Tape positions for each
          inode are stored into the file file which is used by restore (if
          called  with parameter -Q and the filename) to directly position
          the tape at the file restore is currently working on. This saves
          hours  when restoring single files from large backups, saves the
          tapes and the drive's head.

          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 dumping to local tapes (see above)
          or to local files.

   -s feet
          Attempt to calculate the amount of tape needed at  a  particular
          density.  If  this  amount  is  exceeded, dump prompts for a new
          tape. It is recommended to be a bit conservative on this option.
          The  default  tape length is 2300 feet. Specifying the tape size
          overrides end-of-media detection.

   -S     Size estimate. Determine the amount of space that is  needed  to
          perform  the  dump  without  actually  doing it, and display the
          estimated number of bytes it will  take.  This  is  useful  with
          incremental dumps to determine how many volumes of media will be
          needed.

   -T date
          Use the specified date as the starting time for the dump instead
          of the time determined from looking in /var/lib/dumpdates .  The
          format of date is the same as that of ctime(3)  followed  by  an
          rfc822  timezone  specification:  either  a  plus  or minus sign
          followed by two digits for the number of hours  and  two  digits
          for  the  minutes.   For  example, -0800 for eight hours west of
          Greenwich or +0230 for two hours and a half east  of  Greenwich.
          This  timezone  offset  takes into account daylight savings time
          (if applicable to  the  timezone):  UTC  offsets  when  daylight
          savings  time  is  in effect will be different than offsets when
          daylight  savings  time  is  not   in   effect.   For   backward
          compatibility,  if  no  timezone  is  specified, a local time is
          assumed.  This option is useful for automated dump scripts  that
          wish  to  dump  over a specific period of time. The -T option is
          mutually exclusive from the -u option.

   -u     Update the file /var/lib/dumpdates after a successful dump.  The
          format  of  /var/lib/dumpdates is readable by people, consisting
          of one free format record per line: filesystem  name,  increment
          level  and  ctime(3)  format  dump  date  followed  by  a rfc822
          timezone specification (see the -u option for  details).  If  no
          timezone  offset  is  specified, times are interpreted as local.
          Whenever the  file  is  written,  all  dates  in  the  file  are
          converted  to  the  local  time  zone,  without changing the UTC
          times. There may be only one entry per filesystem at each level.
          The  file  /var/lib/dumpdates may be edited to change any of the
          fields, if necessary.

   -v     The -v (verbose) makes dump to  print  extra  information  which
          could be helpful in debug sessions.

   -W     Dump  tells  the  operator  what file systems need to be dumped.
          This information is gleaned from  the  files  /var/lib/dumpdates
          and /etc/fstab.  The -W option causes dump to print out, for all
          file systems in /var/lib/dumpdates , and recognized file systems
          in  /etc/mtab  and  /etc/fstab.   the  most recent dump date and
          level, and highlights those that should be  dumped.  If  the  -W
          option  is  set,  all  other options are ignored, and dump exits
          immediately.

   -w     Is like -W, but prints only recognized filesystems in  /etc/mtab
          and /etc/fstab which need to be dumped.

   -y     Compress  every  block  to  be written to the tape using the lzo
          library.  This doesn't compress as well as the zlib library  but
          it's  much faster.  This option will work only when dumping to a
          file or pipe or, when dumping to a tape drive, if the tape drive
          is  capable of writing variable length blocks.  You will need at
          least  the  0.4b34  version  of  restore  in  order  to  extract
          compressed  tapes.  Tapes  written using compression will not be
          compatible with the BSD tape format.

   -zcompression level
          Compress every block to  be  written  on  the  tape  using  zlib
          library.  This  option  will work only when dumping to a file or
          pipe or, when dumping to a tape drive,  if  the  tape  drive  is
          capable  of  writing  variable  length  blocks. You will need at
          least  the  0.4b22  version  of  restore  in  order  to  extract
          compressed  tapes.  Tapes  written using compression will not be
          compatible with the BSD tape format.  The  (optional)  parameter
          specifies  the  compression  level  zlib  will  use. The default
          compression level is 2. If the optional parameter is  specified,
          there should be no white space between the option letter and the
          parameter.

   Dump requires operator intervention on these conditions: end  of  tape,
   end  of  dump, tape write error, tape open error or disk read error (if
   there is more than a threshold of nr errors). In addition  to  alerting
   all  operators  implied by the -n key, dump interacts with the operator
   on dump's control terminal at times when dump can no longer proceed, or
   if  something  is  grossly  wrong.  All  questions  dump  poses must be
   answered by typing "yes" or "no", appropriately.

   Since making a dump involves a lot of time and effort for  full  dumps,
   dump  checkpoints  itself  at the start of each tape volume. If writing
   that volume fails for some reason, dump will, with operator permission,
   restart  itself from the checkpoint after the old tape has been rewound
   and removed, and a new tape has been mounted.

   Dump tells the  operator  what  is  going  on  at  periodic  intervals,
   including  usually  low estimates of the number of blocks to write, the
   number of tapes it will take, the time to completion, and the  time  to
   the  tape  change.  The output is verbose, so that others know that the
   terminal controlling dump is busy, and will be for some time.

   In the event of a catastrophic disk event, the time required to restore
   all  the  necessary  backup  tapes  or  files  to disk can be kept to a
   minimum by staggering the incremental dumps.  An  efficient  method  of
   staggering incremental dumps to minimize the number of tapes follows:

   ---      Always start with a level 0 backup, for example:
                 /sbin/dump -0u -f /dev/st0 /usr/src

          This  should  be done at set intervals, say once a month or once
          every two months, and on a set of  fresh  tapes  that  is  saved
          forever.

   ---      After  a  level  0,  dumps of active file systems are taken on a
          daily basis, with this sequence of dump levels:
                 3 2 5 4 7 6 9 8 9 9 ...

          For the daily dumps, it should be possible to use a fixed number
          of  tapes  for  each  day,  used on a weekly basis. Each week, a
          level 1 dump is taken, and  the  daily  Hanoi  sequence  repeats
          beginning  with  3. For weekly dumps, another fixed set of tapes
          per dumped file system is used, also on a cyclical basis.

   After several months or so, the  daily  and  weekly  tapes  should  get
   rotated out of the dump cycle and fresh tapes brought in.

   Another  backup  strategy  is the Tower of Hanoi sequence, which reuses
   older tapes in a way that for newer dates the available restore  points
   are     more     frequent,     then     for     older     dates    (see
   http://en.wikipedia.org/wiki/Backup_rotation_scheme   for    additional
   information).

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

ENVIRONMENT

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

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

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

FILES

   /dev/st0
          default tape unit to dump to

   /var/lib/dumpdates
          dump date records

   /etc/fstab
          dump table: file systems and frequency

   /etc/mtab
          dump table: mounted file systems

   /etc/group
          to find group operator

SEE ALSO

   fstab(5), restore(8), rmt(8)

DIAGNOSTICS

   Many, and verbose.

COMPATIBILITY

   The format of  the  /var/lib/dumpdates  file  has  changed  in  release
   0.4b34, however, the file will be read correctly with either pre-0.4b34
   or 0.4b34 and later versions of dump provided that the machine on which
   dump  is  run  did  not change timezones (which should be a fairly rare
   occurrence).

EXIT STATUS

   Dump exits with zero status on success. Startup  errors  are  indicated
   with  an exit code of 1; abnormal termination is indicated with an exit
   code of 3.

BUGS

   It might be considered a bug that this version of dump can only  handle
   ext2/3/4   filesystems.   Specifically,  it  does  not  work  with  FAT
   filesystems.

   Fewer than 32 read errors (change this with -I) on the  filesystem  are
   ignored. If noticing read errors is important, the output from dump can
   be parsed to look for lines that contain the text 'read error'.

   When a read error occurs, dump prints out  the  corresponding  physical
   disk  block and sector number and the ext2/3/4 logical block number. It
   doesn't print out the corresponding file name or even the inode number.
   The user has to use debugfs(8), commands ncheck and icheck to translate
   the ext2blk number printed out by dump into an inode number, then  into
   a file name.

   Each reel requires a new process, so parent processes for reels already
   written just hang around until the entire tape is written.

   The estimated number of tapes is not correct if compression is on.

   It would be nice if dump knew about the dump sequence,  kept  track  of
   the tapes scribbled on, told the operator which tape to mount when, and
   provided more assistance for the operator running restore.

   Dump cannot do remote backups without being run as  root,  due  to  its
   security  history.   Presently,  it works if you set it setuid (like it
   used to be), but this might constitute a security risk. Note  that  you
   can set RSH to use a remote shell program instead.

AUTHOR

   The  dump/restore  backup  suite  was ported to Linux's Second Extended
   File System by Remy Card <card@Linux.EU.Org>. 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
   <stelian@popies.net>.

AVAILABILITY

   The     dump/restore     backup     suite     is     available     from
   <http://dump.sourceforge.net>

HISTORY

   A dump command appeared in Version 6 AT&T UNIX.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.