File::RsyBak

Backup files/directories with histories, using rsync
Download

File::RsyBak Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Steven Haryanto
  • Publisher web site:
  • http://search.cpan.org/~sharyanto/

File::RsyBak Tags


File::RsyBak Description

File::RsyBak is a Perl module, basically just a wrapper around rsync to create a filesystem backup system. Some characteristics of this backup system:- Supports backup histories and history levels For example, you can create 7 level-1 backup histories (equals 7 daily histories if you run backup once daily), 4 level-2 backup histories (equals 4 weekly histories) and 3 level-3 backup histories (roughly equals 3 monthly histories). The number of levels and history per levels are customizable.- Backups (and histories) are not compressed/archived ("tar"-ed) They are just verbatim copies (produced by "rsync -a") of source directory. The upside of this is ease of cherry-picking (taking/restoring individual files from backup). The downside is lack of compression and the backup not being a single archive file. This is because rsync needs two real directory trees when comparing. Perhaps if rsync supports tar virtual filesystem in the future...- Hardlinks are used between backup histories to save disk space This way, we can maintain several backup histories without wasting too much space duplicating data when there are not a lot of differences among them.- High performance Rsync is implemented in C and has been optimized for a long time. rm is also used instead of Perl implementation File::Path::remove_path.- Unix-specific There are ports of rsync and rm on Windows, but this module hasn't been tested on those platforms.This module uses Log::Any logging framework.SYNOPSISFrom your Perl program: use File::RsyBak qw(backup); backup( source => '/path/to/mydata', target => '/backup/mydata', histories => , # 7 days, 4 weeks, 3 months );Or, just use the provided script from the command-line: % rsybak --source /path/to/mydata --target /backup/mydataProduct's homepage


File::RsyBak Related Software