mrkeyoor.com_
Fri 16 Oct 18:53 UTC
Automationevaluationupdated 13 Oct 2026

rclone review

Rclone is a command-line tool for copying and synchronizing files between cloud storage accounts, servers, and local folders. It gives you one set of commands for moving files across providers instead of managing a separate client for each service.

+81stars / 7d
Verdict

Our rclone run built successfully in 176 seconds but finished its test step with 223 passing results and 15 failures, so this checkout needs closer inspection before a patched release. Use it for deliberate transfers between storage providers when you can configure credentials and verify the destination. Start with copy, and enable sync only after reviewing what it will delete.

We ran it

Lab card: what happened when we ran rcloneScreenshot of rclone (rclone.org)
Install✓ · 87s654 packages
Build✓ · 176s
Tests✗ · 372s223 passed · 15 failed of 238 (go test)
Repo2684 files~346,209 lines of source · 41.7 MB · 5 CI workflows · Dockerfile

Answers from our run

Does rclone build from source?

Dependencies installed in 87 seconds (654 packages), and the build succeeded in 176 seconds. We cloned commit aeb98f9 into a clean Debian container with 3 CPUs and no project-specific setup.

Do rclone's tests pass?

Not all of them: 223 of 238 passed and 15 failed when we ran the project's own test command (go test). Some failures need services or credentials a bare container does not have.

Who should not use rclone?

Archive owners expecting sync to preserve destination-only files: the documented sync command can delete them.

What are the alternatives to rclone?

Restic, Syncthing, rsync. Our rclone run built successfully in 176 seconds but finished its test step with 223 passing results and 15 failures, so this checkout needs closer inspection before a patched release.

Setup3/587-second source install succeeds; credentials and mounts add work
Docs5/5Explicit deletion, credential, cache, and provider guidance
Community5/5October 13 push and current issues alongside proposed fixes
Maturity4/5Broad working command set; our complete suite still failed

Discussed on

  1. hnRclone: rsync for cloud storage467 points
  2. hnRclone syncs your files to cloud storage458 points
  3. hnRclone – Sync files and directories to many cloud storage providers448 points
  4. hn4x faster network file sync with rclone (vs rsync) (2025)382 points
  5. hnRclone: Rsync for cloud storage – CLI to sync between cloud storage providers246 points

Who it’s for

Operators moving files between cloud accounts such as Google Drive, S3, and Backblaze B2.
Developers who want inspectable copy and synchronization commands for scheduled jobs.
Administrators who can configure provider credentials and verify backend-specific file behavior.
Users who need a cloud filesystem mount and can budget its local cache and platform support.

Who it’s NOT for

Archive owners expecting sync to preserve destination-only files: the documented sync command can delete them.
Applications expecting an uncached cloud mount to behave like a local disk: the mount guide says many programs need write or full caching.
Teams unable to reserve cache disk space: open files cannot be evicted, and documented mount cache limits can be exceeded.
Users needing uniform metadata and checksums across providers: the README-linked feature matrix lists backend differences.
Developers requiring a clean complete suite at this commit: our test step failed with 15 failures.

Setup reality

Our sandbox installed commit aeb98f9 in 87 seconds, adding 654 packages, and built it in 176 seconds. Tests failed with exit code 1 after 372 seconds: 223 passed and 15 failed out of 238 results. The log tail shows passing lib and VFS packages followed by FAIL, without the failing assertions.

Cloud use needs named remotes configured with provider-specific OAuth authorization, access keys, or server credentials. The configuration file typically contains login information, and token-based remotes need it writable for refreshes. Local-to-local transfers can avoid cloud credentials.

We used golang:1.24-bookworm on fresh Debian with 3 CPUs and 8 GB RAM, without privileges or secrets. Mounting adds filesystem support such as FUSE on Linux or WinFsp on Windows, plus cache space for many applications. These documented requirements do not establish why our suite failed.

Sync can delete the files you meant to keep

Run rclone sync against a destination containing extra files and those files can disappear. That's the first decision to understand before pointing rclone at an archive. Its sync command documentation recommends a dry run or interactive mode because matching the source can require deletion. Choose copy when you want new and changed files transferred while preserving destination extras. The difference is small to type and expensive to misunderstand.

Rclone connects storage accounts through named remotes, so the same command structure can move files between Google Drive, Backblaze B2, an SFTP server, or local folders. Our checkout contained 2,684 files and roughly 346,209 source lines. That breadth buys you a common interface across providers. It's particularly useful when your files live in several services and you want scripts you can inspect instead of separate desktop clients for each account.

What happened when we ran it

Our rclone run installed 654 packages in 87 seconds and built successfully in 176 seconds. We cloned commit aeb98f9 on October 7, 2026, using the golang:1.24-bookworm image in an unprivileged Debian container with 3 CPUs, 8 GB of RAM, and no secrets. The checkout occupied 41.7 MB. These are source-setup measurements, so they don't tell you how quickly a published binary starts or how fast a cloud transfer runs.

The test step failed with exit code 1 after 372 seconds. The supplied summary reports 223 passed and 15 failed out of 238 Go test results. The log tail shows successful packages under lib and vfs, including the VFS cache, downloaders, and writeback packages, followed by the final FAIL. It doesn't contain the failed package names or their assertions. Missing credentials, container restrictions, and code defects would all be guesses from this excerpt.

Our scan found 5 CI workflow files and a Dockerfile, but no dedicated tests directory. Passing package results in the log show why that directory signal alone cannot establish whether Go checks exist. Installation and compilation worked in this environment. The complete suite didn't. Anyone contributing a backend or shipping a patched build should examine the full failure log before accepting this commit through a release gate.

Cloud credentials are a separate setup job

The 654-package install didn't configure a storage account. The README sends you to the website for installation and provider instructions, and rclone's configuration guide recommends the interactive rclone config command. Depending on the backend, you'll need an OAuth authorization, access keys, or server login details. A local-to-local operation can avoid cloud credentials entirely. A working compiler gives you no evidence that a particular provider login or permission policy is correct.

Treat rclone.conf as a credential file. The configuration guide says it typically contains login information and should have restricted permissions. Token-based remotes also need it writable so refreshed tokens can be saved. Optional configuration encryption adds an unlock requirement for unattended jobs. I'd establish that service account and its access boundaries before scheduling transfers, then verify the intended remote with a harmless listing. A readable configuration file is part of the deployment.

A cloud mount needs cache space and filesystem support

Rclone's mount documentation says many applications need --vfs-cache-mode writes or full because uncached writes are sequential. A mounted bucket therefore deserves more thought than a local directory shortcut. The documented Windows route requires WinFsp, while Linux uses FUSE. Container permissions and filesystem support need their own check. None of those platform requirements explains the 15 failures in our source run, whose failing assertions weren't supplied.

Cache storage is separate from the 41.7 MB checkout we measured. The mount guide warns that open files cannot be evicted and cache limits can be exceeded between checks. It also warns against overlapping mounts sharing the same write cache because that can corrupt data. For an application writing large working files, reserve local space and give each mount its own cache directory. I'd choose direct copy jobs when a persistent filesystem view adds no practical benefit.

Provider support doesn't promise identical file semantics

The storage feature matrix separates checksum support, modification times, and other backend capabilities. Read the row for your actual service before deciding how to verify an archive. The README's integrity features are useful, but cloud providers expose different information. A common command cannot manufacture metadata the destination doesn't support. Compare representative files and their restore behavior before moving the only remaining copy of a folder.

With roughly 346,209 source lines in our checkout, the broad backend list also means your route through rclone is only a slice of the project. Open issue 10083 reports VFS directory changes staying invisible after deletion and cache-forget operations. That's a specific mount report, separate from our sandbox failures. Developers depending on fresh directory listings should follow that discussion and validate their own application behavior before adopting a mount as shared working storage.

October maintenance supports a trial, not blind trust

The last push was October 13, 2026. GitHub listed 60,281 stars and 1,324 open issues and PRs, and v1.75.2 shipped on October 9. The issue feed showed current VFS reports alongside proposed fixes. Taken together, these are signs of active maintenance. The combined queue count includes pull requests, so it cannot be read as a count of unresolved bugs.

Our 176-second build supports trying a source checkout, while the failed suite argues for checking the exact backend you intend to use. Choose Restic when recoverable backup snapshots are the job, Syncthing for ongoing folder synchronization between your devices, or rsync for incremental transfers between filesystem endpoints. For moving files among cloud accounts, I'd start rclone with a disposable destination and copy. Before enabling sync, inspect the dry-run deletion list against the files you intend to retain.

Alternatives

ProjectWhat it isPick it when
Restic gh↗A backup program that stores encrypted snapshots for later recovery.pick this instead when you need recoverable backup history rather than a destination that mirrors current files.
Syncthing gh↗Continuous folder synchronization between devices you control.pick this instead when the job is keeping your devices in sync rather than moving files across cloud accounts.
rsyncIncremental file transfer between local or remote filesystem endpoints.pick this instead when filesystem transfers cover the job and you do not need cloud-provider backends.

Sources

  1. Rclone README and repository
  2. Sync deletion behavior
  3. Remote configuration and credentials
  4. Mount platform and cache limitations
  5. Storage provider feature matrix
  6. VFS directory-cache report
  7. Rclone v1.75.2 release

More automation reviews

supersidian · genspark-claw · orc-claude-plugin · tiktok-views-bot · Ydisks-Xianyu-Helper · jev-gui-delegate · the whole board →