2、HA自带快照:手把手教你创建第一个完整快照,以及快照里到底装了啥。

好,咱们正式开始动手了。

上一章聊了备份的重要性,这一章就直接进入实操。我会带你创建第一个完整快照,然后把它拆开看看——里面到底装了些什么东西。

2.1 创建你的第一个完整快照

先说说我的习惯。我每次在HA上做大版本升级之前,一定会先打一个完整快照。为什么?因为升级翻车的概率,说实话,比你想象的要高。有一次我升级到某个中间版本,结果自定义组件全挂了,还好有快照,五分钟就回滚了。

好,开始操作。

  1. 进入备份页面
    在Home Assistant左侧菜单,点击「配置」→「系统」→「备份」。
  2. 点击创建备份
    你会看到一个蓝色的「创建备份」按钮,点它。
  3. 选择完整备份
    在弹出的对话框里,默认就是「完整备份」。你还可以给它起个名字,比如“升级前备份_20250101”。我个人建议每次都写清楚用途和日期,不然三个月后你看着一堆“备份”会一脸懵。
  4. 点击创建
    系统开始打包,这个过程取决于你的HA数据量。一般几分钟就好。
小提示: 创建过程中不要重启HA,也不要断电。我曾经在客户现场遇到过,备份到一半断电,结果备份文件损坏,还得重新来。

创建完成后,你会在备份列表里看到它。状态显示「已完成」,就说明成功了。

2.2 快照里到底装了啥?

很多人打完快照就完事了,从来不看里面有什么。其实,搞清楚快照的结构,关键时刻能救命。

完整快照包含以下内容:

组件 说明
配置文件 configuration.yaml 等核心配置
自定义组件 custom_components 目录下的所有内容
自定义前端资源 www 目录下的文件
自动化与脚本 automations.yamlscripts.yaml
数据库 home-assistant_v2.db(历史数据)
媒体文件 media 目录下的音频、图片等
插件(Add-ons) 所有已安装的插件及其配置
插件数据 插件运行时产生的数据

说白了,完整快照就是你家HA的「全量镜像」。从配置到数据,从插件到媒体,一个不落。

2.3 快照文件长什么样?

你可以在备份页面下载这个快照文件。它是一个 .tar 文件,比如 full_backup_20250101.tar

如果你好奇,可以把它解压看看。里面有一个 backup.json 文件,记录了快照的元信息:

{
  "slug": "f1a2b3c4d5e6",
  "name": "升级前备份_20250101",
  "date": "2025-01-01T10:00:00",
  "type": "full",
  "homeassistant_version": "2025.1.0",
  "folders": [
    "config",
    "addons",
    "addon_data",
    "media",
    "share",
    "ssl"
  ]
}

看到那个 type: "full" 了吗?这就是完整备份的标志。如果是部分备份,这里会是 "partial"

重点: 完整快照包含 homeassistant_version 字段。这意味着,当你恢复快照时,系统会尝试恢复到对应的HA版本。如果你升级了HA,又想降级回去,这个字段就非常关键。

2.4 避坑指南:我踩过的三个坑

嗯,这里我要说几个我亲身经历过的坑,你注意避开。

  • 坑一:快照文件太大
    有一次我的媒体目录里塞了十几G的监控录像,结果快照打了半小时还没打完。后来我学乖了,媒体文件单独备份,快照里只保留配置和数据库。
  • 坑二:插件数据不一致
    我记得有一次恢复快照后,某个插件启动报错。查了半天,发现是插件版本和快照里的数据格式不匹配。所以,恢复前最好确认插件版本一致。
  • 坑三:快照名称混乱
    我曾经见过一个用户,备份列表里全是“备份1”、“备份2”……你想想看,三个月后你分得清哪个是升级前的吗?所以命名一定要规范。

2.5 什么时候用完整快照?

不是所有场景都需要完整快照。我个人建议:

  • 大版本升级前:必须用完整快照,这是保命符。
  • 系统迁移前:比如你要换树莓派或者迁移到虚拟机,完整快照最省心。
  • 日常备份:其实用部分备份就够了,只备份配置和自动化,数据库和媒体可以单独处理。
警告: 完整快照不是万能的。如果你的HA系统本身已经损坏,比如配置文件语法错误,那么恢复这个快照也会把错误一起恢复回来。所以,备份前最好确认系统是健康的。

好了,这一章的内容就到这里。你学会了创建第一个完整快照,也知道了它里面到底装了啥。下一章,我会带你看看部分备份——什么时候用、怎么配,以及如何只备份你真正需要的东西。