BorgBackup 是一个 Python 和 C 语言编写的命令行增量数据备份工具

主要优势(总结自官方文档)

  • 高效:BorgBackup 会将文件按数据块去重,只有改动的数据块才会被备份。一个 25 GiB 的虚拟机磁盘文件,只改动了 1 GiB,那就只会新增备份这 1 GiB 的数据;
  • 高速:核心算法使用 C 编译,使用缓存快速跳过未改动过的文件以加快备份速度;
  • 加密:数据默认是 AES-256 加密并且 HMAC-SHA256 校验的;
  • 压缩:支持多种压缩算法,可自动检测数据是否属于可被压缩的类型;
    • LZ4 快,低压缩
    • ZSTD 高速低压缩、低速高压缩
    • ZLIB 中等速度,中等压缩
    • LZMA 低速 高压缩
  • 异地备份:原生支持 SSH 备份到异地服务器,也可使用 NFS 等网络存储;
  • 可挂载:可以直接用 FUSE 挂载一个备份存档读取里面的数据;
  • 跨平台:支持 Linux, macOS, BSD, Windows (Cygwin / WSL) 等多种平台;
  • 开源:安全可审计,易于修改。

客户端

BorgBackup 由 Python + C 写成。可以直接从源代码编译,从 PyPI 安装,或者使用官方 PyInstaller 制作的单文件程序。

目前Borg 最新发行版本是1.4版本,同时有2.0开发版本,但是不建议使用,并且2版本不兼容1版本。

Borg 本身是一个命令行工具,但是macOS 和 Linux 下还可以使用vorta,GUI客户端。

与restic的区别

  • restic有云后端,Borg通过ssh到远程Borg做客户端/服务器
  • Borg支持多种压缩算法,rstic最新版本只有zstd
  • Borg备份存储库仅由一个系统使用, restic 可以多个系统使用,重删效率更高
  • Borg没有多线程
  • Borg的windows版本支持比较麻烦