rclone
rsync for object storage: one tool that speaks S3, B2, Drive, Dropbox, SFTP and dozens more.
What it does
Copies, syncs and moves files between any two configured remotes, with checksums, bandwidth limits and a dry-run mode. rclone mount exposes a remote as a local filesystem, and the crypt wrapper encrypts names and contents before upload so the provider stores nothing readable.
rclone config # interactive, once per remote
rclone sync ~/Documents b2:my-bucket/documents --progress --dry-run
rclone mount gdrive: ~/mnt/gdrive --vfs-cache-mode writesNotes
syncmakes the destination match the source, deletions included. Run it with--dry-runfirst, every time.- It mirrors rather than versions: yesterday’s file is gone once today’s sync runs. For history, back up with restic — which can use an rclone remote as its backend — and keep rclone for moving bulk data.
mountneeds a FUSE implementation; see macFUSE.
Alternative to
| Alternative | Type | Trade-off |
|---|---|---|
| rsync | Open source | The same shape for SSH hosts rather than cloud storage |
| Cyberduck | Open source | A window with files in it, rather than a scriptable tool |
| restic | Open source | Versioned snapshots, not a mirror |
| Syncthing | Open source | Continuous peer-to-peer sync, no cloud account anywhere |
Install
brew install rclone