雨云搭建 BorgBackup 去重加密备份

用雨云 KVM 云服务器配置 BorgBackup:块级去重、加密仓库、自动增量备份与单文件恢复
发布于 更新于
32

服务器上 rm -rf 一句手滑、勒索软件一波加密,几年攒的数据可能瞬间归零。快照能挡一部分,但快照和源站在同一台机器、同一账号下,物理故障和误操作照样一起没。BorgBackup 是块级去重 + 加密的备份工具:首次全量、之后只传变化块,仓库加密存储,还能挂载归档随手翻找单文件。本文用雨云 KVM 云服务器把它配成自动增量备份。

为什么选 BorgBackup

普通 rsync 镜像是「另一份一模一样的文件」,删了源就删了备、中了勒索备的也一起加密。Borg 的三个机制解决这个:

  • 块级去重:相同内容只存一次,几十个相似备份也不爆盘;
  • 加密仓库:数据在写盘前就加密,备份落到对象存储也不怕被看;
  • 保留策略:按「每天保留 7 份、每周 4 份、每月 6 份」自动 prune,既能回滚又控总量。

它和快照、对象存储是三层互补:对象存储 当异地仓库、Borg 负责去重加密的归档逻辑、快照管系统盘即时回滚。三者叠加才叫稳。

服务器与部署

Borg 用 Python 写,雨云 KVM(官网入口)Debian 12 上 apt install borgbackup 即可,下单优惠码填 admin01 五折,7 天无理由退款。没用过雨云的先看 选购与上手指南

1. 初始化仓库(本地或挂载的对象存储目录):

export BORG_PASSPHRASE='你的强口令'
borg init --encryption=repokey-blake2 /opt/backup-repo

repokey-blake2 把密钥存在仓库里、用口令加密——口令丢了谁都解不开,一定单独记好。

2. 备份脚本 /opt/backup.sh

#!/bin/bash
export BORG_PASSPHRASE='你的强口令'
REPO=/opt/backup-repo
borg create -v --stats --compression zstd,3 
  $REPO::{hostname}-{now:%Y%m%d-%H%M} 
  /var/www /etc /home 
  --exclude '/var/www/*/cache'
borg prune -v --list $REPO --keep-daily=7 --keep-weekly=4 --keep-monthly=6

3. 定时crontab -e0 3 * * * /opt/backup.sh,每天凌晨自动跑。备份前先把数据库 dump 出来(如 LNMP 站点 的 MySQL),再一起进仓库。

日常使用姿势

  • 找回单文件:不用全量恢复,直接挂载归档当目录翻——borg mount $REPO::archive-name /mnt/recover,进去拷出要的文件再 umount
  • 列备份清单borg list $REPO 看有哪些归档,borg info $REPO::归档名 看占用;
  • 异地仓库:把 /opt/backup-repo 放在 对象存储挂载目录 或另一台机器上,源站宕了备份还在;
  • 校验:偶尔 borg check $REPO 确认归档没损坏。

踩坑记录

  • 口令写进脚本明文:脚本若被泄露,仓库等于没加密。正确做法是放环境变量(如上)或专用的 secret 文件,权限设 600
  • 首次备份慢:块级去重首跑要分块建索引,几 G 数据可能十几分钟;之后增量只传改动块,几分钟完事,别因为第一次慢就放弃。
  • 挂载需 fuseborg mount 依赖 FUSE,容器或最小系统里可能缺 fuse 包,装一下即可。
  • 磁盘被 prune 前的归档占满:保留策略配太松会撑爆盘。先用 borg prune --dry-run 看会留多少,再正式跑。

合规提醒

备份中常含数据库、用户信息等敏感内容。Borg 仓库已加密,但口令与服务器访问权仍需严格管控;备份数据按最小权限留存,异地副本同样受《网络安全法》《数据安全法》约束,不得违规留存或外传他人信息。

小结

备份的本质不是「多一份拷贝」,而是「坏掉能回到过去」。BorgBackup 用块级去重把成本压下来、用加密把安全锁上、用 prune 把总量控住——一台 1 核 1G 的雨云 KVM 跑备份脚本绰绰有余,优惠码 admin01 五折。把它和对象存储、快照叠成三层,下次手滑或中招时,你还能从容 borg mount 把文件捞回来。

常见问题(FAQ)

BorgBackup 和 rsync 镜像备份有什么区别?
rsync 是另一份一模一样的文件,源被删或中勒索备的也一起没;Borg 是块级去重+加密的归档,能保留多个历史版本、单文件挂载恢复,且仓库加密后落到任何存储都不怕被看。
备份仓库的口令忘了能找回吗?
不能。Borg 采用口令加密,口令即唯一解密钥匙,丢了谁都无法恢复数据。务必把口令单独、离线记好,别只存在服务器上。
首次备份很慢正常吗?
正常。首跑要分块建去重索引,几 G 数据可能十几分钟;之后增量只传改动块,通常几分钟完成。别因第一次慢就放弃,后续体验会很好。
雨云优惠码 admin01 怎么用?
雨云下单页优惠码/推广码输入框填 admin01 即享五折,以结算页显示为准。备份脚本很轻量,1 核 1G 套餐足够,支持 7 天无理由退款,可先低配试跑。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600

用雨云 KVM 云服务器 Docker 自建 Vaultwarden(Bitwarden 轻量服务端),告别明文记密码与商业月费,数据存自己机器。含 Nginx 反代 HTTPS、备份与优惠码 admin01 五折。

用雨云 KVM 云服务器配置 rclone 云盘同步与挂载:对接对象存储 S3 后端、sync 增量同步、mount 挂载成磁盘、断点续传与定时备份,含优惠码 admin01 五折。

用雨云 KVM 云服务器 Docker 自建 Cloudreve 网盘:对象存储直传、外链分享、离线下载,轻量可替代 Nextcloud,含优惠码 admin01 五折。

用雨云 KVM 云服务器 Docker 自建 Immich 自建相册:手机原图自动备份、时间线与相册、人脸识别取舍、内存配置建议与备份,含优惠码 admin01 五折。