mrkeyoor.com_
Thu 03 Sept 15:37 UTC
Self-Hostedevaluationupdated 03 Sept 2026

kopia review

Kopia is a cross-platform backup program that encrypts, compresses, and deduplicates snapshots of the files and directories you choose. It can write to local disks, network servers, major cloud stores, or a shared Kopia server, but it does not create a complete image of a machine.

Verdict

Our Kopia build succeeded in 99 seconds, but 6 of 180 Go test targets failed after 696 seconds, so this commit does not earn a clean source-build recommendation. Kopia remains a strong choice for technical users who want encrypted, deduplicated file backups across several storage types and will rehearse restores. Use v0.23.1 or newer, keep the repository password outside the repository, and investigate the failed packages before standardizing on this exact commit.

We ran it

Lab card: what happened when we ran kopiaScreenshot of kopia (kopia.io)
Install✓ · 72s508 packages
Build✓ · 99s
Tests✗ · 696s174 passed · 6 failed of 180 (go test)
Repo1257 files~164,183 lines of source · 7.8 MB · 18 CI workflows · tests dir

Answers from our run

Does kopia build from source?

Dependencies installed in 72 seconds (508 packages), and the build succeeded in 99 seconds. We cloned commit 7de9f36 into a clean Debian container with 3 CPUs and no project-specific setup.

Do kopia's tests pass?

Not all of them: 174 of 180 passed and 6 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 kopia?

Anyone needing bare-metal or full-disk recovery: the README explicitly says Kopia does not image the whole machine.

What are the alternatives to kopia?

restic, BorgBackup, Duplicati. Our Kopia build succeeded in 99 seconds, but 6 of 180 Go test targets failed after 696 seconds, so this commit does not earn a clean source-build recommendation.

Setup3/572-second install and 99-second build; full tests failed
Docs5/5Clear guides cover storage, passwords, recovery, server mode, and risks
Community4/514,026 stars, same-day pushes, a forum, and heavy issue activity
Maturity4/5Long-running project with restore tools, but regressions still matter

Who it’s for

People who want encrypted file backups without giving the storage provider their keys.
Home-lab operators backing several machines into local, S3-compatible, SFTP, or WebDAV storage.
Administrators who prefer a scriptable CLI but still want an official desktop interface.
Teams prepared to test restores, run repository consistency checks, and protect the repository password separately.

Who it’s NOT for

Anyone needing bare-metal or full-disk recovery: the README explicitly says Kopia does not image the whole machine.
Users who cannot keep a repository password safe outside the backup: the getting-started guide says a forgotten password cannot be recovered and no files can be restored.
Groups expecting separate permissions from a directly shared repository: the feature guide says one password covers the repository and direct sharing has no access-control mechanism.
Operators depending on an arbitrary Rclone backend: the README calls Rclone support experimental and names only Dropbox, OneDrive, and Google Drive as tested.
Teams that require a clean source test run before deployment: 6 of 180 Go test targets failed in our sandbox, and the supplied log tail did not identify their causes.
Anyone pinning a release older than v0.23.1 without reviewing the advisory: that release fixes a rare compaction race that could lead to data loss and recommends upgrading.

Setup reality

Our sandbox installed 508 Go packages in 72 seconds and built Kopia in 99 seconds. Tests ran for 696 seconds and failed: 174 passed and 6 failed out of 180. The tail showed several successful packages followed by FAIL, without the names or causes of the 6 failures.

A local repository needs a path and a repository password. Cloud storage adds that provider's credentials and billing. Multi-machine server mode adds user accounts, TLS, network reachability, and maintenance. A forgotten repository password cannot be recovered.

Kopia backs up selected files and directories, not a bootable system image. Rclone requires a separate install and its integration is experimental. The repository has no Dockerfile, despite published container images, and building the Electron GUI involves more than the Go command-line binary.

Kopia snapshots selected files, not a bootable machine

Kopia is for file and directory backup. You choose what enters a snapshot, set retention and scheduling policies, and restore individual files or whole directory trees later. The README is explicit that it does not image an entire computer. That rules it out for bare-metal recovery by itself, but it keeps the job understandable for documents, home directories, media, and application data. Windows, macOS, and Linux users can use the command line or official desktop interface.

What happened when we ran it

Our run used commit 7de9f36 in a golang:1.24-bookworm container with 3 CPUs and 8 GB of RAM. Installing 508 packages took 72 seconds, and the build succeeded in 99 seconds. The checkout held 1,257 files, roughly 164,183 lines of source, and 7.8 MB before installation. The basic build completed without privileged access or secrets.

The full Go test command failed with exit code 1 after 696 seconds. The harness counted 174 passing and 6 failing targets out of 180. Its final lines named successful packages in the robustness, socket activation, stress, filesystem walker, runner, and CLI documentation areas, then ended with FAIL. The supplied tail did not contain the 6 failing names or their error messages. We cannot assign a cause; this commit did not pass its full suite in our stated environment.

The repository includes a tests directory and 18 CI workflow files. It has no Dockerfile in the checkout according to our scan, though Kopia publishes container images. The test failure outweighs the green build when judging this revision. Teams evaluating commit 7de9f36 should reproduce the suite with the complete log and identify whether the failures affect their platform or storage backend.

One repository password controls every encrypted snapshot

Kopia encrypts snapshots before upload, then compresses and deduplicates their contents. The repository password protects the primary encryption key and is required to list snapshots, see names, or restore files. The official guide says there is no recovery route if you forget it. Store that secret in a protected system that does not depend on the Kopia repository. A healthy backup remains unusable when its only decryption secret disappears with the failed machine.

Directly sharing a repository also means sharing its one password, and the feature guide says this mode has no access-control mechanism. Kopia Repository Server instead keeps storage credentials on the server and authenticates clients separately. It can limit users to their own snapshot and policy manifests. The server documentation notes that underlying contents are different: a user who somehow knows an object ID can read that object. Understand that boundary before treating the server as strict tenant isolation.

v0.23.1 fixes a rare race with possible data loss

Release v0.23.1 from June 16, 2026 carries an unusually direct warning. It fixes a rare compaction race that could create incomplete index sets and lead to data loss, and the project recommends upgrading. Linked issue 5371 is closed and explains the sequence involving gaps between compacted epochs. The fix shows maintainers responding to a serious problem. It also makes casual version pinning a poor policy for backup infrastructure.

Restore behavior needs its own acceptance test. Open issue 5564 reports that v0.23.1 can restore a file by filesystem path with default permissions and an epoch timestamp, while snapshot-ID syntax preserves the stored metadata. The example credentials file becomes more permissive without a warning. Until that path is fixed or documented, test ownership, permissions, links, and timestamps with the exact restore command your recovery runbook will call.

Rclone broadens storage support under an experimental label

Native choices include local and network storage, S3-compatible services, Azure Blob, Backblaze B2, Google Cloud Storage, SFTP, and WebDAV. Rclone widens the list, but the README calls its integration experimental and says some providers may not work. It names Dropbox, OneDrive, and Google Drive as tested. Rclone must be installed separately. Test an unlisted remote with representative data, reconnection, consistency checks, and a restore before relying on it.

The repository server suits several machines when users should not receive storage credentials. It adds TLS, 2 kinds of passwords, network capacity, user administration, and maintenance. Open issue 5595 reports that KopiaUI can leak status-poll sockets when an unresponsive backend leaves timed-out requests open. The report covers a specific failure and remained open. Server operators should alert on missed snapshots and stalled jobs instead of assuming the tray icon proves backups are moving.

A 2015 project remains active with 879 open items

Kopia was created in 2015, released v0.23.1 in June 2026, and received a GitHub push on September 3, 2026. The repository had 14,026 stars and 879 combined open issues and pull requests when fetched. A separate search split that total into 762 issues and 117 pull requests. The current activity is reassuring, while the queue reflects the number of platforms, providers, UI paths, and recovery cases in scope.

Restic is the cleaner encrypted backup CLI. BorgBackup fits a Unix and SSH-centered archive, while Duplicati is closer to a browser-led scheduler. Kopia sits between them with a CLI, GUI, broad storage support, and server mode. Our failed 696-second suite keeps the recommendation conditional: test the release, monitor snapshots, run consistency checks, and practice a metadata-preserving restore.

Alternatives

ProjectWhat it isPick it when
restic gh↗A focused encrypted backup CLI with many storage backends and a smaller interface.pick this instead when a command-line-only workflow is preferable to Kopia's GUI and repository server.
BorgBackupA deduplicating encrypted archiver commonly paired with SSH-accessible repositories.pick this instead when Unix and SSH are the center of the deployment and cloud-provider breadth matters less.
DuplicatiA graphical encrypted backup application aimed at scheduled desktop use and remote storage.pick this instead when a browser-led setup matters more than Kopia's lower-level CLI and server controls.

What people are saying

  1. [github-trending] kopia/kopia

Sources

  1. Kopia README
  2. Kopia feature guide
  3. Kopia getting-started guide
  4. Kopia repository server documentation
  5. Kopia v0.23.1 release
  6. Issue 5564: path restore loses file metadata
  7. Issue 5595: KopiaUI status-poll socket leak
  8. Kopia repository activity

More self-hosted reviews

openreplay · MicYou · NetAlertX · Tasmota · lede · bitchat · the whole board →