Backup & Restore в Home Assistant: как сделать резервную копию и восстановление

Подробно о том, как работает резервное копирование и восстановление в Home Assistant: от встроенных инструментов HAOS до ручных методов для Docker и Core.

Backup & Restore в Home Assistant: как сделать резервную копию и восстановление

Введение

Резервные копии — основа надёжности умного дома. Если Home Assistant сломается, обновление пройдёт неудачно или выйдет из строя оборудование, именно резервная копия позволит быстро восстановить систему.

В резервную копию Home Assistant могут входить:

  • файлы конфигурации (configuration.yaml и другие YAML)
  • аддоны и их настройки
  • база данных (по умолчанию SQLite, файл home-assistant_v2.db), если включена опция «История»
  • скрытая папка .storage (реестры устройств/сущностей, авторизация, метаданные)

Резервная копия может быть полной (всё целиком) или частичной (например, только настройки и аддоны). База данных добавляется только если выбран пункт «История».

Home Assistant можно установить четырьмя способами: OS (HAOS), Supervised, Container (Docker) и Core (Python venv). В этой статье рассмотрим, как работает Backup & Restore для каждого из них. Важно помнить, что согласно официальному объявлению, два варианта — Core и Supervised — будут признаны устаревшими и перестанут поддерживаться в декабре 2025 года.

Общая информация

Первичная настройка

При первом входе Home Assistant предлагает включить систему резервного копирования:

  • можно включить защиту резервных копий ключом шифрования и сохранить ключ в безопасном месте; без него зашифрованные данные восстановить нельзя
  • доступна загрузка «аварийного комплекта» (Recovery Kit) для офлайн‑хранения

Примечание: шифрование — опционально. В метаданных файла backup.json это указывается в поле protected (true/false) и в поле crypto (например, aes128).

Состав и структура архива

Вы сами определяете, что попадёт в резервную копию:

  • Настройки Home Assistant — минимальный набор для восстановления системы
  • История — база данных с историческими данными сенсоров и панелью энергопотребления
  • Мультимедиа — записи с камер и другие медиафайлы
  • Папка общего доступа — используется аддонами и старыми конфигурациями

Вышеописанные опции выбора доступны в HAOS и Supervised. В вариантах Container и Core опции “Мультимедиа” и “Папка общего доступа” отсутствуют.

Ниже приведён пример структуры архива

backup.json
homeassistant.tar.gz
media.tar.gz
share.tar.gz
ssl.tar.gz

Назначение файлов:

  • backup.json — метаданные (название, дата, тип копии, версии Supervisor и HA, выбранные папки, список аддонов и репозиториев, флаги compressed, protected, crypto, и т. п.)
  • homeassistant.tar.gz — основная конфигурация Home Assistant (включая .storage, YAML‑файлы и настройки)
  • media.tar.gz — медиафайлы
  • share.tar.gz — папка общего доступа
  • ssl.tar.gz — SSL‑сертификаты

Фрагмент backup.json (пример):

{
  "slug": "e670934a",
  "version": 2,
  "name": "my_backup",
  "date": "2025-09-22T10:58:21.057550+00:00",
  "type": "partial",
  "supervisor_version": "2025.09.0",
  "homeassistant": {"version": "2025.9.1", "exclude_database": false, "size": 0.0},
  "compressed": true,
  "protected": false,
  "crypto": "aes128",
  "folders": ["media", "share", "ssl"],
  "addons": [],
  "repositories": [
    "https://github.com/esphome/home-assistant-addon",
    "https://github.com/music-assistant/home-assistant-addon",
    "https://github.com/hassio-addons/repository"
  ]
}

Хранение резервных копий

По умолчанию резервные копии хранятся локально и отображаются в разделе Настройки → Система → Резервное копирование, откуда их можно скачать на компьютер. Для внешнего хранения можно использовать аддоны, такие как Home Assistant Google Drive Backup, Samba Backup/Share или Dropbox Backup — они автоматически выгружают локальные копии в облако или на NAS.

В HAOS при автоматическом резервном копировании данные сохраняются сразу во всех подключённых расположениях. В Core резервная копия по умолчанию сохраняется в стандартных путях (например, ~/.homeassistant). В обоих случаях пользовательские резервные копии можно сохранять в любом удобном месте.

Частичное восстановление данных

Функция частичного резервного копирования и восстановления доступна только в установках Home Assistant OS (HAOS) и Home Assistant Supervised. Другие варианты установки (Container и Core) не поддерживают выбор компонентов. Полный список способов установки приведён в статье Как установить Home Assistant: четыре способа, их плюсы и минусы.

При создании частичной копии можно выбрать, какие данные сохранить или восстановить:

  • Настройки Home Assistant — минимальный набор для восстановления системы
  • История — исторические данные датчиков, включая панель управления энергопотреблением
  • Мультимедиа — записи с камер и другие файлы мультимедиа
  • Папка общего доступа — используется дополнениями для расширенных или старых конфигураций
  • Дополнения — можно выбрать, какие дополнения сохранять (например, «Все» или отдельные)

Выборочное восстановление отдельных устройств не поддерживается. Если вы используете режим хранения конфигурации в .storage, то изменить или перенести отдельные устройства вручную невозможно — структура и данные управляются самой системой. В режиме YAML такие изменения возможны, поскольку конфигурация задаётся пользователем напрямую. Подробнее о различиях между форматами читайте в статье Где хранить конфигурацию Home Assistant: YAML или .storage?

Что делать с базой данных

По умолчанию Home Assistant использует SQLite. Её можно включить в резервную копию, но перенос между разными архитектурами (64-бит → 32-бит) может вызвать проблемы.

Если же вы используете MySQL или PostgreSQL в качестве внешней базы данных, то для них доступны собственные инструменты резервного копирования и восстановления, что делает хранение истории надёжнее и упрощает перенос между системами.

Работа с разными версиями

Не рекомендуется использовать резервные копии между разными версиями Home Assistant — ни в сторону обновления, ни в сторону понижения. Резервные архивы включают файлы из папки .storage, где хранятся конфигурационные данные в формате JSON. Эти файлы зависят от версии платформы, и различия между ними могут привести к ошибкам при запуске, сбоям интеграций или непредсказуемым проблемам в интерфейсе.

Так как заранее невозможно предсказать, когда и как несовместимость проявится, безопаснее всего использовать резервные копии, созданные в той же версии Home Assistant, что установлена на устройстве. Если копия была сделана на другой версии, рекомендуется сначала обновить систему до этой версии, а уже затем выполнять восстановление.

Backup & Restore в Home Assistant OS (HAOS)

В HAOS резервное копирование встроено и включает удобный мастер настройки.

Создание резервной копии

Чтобы создать резервную копию:

  1. Откройте Настройки → Система → Резервное копирование
  2. Нажмите Создать резервную копию
  3. Выберите, что включить (настройки, историю, мультимедиа, папку общего доступа)
  4. Подтвердите — система создаст архив, который можно скачать

Восстановление с резервной копии

Чтобы восстановить систему из копии:

  1. Перейдите в Настройки → Система → Резервное копирование
  2. В правом верхнем углу нажмите ⋮ (Меню) и выберите Загрузить резервную копию, после чего импортируйте файл .tar
  3. Загруженная копия появится в списке «Мои резервные копии»
  4. Нажмите на её название, чтобы открыть детали
  5. В появившемся окне выберите вариант: «Восстановить полностью» или «Выбрать, что восстановить» (частично)
  6. Подтвердите действие и дождитесь завершения процесса и перезапуска Home Assistant

При «чистом» старте HAOS мастер первого запуска также предложит восстановиться из файла резервной копии.

Backup & Restore в Home Assistant Supervised

Supervised — это установка на Linux с Docker и Supervisor. Функции резервного копирования и восстановления доступны в том же разделе интерфейса, что и в HAOS, с теми же опциями выбора содержимого и возможностью выгружать файлы наружу (через скачивание или аддоны для облака/NAS).

Backup & Restore в Home Assistant Container (Docker)

В контейнере Home Assistant нет Supervisor и встроенного мастера backup — всё делается вручную. Конфигурация и база данных находятся в /config. При запуске контейнера обычно используют volume или bind mount. Резервная копия создаётся архивированием конфигурации, а восстановление — её распаковкой.

Backup & Restore в Home Assistant Core (Python venv)

В варианте Core встроенного backup нет. Конфигурация обычно хранится в ~/.homeassistant или в install_dir/config. Резервная копия создаётся архивированием конфигурации, а восстановление — её распаковкой.

Заключение

В HAOS и Supervised резервное копирование встроено и максимально удобно, тогда как в Container и Core оно выполняется вручную, но остаётся вполне простым в настройке и легко автоматизируется с помощью cron-задач.
Резервные копии — это настоящая страховка умного дома: создать их несложно, а восстановление позволяет сэкономить часы работы и избежать лишних нервов в случае сбоя.