NixOS 家庭服务器:从崩溃到重生
The death and rebirth of my home server

我的 Raspberry Pi 4B 家庭服务器在经历一次停电后彻底“暴毙”,SD 卡彻底损坏。这次意外让我深刻反思数据备份的重要性。重建过程中,我利用 NixOS 的声明式配置快速恢复,并引入 zram 减少写入,将外部旧硬盘组建为 btrfs 冗余存储池。通过自定义 autosubvol 模块实现服务子卷自动化管理,并集成 restic 进行加密备份。这次“死亡与重生”不仅修复了硬件故障,更构建了一套更健壮、更可持续的家庭服务器架构。
"这次意外让我深刻反思数据备份的重要性,因为自从青少年时期误删了 MacBook 上的主分区后,我对硬盘损坏和数据丢失的恐惧从未像现在这样强烈。"
HN 评论区
- 有评论者指出 RPi 的 SD 卡损坏并非硬件缺陷,而是源于默认配置不当(如开启 swap、atime 或日志写入)以及使用了非工业级的消费类 SD 卡。
- 多位用户分享经验称,将 RPi 的启动介质从 SD 卡迁移至 USB SSD 或 NVMe 后,系统稳定性显著提升,彻底解决了文件系统损坏问题。
- 关于内存交换策略,社区建议避免将 swap 写入 SD 卡,转而使用 zram 或将 swap 分区设置在外部硬盘上,以减少对易损存储介质的写入压力。
- 有观点反驳了'硬件故障难以预测'的担忧,认为企业级 SSD 或带有冗余机制(如 ZFS 镜像、K8s 多副本)的架构能有效应对突发故障,且硬件故障率符合浴缸曲线规律。
- 部分用户认为在家庭服务器场景下,盲目追求 RPi 的低成本是'虚假经济',直接购买 $150 左右的 N100 迷你主机或 Odroid 在性能和可靠性上更具优势。