Skip to main content

Tool Comparison and Architecture

Use each tool for the job it does best.

Quick Summary

If you want both fast restores and real rollback history:

  1. Use rsync to build a clean local snapshot tree
  2. Use restic to store encrypted history of that tree
  3. Use rclone to copy the local tree (or the repository) offsite
NeedTool
Fast local mirrorrsync
Multi-provider replicationrclone
Encrypted backup historyrestic

Why Not Use Only One Tool?

  • Only rsync: you get "latest" but not many restore points.
  • Only rclone sync: sync can delete old versions and is not a snapshot system.
  • Only restic: you get great history, but you might still want a local "current" folder for very fast restores.
flowchart LR
A[Production Data] --> B[rsync local snapshot]
B --> C[restic repository snapshots]
B --> D[rclone offsite mirror]

Example Data Flow

architecture-example.sh
# local current copy
rsync -a --delete /srv/app/ /backup/app/current/

# restic history
restic backup /backup/app/current --tag daily --host app-01

# offsite copy
rclone sync /backup/app/current remote-prod:backups/app/current