NAME
faubackup - Backup System using a Filesystem for Storage
SYNOPSIS
faubackup [options] srcdir [destdir]
faubackup --clean[=destdir]
faubackup [--list[=destdir]]
DESCRIPTION
faubackup uses a filesystem on a hard drive for incremental and full
backups. This enables the backup to be accessable through standard
filesystem tools.
Later Backups to the same filesystem will automatically be incremental,
as unchanged files are only hard-linked with the existing version of
the file.
Executing ’faubackup srcdir destdir’ is a bit like ’cp -a srcdir
destdir/‘date‘’. That is, it will copy everything from srcdir to a
subdirectory of destdir. This directory is named after the time of the
backup (format ’YYYY-MM-DD@hh:mm:ss’). All filenames, permissions,
contents will be preserved. It can cope with soft-, hardlinks and with
holes in files.
The big advantage over a simple copy is the use of hard-links between
unchanged files to minimize disk space usage. You can execute
faubackup on a regular basis, and any files which haven’t changed
between these calls are not copied again, but are hardlinked between
the various backup-directories. This is similar to incremental
backups, where only changed files are written to the tape.
If srcdir or destdir contains a colon (:), it is considered a remote
backup. The part preceeding the colon will be the machine to backup
from, the part following the colon will be the directory to backup.
faubackup must be able to get a root shell account on the remote
machine, in order to backup its files. On the remote machines, PATH
should include the directory containing the faubackup sub-programs.
When using ssh, this can be achieved by setting it in
/root/.ssh/environment.
If destdir is omitted, a default will be chosen. It contains the
machine-name and srcdir of the backup and may be customized via
faubackup.conf(5)
MANAGING BACKUPS
FauBackup may be configured to keep certain backups for a long time and
remove others. Have a look at traditional backup systems. You have
tapes for daily, weekly, monthly and yearly backups, and store them
according to your local backup policy. FauBackup can do this for you on
harddisks, too. That is, it can keep some yearly, weekly, etc. backups
for you and automatically remove other obsoleted backups.
Four different backup-types are recognized: daily, weekly, monthly and
yearly. The first existing backup in such an interval will be
considered belonging to the coresponding type. Thus, the first backup
in a month (eg. 2000-12-01@06:30:00) will be a monthly backup; the
first backup in 2001 will be of all four types, as January 1st, 2001 is
a Monday.
The number of backups kept for each type is configureable (See
faubackup.conf(5) ). If a backup doesn’t belong to such a type (eg.
second backup in a day), or is too old for that type, it will be
removed on faubackup --clean.
DISPLAYING INFO
FauBackup can print some informations about the backups kept on
filesystem. If used without verbose output, it just displays the first
daily, weekly, monthly and yearly backup made.
If used with verbose output, a list of all backups will be displayed.
For every backup, the number of files which was added or removed by
this backup will be shown, together with the overall size of these
files and the size of files exclusively used by this backup. In
addition, a backup will get marked, when it is the first of an backup
interval (daily, weekly, ...).
OPTIONS
-h, --help
Show short help page and exit.
--version
Show version string and exit.
-l, --list [destdir]
Show information about the backups already created. If combined
with verbose (see below), information about the size of the
backups is given, too. See DISPLAYING INFO above. If no
destdir is given, search for possible backups in the standard
location.
-v, --verbose
Show verbose output. This includes all filenames being
read/written.
--ignore=pattern
Add patterns for files that should not be backed up. Those will
be directly passed to faubackup-find.
--rsh=command
The command used to get access to remote machines. Default is
to use the FAUBACKUP_RSH environtment variable if it exists,
"rsh" otherwise.
-o srcdir, -i destdir
The ’do only half the backup’ options. Use them to pipe your
backup to some other location. (’faubackup -o srcdir | somepipe
| faubackup -i destdir’)
--clean [destdir]
Remove old backups from destdir. If destdir is omitted, search
for possible destination directories in the standard location.
--years=number, -y number, --months=number, -m number, --weeks=number,
-w number, --days=number, -d number
Specify how long to keep backups on --clean. These options
override the settings in the configuration file.
--keep-last
As described above, the first backup in an interval will be kept
for later use. If you do an automated backup in the morning and
want to do an additional backup after some important work, this
is annoying. When using this option, the last daily backup will
be kept, instead of the first. Other backups will be unaffected
(weekly, etc).
--atime-preserve
This option is directly passed to faubackup-gather. When set,
faubackup tries to reset the access time after reading files.
Doing so will update the ctime, too. Don’t use this option if
you are using other backup software in parallel, because it
might think that all your files have changed.
--one-file-system, -L
This option is directly passed to faubackup-find. When set,
then faubackup won’t backup directories from file systems other
than the one containing the source directory.
ENVIRONMENT
FAUBACKUP_CONF
Location of the global configuration file.
@SYSCONFIDR@/faubackup.conf is used if the environment variable
is not set.
FAUBACKUP_RSH
Default value for --rsh switch.
FILES
/etc/faubackup.conf
Main Configuration file. See faubackup.conf(5) for details. You
can use the environment variable FAUBACKUP_CONF to use another
location.
destdir/date/
Your backup will be available here.
destdir/date/..inodes
This directory contains all inodes included in this backup.
They are hashed across several (sub-)directories inside
..inodes. This directory is neede to be able to hardlink with
existing backups of the same srcdir.
NOTES
You should not rely on your harddisk as the sole backup medium ;-).
The Author recommends to regularly tar (a selection of) the disk backup
to a tape, which should be stored in a different room.
Additionaly, you should be careful when creating your backup
filesystem. As directories cannot be shared across several backups,
they consume an considerable amount of inodes. On filesystems with a
limited number of inodes (like ext2), one may need to increase the
inode limit on filesystem creation.
BUGS
You need a filesystem with stable device id and inode number so that
faubackup can correctly find your files again. This may be violated by
some remote filesystems, for example Samba.
Please report all bugs to faubackup-user@lists.sourceforge.net.
Please send your ideas/comments to help improve FauBackup.
SEE ALSO
faubackup.conf(5), faubackup-gather(8), faubackup-scatter(8),
faubackup-find(8),
COPYRIGHT
FauBackup is Copyright (c) 2000-01 Dr. Volkmar Sieh, (c) 2000-06 Martin
Waitz. Developed at Friedrich-Alexander-University Erlangen-Nuremberg.
FauBackup comes with ABSOLUTELY NO WARRANTY. This is free software;
you can redistribute it and/or modify it under the terms of the GNU
General Public License as published by the Free Software Foundation;
either version 2, or (at your option) any later version. Look at
COPYING for details.
AUTHOR
This manual page was written by Martin Waitz <tali@admingilde.org>.
CONTACT
mailto:faubackup-user@lists.sourceforge.net
June 24, 2003