-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome! This is Rabak, a backup tool
Rabak is a reliable rsync based backup system, simple to configure,
simple to run, simple to restore data with.
Rabak’s strategy is to always make full backups, usually to one or more
attached external hard drives. Using rsync’s clever hard linking abilities,
the resulting backups use up little target space. Rabak uses simple and
flexible configuration files and supports backup to or from remote machines.
It even supports remote to remote backup (think remote control).
Rabak is very good for unattended safe remote backups, and has support
for postgresql and mysql backups via database dump streaming.
It’s simple to configure different, multiple sources for one backup set.
There’s support for file filters that hide the complexity of the rsync filters
(and make them actually usable).
You need Linux or Cygwin. Other plattforms may work too. We didn’t try.
You need rsync. I know rabak does’t work before version 2.6.4.
Maybe even a newer one is requires. The newer the better.
You need Perl, I don’t know which version. Probably >= 5.8
You need the Mail::Send and IPC::Run perl module. Fetch it from CPAN:
cpan -i Mail::Send
cpan -i IPC::Run
To use faster-dupemerge, you will need the Perl module Digest::SHA1.
To install it do:
cpan -i Digest::SHA1
Make a directory /usr/local/rabak
and copy the contents of this
directory there.
Change to the installation directory:
cd /usr/local/rabak
Look at the documentation:
./rabak doc
Make a test backup:
./rabak -c rabak.sample.cf backup sample
Have a look at the result:
ls -lA test-bak
Read the documentation:
perldoc RabakLib::Doc
Configure Rabak:
cp rabak.sample.cf rabak.cf
nano -w rabak.cf
The ‘cd’ is a bit awkward, I know. I’ll find a trick to let
Rabak find it’s libraries later.
If you have the right to run mount
and mknod
, you can test more
features by doing:
./stuff/sample-env-make
This produces a test environment in /tmp/rabak-sample-data
. Data will be
backed up into /tmp/rabak-sample-backup
. You can run the sample configurations
provided in rabak.sample.cf
:
./rabak -c rabak.sample.cf backup sample_firstof
./rabak -c rabak.sample.cf -i Tue backup sample_targetgroup
./rabak -c rabak.sample.cf -i Tue2 backup sample_targetgroup
When you’re done, you can remove the test environment:
./stuff/sample-env-remove
Check out the docs and the *.cf
files for more insight.
Documentation is available through rabak itself:
./rabak doc
The most recent version and complete docs are available at:
www.raisin.de/rabak
You can extend Rabak and add backup types. Have a look into
the RabakLib/Path/Source
directory.
Have fun!
Dietrich Raisin <[email protected]>
Stephan Hantigk <[email protected]>
See the LICENSE file.