The result is the Ruby ghetto-timemachine.rb backup script!
The code is maintained here:
https://github.com/flakrat/ghetto-timemachine
So, what does it do? In a nutshell, it performs daily backups using a combination of hard links and rsync that result in a Time Machine like backup that uses very little additional space beyond the initial backup and the size of any files that change.
Example usage:
- Local source to local destination with comma separated list of excludes
./ghetto-timemachine.rb --src ~/Pictures --dest /media/USB/backup --excludes \*.raw,\*.bmp
- Local source to remote destination
./ghetto-timemachine.rb --src ~/Pictures --dest flakrat@rathole:/backup --excludes \*.raw,\*.bmp
10 1 * * * /home/flakrat/bin/ghetto-timemachine.rb --src ~/Pictures --dest flakrat@rathole:/backup --excludes \*.raw,\*.bmp
See the README for a more detailed description of the backup and rotation process.