← All posts

CLI

rclone: rsync for Every Cloud Storage Provider

rclone syncs and manages files across 70+ cloud storage providers from the command line - rsync for the cloud.

R CLI

Every cloud storage provider has its own app, its own web UI, its own quirks - and none of them compose into a script. rclone unifies them. It's a command-line program that treats S3, Google Drive, Backblaze B2, Dropbox, and 70-plus other backends (plus SFTP and plain local disk) as interchangeable remotes, so you can copy, sync, move, and mount files between any of them with one consistent set of commands - rsync's model, extended to the whole cloud.

One Interface, Many Backends

You configure remotes once, then treat them uniformly:

# Sync a local folder up to a remote rclone sync ./backups remote:backups # Copy between two different clouds rclone copy gdrive:docs s3:archive # Mount a remote as a local filesystem rclone mount remote:bucket /mnt/bucket

More Than Copying

rclone does encrypted remotes, checksummed transfers, bandwidth limiting, and can even mount a cloud bucket as a local filesystem. Its sync semantics (only transfer what changed, optionally delete extras) make it a real backup and migration tool, not just an upload command.

Rough Edges and Limitations

  • Sync is powerful and sharp. sync can delete on the destination to match the source - test with --dry-run first.
  • Provider quirks remain. Rate limits and API oddities of each backend still apply underneath.
  • Config to learn. Setting up remotes (especially OAuth ones) takes an initial pass.

For moving or backing up data across clouds and servers, rclone is the one tool that speaks to all of them.

Internal link suggestion: link "a real backup ... tool" to the restic post, which pairs with rclone for deduplicated backups to cloud remotes.