Backing up with dump
Running a backup with
dump is fairly
straightforward. The following command does a full backup of Linux with
all ext2 and ext3 file systems to a SCSI tape device:
dump 0f /dev/nst0 /boot
dump 0f /dev/nst0 /
In this example, our system has two file systems. One for /boot and another for / -- a common configuration. They must be referenced individually when a backup is executed. The /dev/nst0 refers to the first SCSI tape, but in a non-rewind mode. This ensures that the volumes are put back-to-back on the tape.
An interesting feature of
dump is its built-in
incremental backup functionality. In the example above, the 0
indicates a level 0, or base-level, backup. This is the full system backup
that you would do periodically to capture the entire system. On subsequent
backups you can use other numbers (1-9) in place of the 0 to change the
level of the backup. A level 1 backup would save all of the files that
had changed since the level 0 backup was done. Level 2 would backup
everything that had changed from level 1 and so on. The same function can
be done with
tar, using scripting, but it
requires the script creator to have a mechanism to determine when the last
backup was done.
dump has its own mechanism,
writing an update file (/etc/dumpupdates) when it performs a backup. The
update file is reset whenever a level 0 backup is run. Subsequent levels
leave their mark until another level 0 is done. If you are doing a
dump will automatically
track multiple volumes.
It is possible to mark files and directories to be skipped by
The above command adds a flag to a file to tell
To restore information saved with
restore command is used. Like
dump has the ability
to list (
-t) and compare archives to current files (
Where you must be careful with
dump is in restoring data. There are two
very different approaches, and you must use the correct one to have
dump is designed with file
systems in mind more than individual files. Therefore, there are two
different styles of restoring files. To rebuild a file system, use the
-r switch. Rebuild is designed to work on an empty file system and
restore it back to the saved state. Before running rebuild, you should
have created, formatted, and mounted the file system. You should not run
rebuild on a file system that contains files.
Here is an example of doing a full rebuild from the dump that we executed above.
restore -rf /dev/nst0
The above command needs to be run for each file system being restored.
This process could be repeated to add the incremental backups if required.
If you need to work with individual files, rather than full file systems,
you must use the
-x switch to extract them. For example, to extract
only the /etc directory from our tape backup, use the following command:
restore -xf /dev/nst0 /etc
Interactive restore (-i)
One more feature that
restore provides is an
interactive mode. Using the command:
restore -if /dev/nst0
will place you in an interactive shell, showing the items contained in the archive. Typing "help" will give you a list of commands. You can then browse and select the items you wish to be extracted. Bear in mind that any files that you extract will go into your current directory.
dump vs. tar
have their followings. Both have advantages and disadvantages. If you are
running anything but an ext2 or ext3 file system, then
dump is not available to you. However, if this is not
dump can be run with a minimum of
scripting, and has interactive modes available to assist with restoration.
I tend to use
tar, because I am fond of
scripting for that extra level of control. There are also multi-platform
tools for working with .tar files.
Virtually any program that can copy files can be used to perform some
sort of backup in Linux. There are references to people using
dd for backups.
cpio is another packaging utility along the
tar. It is much less common.
dd is a file system copy utility that makes binary
copies of file systems.
dd might be used to
make an image of a hard drive, similar to using a product like Symantec's
dd is not file based, so you
can only restore data to an identical hard drive partition.