Restic 0.19 介绍与选型指南

Restic 0.19 介绍与选型指南:官方资料溯源的加密去重快照备份架构、多后端支持、仓库口令模型与官方快速上手流程,以及与 BorgBackup、Duplicati、Rclone、Kopia 的量化选型对比。基于官方公开资料编写,未做本地安装实测,查询日期 2026-10-19。

ResticRestic备份恢复2026/10/19

Restic 0.19 介绍与选型指南

目标:基于官方公开资料(GitHub 官方仓库 restic/restic 的 README 与 Releases 页、restic 官方文档站)溯源介绍 Restic 0.19 稳定线的架构、特性与上手路径,并给出与 BorgBackup、Duplicati、Rclone、Kopia 的选型对比。本文不做本地安装与运行实测,全部数据实查于 2026-10-19。

一、信息基准

1.1 查询说明

  • 查询日期:2026-10-19。
  • 信息获取方式:纯官方资料溯源(GitHub 官方仓库 restic/restic 的 README、Releases 页与仓库元数据,官方文档站 restic.readthedocs.io,官方论坛 forum.restic.net),本文不做本地安装与运行实测。
  • 版本结论:本次介绍的版本为 Restic 0.19 系列,最新补丁 0.19.1(2026-07-05 发布),0.19.0 于 2026-06-09 发布;上一稳定线为 0.18(0.18.1,2025-09-21)。

1.2 版本依据

项目实查结果(2026-10-19)来源
最新稳定版0.19.1(2026-07-05)github.com/restic/restic/releases
系列时间线0.19.0(2026-06-09);0.18.0(2025-03-27)、0.18.1(2025-09-21)github.com/restic/restic/releases
代码仓库restic/resticgithub.com/restic/restic
开源许可BSD-2-ClauseGitHub 仓库元数据 LICENSE 字段
实现语言Go官方仓库语言统计与 README
GitHub stars36652GitHub 仓库元数据(2026-10-19 实查)

1.3 官方来源清单

来源地址
官方文档站https://restic.readthedocs.io/en/stable/
源码仓库https://github.com/restic/restic
Releases 页https://github.com/restic/restic/releases
安装文档https://restic.readthedocs.io/en/stable/020_installation.html
备份文档https://restic.readthedocs.io/en/stable/040_backup.html
官方论坛https://forum.restic.net/

二、软件概述

本文介绍的是 Restic 0.19 系列(最新补丁 0.19.1,2026-07-05 发布)。

Restic 是一款以 Go 语言编写、官方定位「快、安全、高效」的开源备份程序。它把待备份目录做内容分块,分块加密并去重后写入仓库(repository),每次备份生成一个可独立恢复、可单独 diff 的快照(snapshot)。项目原生支持 Linux、macOS、Windows 三大平台及 FreeBSD、OpenBSD 等系统(官方 README),后端覆盖本地目录、SFTP、REST 服务器、S3 兼容对象存储、Backblaze B2、Azure Blob、Google Cloud Storage、OpenStack Swift 等,并可通过 rclone 后端扩展到更多云存储服务。

社区层面,restic/restic 仓库拥有 36652 stars(2026-10-19 GitHub 实查),官方通过 GitHub Issues/PR 与 Discourse 论坛(forum.restic.net)提供社区支持;仓库最近推送时间为 2026-10-18,处于活跃维护状态。

三、核心架构

3.1 仓库与快照模型

  • 仓库(Repository):存放全部备份数据与索引的后端存储,由 restic init 初始化。仓库口令即数据加密密钥——官方 README 明确提示「知道口令才能访问仓库,丢失口令意味着数据无法恢复」。
  • 快照(Snapshot):每次 restic backup 产出一个快照,记录源路径、时间戳与文件树元数据;快照之间共享未变化的数据块,可独立恢复、对比(diff)或挂载浏览。
  • 数据面:备份时文件按内容分块(chunk),分块以内容寻址方式加密去重后写入仓库,因此增量备份只需传输与保存新出现的块(官方文档「Backing up」章节口径)。

3.2 后端抽象

官方 README「Backends」节列出的原生后端:本地目录、SFTP(经 SSH)、REST server(官方 rest-server 实现)、Amazon S3 及任意 S3 兼容存储、OpenStack Swift、Backblaze B2、Microsoft Azure Blob Storage、Google Cloud Storage;其余服务经 rclone 后端桥接使用。

3.3 操作面

CLI 覆盖备份全生命周期(官方文档目录实查):backup(备份)、snapshots(列举)、restore(恢复)、check(完整性校验)、forget/prune(按策略清理快照并回收空间)、mount(FUSE 挂载浏览)、diff/tag 等辅助命令;文档同时覆盖脚本化(Scripting)与调度(Scheduling backups)。

四、功能特性

4.1 加密与去重

仓库内容以口令派生密钥加密后再落盘,官方文档设「Encryption」章节描述加密模型;内容寻址分块让多机共用同一仓库时可获得全局去重,重复数据只存一份。

4.2 灵活的备份策略

官方 backup 文档覆盖:干跑(dry-run)、排除/包含规则、从命令输出或 stdin 读取数据备份、快照标签、源目录未变化时跳过快照、文件变更检测、退出码约定与定时调度等(官方文档目录实查)。

4.3 校验、恢复与浏览

restic check 校验仓库完整性与数据损坏;restic restore 支持按快照 ID 或 latest 恢复到目标目录;restic mount 通过 FUSE 把仓库挂载为文件系统,直接按时间浏览历史快照(官方 README 与文档说明)。

4.4 0.19 系列状态

0.19.0 于 2026-06-09 GA,0.19.1 于 2026-07-05 跟进补丁(官方 Releases 实查);0.18 线最后补丁停留在 2025-09-21,整体呈「一年一至两个 minor、按需发补丁」的节奏。

五、快速上手

以下流程转述自官方 README Quickstart 与官方文档站(https://restic.readthedocs.io/en/stable/ ),本文不做本地实测。

5.1 安装

官方安装文档(https://restic.readthedocs.io/en/stable/020_installation.html )覆盖各平台包管理器与预编译二进制的获取方式。

5.2 初始化仓库并备份(官方 README 示例)

$ restic init --repo /tmp/backup
enter password for new backend:
enter password again:
created restic backend 085b3c76b9 at /tmp/backup
Please note that knowledge of your password is required to access the repository.
Losing your password means that your data is irrecoverably lost.

$ restic --repo /tmp/backup backup ~/work
enter password for repository:
scan [/home/user/work]
scanned 764 directories, 1816 files in 0:00
snapshot 40dc1520 saved

(回显节选自官方 README Quickstart:仓库口令需两次确认,官方提示口令丢失则数据不可恢复。)

5.3 恢复与浏览

$ restic --repo /tmp/backup restore latest --target /tmp/restore-work
$ restic --repo /tmp/backup mount /mnt/restic

按官方 README 说明,备份完成后可用 restic restore 恢复文件,或用 restic mount 经 FUSE 挂载仓库浏览历史快照;更多选项见官方在线文档。配合本站发布的操作细节可进一步阅读《Restic 常用 CLI 命令详解》。

六、适用场景与限制

6.1 适用场景

  • 服务器与工作站的加密增量备份,后端自建 S3/MinIO 或公有云对象存储皆可;
  • 多机集中备份到统一仓库,利用内容寻址去重显著节省存储空间;
  • 需要版本化浏览(mount/diff)与选择性恢复(restore 任意快照)的场景。

6.2 限制与注意事项

  • 仓库口令丢失即数据不可恢复(官方 README 明示),口令保管是运维前提;
  • 纯 CLI 工具,官方不提供图形界面,定时任务依赖系统调度器与脚本;
  • rclone 桥接的非原生后端引入第三方依赖,故障面更宽;
  • 0.x 版本线,升级前应阅读官方文档确认仓库格式与命令兼容性。

七、同类选型对比

7.1 候选概览

工具定位开源许可
Restic 0.19Go 实现的加密去重快照备份BSD-2-Clause
BorgBackup 1.4Python/C 实现的去重压缩备份BSD-3-Clause
Duplicati 2.4C# 实现、带 Web 界面的加密云备份MIT 主代码(proprietary/ 目录按订阅条款)
Rclone 1.75Go 实现的云存储同步与管理工具MIT
Kopia 0.23Go 实现的快照备份(CLI + GUI)Apache-2.0

7.2 量化对比(2026-10-19 实查)

维度Restic 0.19.1BorgBackup 1.4.5Duplicati 2.4.0.1Rclone 1.75.2Kopia 0.23.1
开源许可BSD-2-ClauseBSD-3-ClauseMIT 主代码MITApache-2.0
GitHub stars3665213859151326039114380
最新版本0.19.1(2026-07-05)1.4.5(2026-07-18)2.4.0.1 stable(2026-10-07)1.75.2(2026-10-09)0.23.1(2026-06-16)
实现语言GoPython/CC#GoGo
界面纯 CLI纯 CLIWeb GUICLI(GUI 为第三方)CLI + 官方 GUI
后端侧重本地/SFTP/S3/B2/Azure/GCS/Swift,rclone 扩展本地路径、SSH 远端仓库云存储为主数十种云存储的同步与搬运本地/SFTP/B2/S3 等
备份模型快照 + 全局去重 + 加密去重压缩档案(块级)快照版本化目录镜像/同步(非快照型)快照 + 去重 + 加密

(stars 与发版时间取自各项目 GitHub Releases 与仓库页面的 2026-10-19 实查;Duplicati 许可结构见其仓库 LICENSE 原文。)

7.3 选型建议

把「快照 + 端到端加密 + 对象存储后端」作为默认诉求时,Restic 是最均衡的选择;已有 SSH 基础设施、追求极致去重压缩且可接受仅 SSH 远端仓库的,可选 BorgBackup(见《BorgBackup 1.4 介绍与选型指南》);需要图形界面与桌面级云备份体验的,可选 Duplicati,但应注意其 proprietary/ 目录的订阅条款(见《Duplicati 2.4 介绍与选型指南》);核心诉求是在几十种云存储之间同步与搬运数据而非快照备份的,选 Rclone;想要 CLI + 官方 GUI 并评估服务器端缓存加速能力的快照备份,可测试 Kopia。

八、参考链接