RIRB -- Reverse Incremental Rclone Backups (Helper Tool)

RIRB -- Reverse Incremental Rclone Backups (Helper Tool)


Apparently I love writing wrappers around rclone (syncrclone, lfsrclone, PyFiSync, amongst others).

I wrote another one (referecned here).

rirb -- Reverse Incremental Rclone Backup. Github Link

This mimics

$ rclone sync source: dest:curr --backup-dir dest:back/<date>` 

but saves the previous state so that it can be done without walking the destination (except when it needs to) and it works on a configuration file for consistency.

Additionally, it saves the artifacts needed to do a point-in-time recovery; though this is not the intended use case.

And, since it is between any two rclone remotes, you can use it to backup all kinds of different sources.

More About RIRB

The readme covers a great deal of information as does some of the additional docs but the baisc idea is that I am a huge fan of using rclone for backups. It is not the most advanced, sophisticated, etc. tool out there, but simplicity wins when it comes to backups.

You do not need any special tools to recover (except maybe rclone for crypt) and it is easy to understand the backup pattern.

However, it can be slow since rclone must list all files at the destination for comparison. Furthermore, using only the command line instead of a run configuration increases the chances of error.

rirb takes care of all of that! You modify a (heavily documented) configuration file and rirb takes care of calling rclone. It also automatically saves log files, file listings, and some additional diff information that may aide in recover.

Note that recovery is out of the purview of rirb, but that is okay: Just use rclone. (though see this proof-of-concept for more options.

Please check it out and let me know what you think!

1 Like