Kopia 是一个跨平台备份工具,命令行与网页界面都有。它的卖点是增量快照与加密,附带压缩和去重,仓库放本地目录或云存储都行。这篇在 Windows 上从一个空目录建仓,做了两次快照,恢复后逐字节核对,再打开它的网页面板看一眼。

解压出 53 MB 的可执行文件

release 里的 zip 解开就是一个 exe 加两份说明,没有安装程序,也不需要运行时。

kopia-0.23.1-windows-x64.zip   16,894,596 字节
解压后 kopia.exe               53,132,568 字节
版本                           0.23.1(2026-06-16 发布)

建仓库一条命令,密码丢了就打不开

仓库指向本地目录,创建时给的密码就是加密密钥。命令跑完会做一次初始化维护,之后所有快照都写进这个目录。

kopia repository create filesystem --path D:\wb_cache\lab\kopia_repo --password ******
输出末尾   See https://kopia.io/docs/advanced/maintenance/ for more information.

这个密码没有找回流程。仓库是端到端加密的,忘了密码,里面的块就是一堆随机字节。要留后路的话,建仓时用 --config-file 把配置单独存一份。

两次快照,第一次 1.6 秒,第二次 0.8 秒

测试目录放了三个文件:一个 5 MB 随机数据,一个 3 KB 文本,还有一个 6 字节的小文件。第一次快照把三个都收进去,改完文本再跑一次。

snapshot create D:\wb_cache\lab\kopia_src   第一次 1.6 秒
snapshot create(改过 notes.txt 后)        第二次 0.8 秒

snapshot list
  2026-10-21 20:19:03  5.2 MB  files:3 dirs:1  (latest-2)
  2026-10-21 20:19:05  5.2 MB  files:3 dirs:1  (latest-1,hourly-1,daily-1…)

两份快照都显示 5.2 MB,指的是还原后的体积,不是仓库里新增的体积。第二次只改了文本,实际写进去的只有被改动的那几个块。

恢复三个文件用了 0.5 秒,sha256 对得上

取最新一份快照恢复到另一个目录,再拿源文件比哈希。

kopia restore <snapshot-id> D:\wb_cache\lab\kopia_restore
输出    Restored 3 files, 1 directories and 0 symbolic links (5.2 MB)
耗时    0.5 秒
blob.bin 的 sha256  与源文件一致
恢复目录内容        blob.bin / notes.txt / small.txt

两份 5.2 MB 的快照,仓库只占 5.04 MB

这是去重加压缩的实际效果:两份快照加起来的内容是 10.4 MB,仓库目录里只有 15 个文件、5.04 MB。

项数值
源目录内容3 个文件,5.2 MB
快照份数2
两份合计内容10.4 MB
仓库实际占用15 个文件,5.04 MB
恢复耗时0.5 秒

5 MB 里绝大部分是随机数据,压缩比接近 1,省下来的那点主要是重复块与索引开销。真实文档场景下压缩效果会明显得多。

网页面板 1.6 秒起,走 Basic Auth

kopia server start 之后浏览器打开 127.0.0.1:51515,看到的是五个页签,从 Snapshots 到 Preferences。

kopia server start --insecure --address 127.0.0.1:51515 \
  --server-username admin --server-password ******
端口 51515 可连接                1.6 秒
鉴权方式                         HTTP Basic Auth
仓库行                           Repository in Filesystem: D:\wb_cache\lab\kopia_repo

列表里一条源目录显示 5.2 MB、2 minutes ago,右侧有 Policy 与 Snapshot Now 两个按钮;点进源目录能看到两份快照并排,可以勾选对比。面板本身不做首次配置,仓库必须先在命令行建好。

密码输错一次,已保存的连接会被清掉

这条是实测里最意外的一步。用错密码去连同一个仓库,命令失败的同时,它把配置里保存的密码删了,后续所有命令都提示未连接。

kopia repository connect filesystem --path <仓库> --password wrong_password
  退出码        1
  错误          failed to open repository: unable to create format manager: invalid repository password
  附带动作      deleted repository password for C://Users//User//AppData//Roaming//kopia//repository.config

之后执行 kopia snapshot list
  open repository: repository is not connected
操作结果
用正确密码恢复连接可以,仓库数据没丢
用错误密码连一次配置里的密码被删除,连接状态丢失
快照数据仍在仓库目录里,未被改动

排查脚本里顺手试错密码时要注意这一点,输错一次就得重新输入正确密码把连接接回来。

适合谁用

仓库 14,393 星,Go 编写,MIT 许可。命令行是主力,网页界面更像一个查看器。

场景结论理由
目录定时快照合适增量快照 0.8 秒,去重有效
想要图形化配置不合适面板不能建仓,只能看与触发
密码管理要留后路密码丢了仓库即失效
云存储异地备份未验证本次只测了本地目录仓库

实测范围:Windows 10 22H2(10.0.19045.6466)、Kopia v0.23.1 的本地目录仓库。云存储后端与定时策略没有验证。加密强度和超大文件也没有验证,都不作结论。