Dbackup
dbackup is a disk-based client-server backup system for Linux or other UNIX systems.
It works on the principal that disks are cheaper and more reliable than tapes.
Backups are started by cron probably on a daily basis by the client. The client backs up individual filesystems / directories with tar and sends the result to the server, which stores them in a simple tree-based directory structure.
Restores are trivial, either by using the supplied restore client, or by simply copying the appropriate tar files off the server and uncompressing them.
Features
- Backup very large filesystems as long as you have the disk space
- Works with very large numbers of servers / filesystems
- No state is kept on the client, it’s all on the server
- Backup to multiple backup servers in round-robin
- Configuration can be global or per-server
- Authentication for client restores (optional)
- Supports optional gzip or bzip2 compression
- Supports client-side gpg encryption
- Trivial procedure for restores
- Daily / Full incremental backups
Requirements
- Perl version 5.005 or above is required, but much better performance will be seen with 5.6 or above.
- Digest::MD5
- While not required, the Term::ProgressBar module is recommended for restores
Howto
- Install the package, either by the RPMs or extract the tarball and follow the INSTALL instructions.
- Edit the client config file in /etc/dbackup-client/config to specify the address of your backup servers:
# /etc/dbackup-client/config # # dbackup client configuration. Perl syntax. # The following are the defaults. A list of servers can be given using # syntax: [ "host_a", "host_b" ] $backup_servers = [ "backup1.mydomain.com", "backup2.mydomain.com" ]; $backup_port = 38771; # DO NOT CHANGE THIS 1;
- Initiate a backup on the client:
client1:~# dbackup backup /home/httpd
Any errors will be printed to the screen. You can use the -v flag to show details.
- Request a list of available backups from the server. You can run this from another machine by specifying the -h flag:
client1:~# dbackup list Available backups for client1: Directory Run Level Date Size /home/httpd 1 0 2006-10-24 17:02 2598912000 ( 2.4 Gb)
- Test a restore to a temporary directory on a second machine:
client2:~# dbackup restore -d /tmp -h client1 /home/httpd Restoring /home/httpd on localhost to /tmp (Backup 1.0) Restored 2.40 Gb in 59 seconds. 100% [=========================================================================================]D 0h00m00s
Documentation
Documentation is in the program files in POD formation.
To view the documentation on the server, run “perldoc dbackup_server“.
Getting dbackup
The current version is 1.1.0, and represents a major rewrite from the 1.0 tree. It is not backward compatible.
| Source | dbackup-1.1.0.tar.gz |
| Source RPM | dbackup-1.1.0-1.src.rpm |
| Client RPM | dbackup-client-1.1.0-1.i386.rpm |
| Server RPM | dbackup-server-1.1.0-1.i386.rpm |
Reporting Bugs
Please submit any and all bug notifications you have to david-dbackup@dparrish.com.
Contact
You can contact the author (David Parrish) at david-dbackup@dparrish.com.