构建备份存储为何如此痛苦
Creating Backup Storage Sucks
我受够了备份存储总是出问题的现状,决定亲自搭建一套完全免费的 3-2-1 备份方案。在尝试过程中,我利用 Syncthing 实现了 Mini-PC 和 Windows 笔记本的文件同步,用 Tailscale 解决了手机和平板的远程访问难题,还经历了从 FAT32 到 exFAT 的文件系统纠结。虽然 restic 在本地备份表现完美,但在对接 Google Drive 时却因网络延迟和限制频频受挫,最终不得不退而求其次,采用手动打包上传的“丑陋”方案。这段经历让我深刻体会到:Tailscale 是真正的王者,Syncthing 令人惊叹,iOS 比记忆中更好,而 Android 几乎变得和 Windows 一样糟糕。
我的结论是:Tailscale 是真正的王者;Syncthing 令人惊叹;iOS 比我记忆中更好;Android 已经变得几乎和 Windows 一样糟糕。
HN 评论区
54- sdcfgy
来自一位多年做错了备份、且不得不处理那些同样多年做错备份的逝者遗留烂摊子的人的一些建议。
首先,别试图在家里运行企业级的备份方案,或者搞一台带数 TB 存储和磁带机的 NAS。你总有一天会去世,而所有人都会因为你留下的烂摊子而恨你。他们根本不知道如何从废墟中翻找重要数据。以我这种懂行的人为例,花了整整 3 天才搞定一位已故亲属的 NAS 设备,找到任何能帮他那辆在住院期间停在车道上基本变砖的 EV 车解锁的信息。
其次,删掉一切。不是开玩笑。能删就删。看过的视频,删了。旧邮件,删了。CD 里你不喜欢的曲目,删了。旧软件 ISO,删了。同一场景隔 1 秒连拍几千张照片,删了。几千本你永远不会读的 PDF 电子书,删了。我照这样做,从惊人的 8TB 缩减到了 300GB,而且每个月还在继续缩水。最终这些数据能塞进一台普通的电脑里,这让生活变得容易太多太多。
然后再看看你的备份策略。这时候它会变得很简单。我的策略是三块外接硬盘。
1. 1TB T7 Shield(未加密),放在我伴侣家,每月 rsync 一次。
2. 1TB T7 Shield(已加密),放在我包里,每周 rdiff-backup 一次。
3. 2TB Lacie HDD(未加密),放在……
- bblb
我想给现代备份策略补充一点:延迟的离线副本。
虽然每个月用一次“飞线网络”(sneakernet,指手动拷贝数据到 USB 并藏起来)很麻烦,但当勒索软件来袭时(个人设备也可能中招),它根本无法访问离线副本,更别提去加密它了。
不可变备份方案本质上是代码,因此从远程攻击者的角度来看,最终总会被攻破。而离线备份需要物理接触,也许还得拿个大扳手逼你交出 USB 磁盘的加密 PIN 码才行。
- fc417fc802
> 另一种我无法弄清楚如何正确备份的材料是电子邮件。原因是没有明确的方法来系统地进行备份。
这难道不完全取决于存储格式吗?例如,如果你使用 Thunderbird 作为客户端,它就有可以复制的数据库文件。既然你说你的设备之一运行的是 Arch,你应该看看仓库里的一些邮件选项。至少有几种选项可以作为中间人,桥接你的外部账户和客户端。
> 所以有一个回滚到稳定状态的计划可能会有帮助。我安装并设置了 Timeshift 来做这件事。
快照让这件事变得微不足道。特别是在 btrfs 的情况下,如果你配置引导加载程序始终使用默认子卷,那么回滚就只是执行 `btrfs subvolume set-default`。
- akersten
作者在这里描述的之所以困难,是因为它太“简单”了。
而之所以“简单”是因为它很“难”:用像 TrueNAS 这样的网络 appliances 替换第 2 和第 3 部分,运行一个 zfs 存储池,每晚同步到 Backblaze。是的,你得学一点东西,但它不会像这里提到的硬盘那样以奇怪的方式崩溃,比如某天突然挂载失败,导致备份中断三个月直到你发现为止。这是我的两分钱意见。
- drdexebtjl
听起来,如果你真正将 NAS 用作所有数据的唯一真实来源(ground-truth),并使用类似 SMB/NFS 而不是 SyncThing 的方案,你大部分的挫败感都可以消除。
那样你只需要备份 NAS 就行了。