GPL (GNU General Public License)    
4.2/5 11
vbackup is a modular program that performs easy system backups.





vbackup is a software that performs easy system backups. It can be extended by user scripts and can be fully configured to fit a system needs. vbackup can be customized to perform full or incremental backups where they are supported.

vbackups consists of a set of scripts (modules) that handle various aspects of a backup. Currently it supports:

Filesystem backup using tar
XFS backup using xfsdump
PostgreSQL database backup
MySQL database backup
Debian package list backup

It can store the backups to a local or a remote NFS partition that may be mounted on-demand.

All of vbackup behaviour can be fully extended and other methods can be easily added.

Debian users: you may consider using the packaged version. Just add this to your /etc/apt/sources.list:

deb http://hydra.it.teithe.gr/debian unstable main

and install it using:

apt-get update ; apt-get install vbackup

You may get the key by running:

wget -q -O - http://hydra.it.teithe.gr/debian/hydra.key | apt-key add -
apt-get update


GNU find
GNU tar - for the tar method
xfsdump - for the xfsdump method


# ./configure --sysconfdir=/etc
# make
# make install

This will install vbackup to /usr/local and assume the configuration files will
be placed at /etc/vbackup


For usage run:
# vbackup --help

For a list of backup methods (scripts) run:
# vbackup --list

To get some information about a module run:
# vbackup --help < module >

# vbackup --help xfsdump


Let's assume you want to
Backup to an NFS mounted space
Perform backup of two partitions using xfsdump (full and incremental)
Perform backup of directories using tar (full and incremantal)
Perform mysql and pgsql backup

1. Go to /etc/vbackup and create a folder named rc.d. This will hold all the
configuration scripts.
2. Copy from the samples directory ($prefix/share/vbackup/samples) the
following scripts to rc.d:
3. Rename sample.nfsmount to remote.nfsmount. (Any name with the extension .nfsmount will do) and edit it. Change the values of the variables to fit your needs.
4. Rename sample.umount to remote.umount and edit it. Just set the mountpoint to umount.
5. Rename sample.mysql to full.mysql and edit it. Read the note at the top of the script and set variables as needed.
6. Rename sample.pgsql to full.pgsql and edit it.
7. Copy sample.tar to level0.tar an edit it. Set the level to 0
8. Rename sample.tar to level5.tar and edit it. Set the level to 5
9. Copy sample.xfsdump to level0.xfsdump and edit it. Set the level to 0
10. Rename xfsdump to level5.xfsdump and edit it. Set the level to 5
11. Create two directories named backup.0 and backup.5 under /etc/vbackup
12. Enter backup.0 and create softlinks to the desired configuration files:
# ln -s ../rc.d/remote.nfsmount 00-remote.nfsmount
# ln -s ../rc.d/remote.umount 99-remote.umount
# ln -s ../rc.d/full.mysql 10-full.mysql
# ln -s ../rc.d/full.pgsql 10-full.pgsql
# ln -s ../rc.d/level0.tar 20-level0.tar
# ln -s ../rc.d/level0.xfsdump 30-level0.xfsdump
13. Enter backup.1 and create softlinks:
# ln -s ../rc.d/remote.nfsmount 00-remote.nfsmount
# ln -s ../rc.d/remote.umount 99-remote.umount
# ln -s ../rc.d/level5.tar 20-level5.tar
# ln -s ../rc.d/level5.xfsdump 30-level5.xfsdump
14. Copy to backup.0 and backup.1 the vbackup.conf.sample from the samples directory. Rename it to vbackup.conf and edit it as needed.
15. Check the configuration using:

# vbackup --check 0
# vbackup --check 5

To perform level 0 backup run
# vbackup 0

To perform level 5 backup run
# vbackup 5

How it works:

When you run:
# vbackup 0

The script enters directory /etc/vbackup/backup.0 and searches for files named XX-name.module, where < XX > is a number and < module > is a backup module/method.

All configurations are examined in an alphabetical order, so that the < XX >
prefix may be used to indicate the order. For each configuration file,
coresponding module (< module >) is executed using the configuration file
options. A module may be used from zero to many times.

This way you'll have to create configuration files once and perform various
types of backups, depending on your needs.

The verbosity of the backup procedure may be controlled using the -d parameter.

Level 7 is recommended.

Available modules:

The following modules are available:

mount: Mount a partition
nfsmount: Mount an NFS share
umount: Umount a partition
tar: Perform filesystem backup using GNU tar
xfsdump: Perform filesystem backup using xfsdump
mysql: Dump mysql databases
pgsql: Dump pgsql databases
Last updated on March 12th, 2012

0 User reviews so far.