rclone: rsync for cloud storage, with 70+ providers
The rclone repository: a Go command-line tool that copies, syncs, mounts and checks files across local disks and more than 70 cloud and object storage providers, with optional encryption.
Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?
rclone/rclone
- Stars
- 60.3k
- Forks
- 5.5k
- Language
- Go
- Licence
- MIT
- Last push
- 15 Oct 2026
On GitHub: "rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files
Open on GitHubrclone (about 60,300 stars on GitHub) is maintained by Nick Craig-Wood and a wide contributor base. It speaks to S3 and S3-compatible services, Backblaze B2, Google Drive, OneDrive, Dropbox, SFTP, WebDAV, Nextcloud and dozens more through one set of commands: copy, sync, move, check, mount, serve. A crypt remote wraps any backend with client-side encryption of file names and contents.
In a backup plan rclone is the transport: it pushes a restic or Borg repository, a directory of database dumps or a Proxmox Backup Server datastore export to off-site storage, and rclone check proves the copy matches. restic can also use rclone directly as a backend, which gives restic access to every provider rclone supports.
Install it with your package manager (apt install rclone, brew install rclone) or with the official installer script, curl https://rclone.org/install.sh | sudo bash, which fetches the current release. Then configure a remote interactively and try it:
rclone config
rclone lsd remote:
rclone copy /var/backups/db remote:backups/db --progress
rclone sync /var/backups/db remote:backups/db --dry-run
rclone check /var/backups/db remote:backups/db --one-way
Careful: rclone sync makes the destination identical to the source, which means it deletes files on the destination that no longer exist locally. Always run it with --dry-run first, and prefer copy or sync --backup-dir for backup targets so that an accidental local deletion does not propagate. Credit to the rclone authors; the project is MIT licensed and its documentation at rclone.org covers every backend’s quirks.
Did this work for you?
No votes yet. Be the first.
If it did not work, the report form below tells the editors what went wrong.
See also
- 0336 Back up and restore a Docker named volume to a tar archive A bash script that copies the contents of a named Docker volume into a .tar.gz on the host, and restores an archive… Intermediate · Step by step · Linux, macOS Script Backup tools · Docker basics 15 Oct 2026
- 0363 Restore drill: prove your backup works in 15 minutes A repeatable procedure to restore one file and one database from your newest backup into a scratch location, compare the result with… Intermediate · Step by step · Linux, macOS Article Backup tools · Strategy & restore drills 15 Oct 2026
- 0364 Schedule PostgreSQL and MySQL dumps with systemd timers Write one dump script for PostgreSQL and MySQL, run it from a systemd service and timer instead of cron, keep two weeks… Intermediate · Step by step · Linux Article Backup tools · PostgreSQL 15 Oct 2026
- 0365 Proxmox Backup Server: first setup and first restore Install Proxmox Backup Server, create a datastore and a backup user, connect it to Proxmox VE as storage, run the first VM… Intermediate · Step by step · Linux Article Backup & restore · Backup tools 15 Oct 2026
- 0366 restic backup wrapper with tagging, retention and a weekly check A bash wrapper that runs restic backup on a fixed list of paths, applies a keep-daily/weekly/monthly policy with forget and prune, runs… Intermediate · Step by step · Linux, macOS Script Backup tools · Backups & syncing 15 Oct 2026
History
Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.
- Dominik +1,602 chars