rclone
A command-line program that synchronizes files and directories to and from cloud storage, supporting **70+ backends** through a single unified CLI — Amazon S3, S3-compatible providers (every cloud-storage entry on this index), Google Cloud Storage, Azure Blob, Backblaze B2, Wasabi, plus SFTP, WebDAV, and several decentralized stores. **Open-source Go**, drop-in single binary, no daemon required for one-shot transfers. The dominant Swiss-Army-knife for moving objects between S3 implementations.
Definition
A command-line program that synchronizes files and directories to and from cloud storage, supporting **70+ backends** through a single unified CLI — Amazon S3, S3-compatible providers (every cloud-storage entry on this index), Google Cloud Storage, Azure Blob, Backblaze B2, Wasabi, plus SFTP, WebDAV, and several decentralized stores. **Open-source Go**, drop-in single binary, no daemon required for one-shot transfers. The dominant Swiss-Army-knife for moving objects between S3 implementations.
Every S3-alternative provider's docs end with "use rclone to migrate" because no other tool covers the same surface area. The unified CLI means a single set of operator muscle memory works across providers, and the configuration model (one TOML file with named remotes) makes multi-cloud workflows tractable instead of bespoke per-provider scripting.
Migrating buckets between S3-compatible providers (single rclone command), syncing local directories to/from S3 for backup, mounting remote object storage as a local filesystem (`rclone mount`), running rclone as an **S3 gateway** (`rclone serve s3`) to expose any backend through the S3 API, scripted batch jobs across heterogeneous storage backends.