			ReiserFS-Dump
			=============

This provides a "replacement" to the standard Linux 'dump' utility,
that can "dump" other file system types besides ext2/ext3.

It does this by parsing the command line and extracting the important
information (file system to be dumped, where to dump to, and whether to record
the dump time). It will check for the file system type and for the existance of
a saved copy of 'dump' and then decide whether to call the saved (real) 'dump'
or use 'tar' in a dump-like mode.


Usage
-----

reiserfsdump <dump options> <dump option parameters> [<tar parameters>]

Dump options: Options as to 'dump,' some with parameters. See
	"Differences" below for the options and parameter actually
	supported.

Tar options: If reiserfsdump decides to use 'tar,' these options will
	be passed along to it. Useful options include '--gzip' and
	'--exclude.'


Differences
-----------

Options: Only a "minimal" set of options are supported: The dump level
	(0-9, required), the update flag (u, optional), the output file
	name (f, required) are recognized. The parameters of other
	parameterized options (BbdeFhLsT) are collected, but ignored;
	so are all other options.

Extra parameters: All parameters remaining after parsing are passed to
	'tar' as-is; this can be used if you just want a simple set of
	dump scripts and would like to exclude some directories from
	dumping, or pass other special options to 'tar.'

Format: The file format can of course only be read by another 'tar',
	and not by 'restore'.

Messages: The output messages will differ. To provide some minimal
	compatibility, it will output "DUMP IS DONE" after a
	successful dump (this works fine with our system).

Access times: Unlike 'dump', 'tar' modifies the access times. When
	using LVM <http://www.sistina.com/lvm/>, you may want to
	dynamically create a snapshot volume to dump from.

Permissions: As 'tar' has to obey file system access rights, you can
	only dump files that are readable by the user/group that is
	running 'reiserfsdump'. Often, this will be 'operator', and
	not 'root'. The simplest way out is to create a set-uid-'root'
	copy of 'tar', which is only executable by members of the
	'operator' group. The latter is to prevent ordinary users from
	using this tool to read (and write!) arbitrary files.
	Alternatively, you may want to use the CAP_DAC_READ_SEARCH
	capability of newer kernels
	<ftp://ftp.kernel.org/pub/linux/libs/security/linux-privs/>.

mtab:	If you are not running reiserfsdump as 'root', you may want to
	apply a small patch to the 'mount' program (versions 2.10r and
	older), if the caller of this program uses wild names for the
	file system mount point or block device. The patch is part of
	this distribution.


Installation
------------

- Optionally apply util-linux-2.10r-mount-nfv.diff to your 'mount' and
  recompile (see note above about mtab above). The patch allows any user
  to run "mount -nfv [dir|dev]" to get the mount entry for the named path,
  even if symlinks etc. are used generously (this information is publicl
  available anyway, but not easy for a program to determine).

- If you plan to run 'reiserfsdump' as non-root, you may want to make
  a "read-all" version of tar (if you use capabilities on your system,
  use them):
  # cp /bin/tar /sbin/dumptar
  # chown operator.operator /sbin/dumptar
  # chmod 4750 /sbin/dumptar

- Activate the new front-end and allow it to fall back to the original
  dump. If /sbin/dump.bin exists, it will be used for ext2/ext3 dumps.
  This behavior can be modified in the configuration section at the head
  of reiserfsdump.
  # mv /sbin/dump /sbin/dump.bin
  # mv reiserfsdump /sbin/dump

- Perform a level-0 dump of your file systems (optional, but advised):
  # dump 0uf <dumpdevice|dumpfile> <mountpoint|directory>


Utility programs
----------------

As an example for a simple backup system to another hard disk,
'dumpall' is included, which is called by
'zzz_backup.{daily,weekly,monthly}' at appropriate intervals from
'cron.' Having done a level-0 dump will reduce the size of your
monthly backups.
