Как установить home assistant на ubuntu

Обновлено: 08.07.2024

Данный мануал составлен мной после нескольких недель штудирования форумов, для тех, кто захочет пройти моим путем. Критика приветствуется.

Выбор стека

Про Home Assistant (далее для краткости - HA) сказано было многое, и, на мой взгляд, это самая удачная система умного дома. По теме выбора можно почитать тут:

Почему HDD? Много раз на форумах писали, что малинка с Home Assistant на борту кушает SD карты по одной за год. Кроме того, HA еще и логи пишет не понятно до каких пределов. Так что никаких SD.

Оборудование в наличии

Переходник SATA - USB (при необходимости)

Ноут (комп) c возможностью записи SD карт. (У меня ноут под Windows 10)

Роутер для выхода в сеть

Официальный сайт предлагает нам несколько способов установки Home Assistant:

Home Assistant Operating System для Raspberry Pi. Самый простой способ установки: залил образ и нет проблем. Все фичи в наличии. Рекомендован разработчиками. Минус - отсутствие полноценной системы.

Home Assistant Operating System (VM) для Linux. Поднимаем виртуальную машину. Качаем образ. Запускаем. Профит. Да, все фичи на месте. Рекомендован разработчиками. Минус - виртуальная машина более затратна для системы чем Docker. Впрочем, этот способ я не пробовал.

Home Assistant Container. Установка в контейнер Docker. Также рекомендован разработчиками. Минус - нет Supervisor.

Home Assistant Core. Устанавливаем окружение Python. Устанавливаем Home Assistant. Минус - нет Supervisor.

Home Assistant Supervised. Установка в контейнер Docker, но уже с Supervisor в комплекте. Вот что про это пишут разработчики:

Внимание! Этот способ запуска Home Assistant потребует всех ваших сил. У вас будут строгие требования, которым придется следовать. Если вы не понимаете зачем оно вам надо, используйте способы описанные выше.

Этот метод установки обеспечит полный функционал HA на обычной системе. Это значит, что все компоненты HA будут использованы за исключением Home Assistant Operating System. Пользователь сам ответственен, чтобы все требуемые компоненты были установлены и настроены. Список компонентов и их версии меняются со временем, а Home Assistant Supervised предоставляется как есть. И, вообще, мы принимаем багрепорты воспроизводимые только на свежеустановленном полностью обновленном Debian без дополнительных архивов.

Этот метод считается продвинутым и должен использоваться только если читающий - эксперт в управлении Linux, Docker и сетях. Приятно слышать.

Мы работаем только с Docker и ни с чем другим.

Дальше идет список требований. К нему вернемся в процессе установки.

Только вышеназванная версия Debian (на момент написания статьи это Debian Linux Debian 10 aka Buster (no derivatives)) поддерживается. Когда выходит новая версия Debian поддержка предыдущей прекращается в течение 4 месяцев. Если только новая версия не соответствует требованиям Supervisor.

Этот метод не будет работать если читающий где-то накосячит. Кстати, вот вам еще несколько дополнительных условий:

Эта система только для Home Assistant. Даже не думайте устанавливать еще какое-то ПО.

Читающий ответственен:

За установку и настройку ОС

За обновление компонентов, необходимых для Supervisor

За установку хоть чего нибудь, конфликтующего с Supervisor

За обновления безопасности

Время от времени требования к Supervisor меняются и читающий должен сам обновлять свою ОС и устанавливать недостающие компоненты

Заключение: Эксперт. Тебе будет непросто. Смирись.

Шаг 0. Первый контакт

Здесь и далее я буду подключать Raspberry через WiFi. Начнем с того, что пропишем в нашем домашнем DHСP сервере статический IP-адрес Raspberry. Это нужно для удобства, чтобы не выяснять каждый раз, как достучаться до малинки.

Качаем образ Ubuntu от сюда. На данный момент это Ubuntu Server 20.04.2 LTS 64-bit. Заливаем на SD карту при помощи Balena Etcher. Вынимаем карту и . снова вставляем откуда взяли. Это нужно, чтобы загрузочный сектор Ububuntu стал доступен в проводнике. Открываем файл network-config и прописываем туда параметры WiFi. Должно получится что-то вроде:

А теперь немного комментариев разработчиков:

Имя сети должно быть в кавычках

При первой загрузке Raspberry попытается присоединится к WiFi. Эта попытка обречена на провал. Но не расстраивайтесь, просто перезагрузите малинку sudo reboot -h now и все заработает.

Шаг 1. Настройка загрузки с HDD

Обновляем систему чтобы все было по фен-шую.

sudo apt update

sudo apt upgrade -y

Теперь устанавливаем пакет для работы с загрузчиком sudo apt install rpi-eeprom . На всякий случай перезагружаемся sudo reboot -h now .

У загрузчика имеется три версии релиза (выдержка из оригинальной статьи):

default - Обновляется для поддержки нового железа, исправления критических ошибок и регулярного обновления новых фичей, протестированных в релизе latest .

latest - Обновляется, когда новые фичи прошли успешное бета-тестирование

beta - Здесь тестируется все новое

Из вышесказанного понятно, что релизы проранжированы по степени новизны/стабильности.

На одном из форумов написано:

Будьте уверены, что используете последнюю версию релиза latest (он же stable ). Если же нет, Вы не сможете загрузиться с USB. Не существует default (он же critical ) релиза с поддержкой загрузки по USB.

Как по мне, все нормально запустилось с default ветки. По-видимому, на дату статьи релиз уже обновили.

Итак, делай раз: обновляем загрузчик до последней версии sudo rpi-eeprom-update -a . Перезагружаемся sudo reboot -h now .

Делай два: заливаем Ubuntu на USB (HDD) носитель. Как это сделать, описано в Шаге 0. Примечание: некоторые рапортуют о проблемах с питанием HDD при использовании переходника SATA-USB. Что с этим делать - думайте сами. Например, замените HDD на SSD. Лично у меня HDD Toshiba MK7575GSX нормально завелся.

Делай три: В загрузочном разделе (он всегда первый и отформатирован в FAT32) Находим файл vmlinuz , распаковываем его в эту же директорию (я использовал 7-Zip) и переименовываем в vmlinux . Идем в config.txt , комментим строки чтобы было как-то так:

И дописываем, чтобы было как-то так:

initramfs initrd.img followkernel

Все. Больше здесь ничего ни трогаем, впрочем кому как нравится.

Делай четыре: прописываем настройки wi-fi как в шаге 0.

Траблшутинг: Лично у меня была проблема - не запускалась малинка после очередного обновления ядра Linux или чего-то такого. Но потом ребята с GitHub'а все пофиксили и стало ОК. Так что, если у вас что-то идет не так: либо нарушили какой-то пункт из описанных выше, либо ждем обновления ветки (кстати, можно перейти на релиз latest и попробовать с него), либо повезет в любви. И еще, после обновления системы, выполняемого, например, командой sudo apt full-upgrade Ubuntu перестанет запускаться до тех пор, пока в загрузочном секторе мы снова не распакуем vmlinuz в vmlinux .

Шаг 2. Устанавливаем зависимости

Разработчики требуют, чтобы в системе было установлено Docker, Systemd, NetworkManager, AppArmor. Sysstemd и AppArmor уже установлены в системе - по ним дополнительных действий не требуется.

Хотя пакет jq отсутствует в официальных требованиях, без него установочный скрипт все-равно не запустится. С него и начнем. Выполняем sudo apt install jq . Готово!

Теперь возьмемся за NetworkManager. Для начала устанавливаем его командой sudo apt install network-manager . Добавляем в автозагрузку sudo systemctl enable NetworkManager . Но просто установить и запустить его недостаточно. В настоящий момент есть две альтернативные системы управления сетью systemd-networkd и NetworkManager. По умолчанию в системе установлена первая, а нам нужен именно NetworkManager. Чтобы переключится на него идем в /etc/netplan и редактируем файл конфигурации командой sudo vi /etc/netplan/50-cloud-init.yaml . Примечание: у меня это 50-cloud-init.yaml . Говорят, название может отличаться. Добавляем строку renderer: NetworkManager следующей строкой за network: . Обращаем внимание на отступы. В yaml отступы решают. Делаем sudo netplan generate и sudo netplan apply , перезагружаемся. Останавливаем systemd-networkd - он теперь больше не нужен - sudo systemctl stop systemd-networkd и отключаем его от автозагрузки sudo systemctl disable systemd-networkd , перезагружаемся.

Приступаем к установке Docker. Далее взяты инструкции с официального сайта Docker.

Со вступлениями покончили, пора браться за дело - будем ставить сервер.

Напомню, что в качестве серверной машины был взят старенький, но полностью рабочий нетбук Asus VIVO S200, в котором по итогу всех манипуляций был заменён HDD на SSD. На нетбук была установлена Ubuntu 18.04 LTS Server.

Почему Ubuntu? С убунтой я уже был знаком ранее - несколько лет провёл на десктопной версии, познакомился с консолью и в целом операционка мне понравилась - немного непривычно после Windows, но в целом всё интуитивно понятно и не совсем непривычно для чайника. Поэтому в качестве сервера я выбрал ту же убунту, версию LTS (Long Term Support) - стабильная сборка с долгим сроком поддержки. Сначала накатил опять же десктопную версию, но после манипуляций с обновлением питона потерял многие интерфейсные вещи и без сожалений перешёл на серверную. Ещё одной причиной выбора убунты было довольно много упоминаний на 4pda, что говорит о том, что такая версия установки HomeAssistant жизнеспособна и в случае проблем можно поискать варианты решения.

На этот нетбук с убунтой и был установлен HomeAssistant. Официальные инструкции предлагают вариант установки в докере или в виртуальное окружение для отдельного пользователя. С докером я не знаком, к тому же часто встречал отзывы о том, что возникают трудности при привязке других компонентов к контейнеру с HomeAssistant, поэтому вариант с докером не рассматривался. Рецепт установки подходит к любой linux-based системы.

Установка

Можно было бы дать ссылку на официальную инструкцию по установке HomeAssistant под venv, но именно в случае с Ubuntu 18.04 она не совсем подходит, поскольку убунта поставляется по умолчанию с версией Pythhon 3.6, а современные сборки HomeAssistant требуют не ниже 3.7.

UPD: Начиная с 7 декабря 2020 года HomeAssistant требует версию python не ниже 3.8. Поскольку требования постоянно меняются, не забывайте узнавать актуальные требования в оригинальной инструкции, а шпаргалка ниже поможет соблюсти правильную последовательность действий для установки на Ubuntu.

Поэтому перед установкой рекомендую проверить версию python:

Если показывает версию 3.7.* и выше - можно спокойно воспользоваться официальной инструкцией и ниже не читать.

Если же версия python ниже 3.7 или вообще отсутствует - сначала ставим python 3.7:

sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install python3.7 python3.7-dev python3.7-venv python3-pip libffi-dev libssl-dev

Вот тут начинаются незаметные, но очень важные отличия от официальной инструкции. У нас образовалось две версии python3 на сервере: 3.6 по умолчанию и 3.7 дополнительно. Можно активировать по умолчанию версию 3.7, но это может повлиять на работу других программ в десктопных версиях. А можно просто указывать напрямую версию при установке и запуске компонент, как это сделал я. Поэтому почти все команды, которые в официальной инструкции содержат python3, я заменил на python3.7, иначе HomeAssistant не взлетит.

Создаём отдельного пользователя (для Raspberry предлагают сразу добавлять в группы gpio и i2c для доступа к интерфейсам, в любом случае их можно добавить потом):

Создаём рабочую папку для сервера HomeAssistant и раздаём права доступа:

cd /srv
sudo mkdir homeassistant
sudo chown homeassistant:homeassistant homeassistant

Переключаемся на нового пользователя,создаём виртуальное окружение и активируем его:

sudo -u homeassistant -H -s
cd /srv/homeassistant
python3.7 -m venv .
source bin/activate

После активации в начале командной строки добавится (homeassistant).

Продолжаем устанавливать компоненты:

И, наконец, устанавливаем сервер:

Всё. Делаем первый запуск сервера, в процессе которого установятся все остальные компоненты и модули и создадутся начальные конфигурационные файлы:

После того, как всё установилось и в консоли написано Home Assistant initialized in XXX.XXs - всё, сервер готов к работе. В браузере вводим IP-адрес сервера и порт 8123, например:

И получаем приглашение на вход:

Создаём себе пользователя в HomeAssistant, задаём начальные установки - название сервера, свои координаты и предпочтительную систему мер и система готова к работе. Автоматически создались первоначальные объекты: датчик доступных обновлений Updater; элемент пользователя, к которому впоследствии можно привязать датчики отслеживания местоположения, на основе которых статус будет менять с "дома" на "ушел", а пока местоположение - неизвестно; датчик положения солнца (над горизонтом, за горизонтом), который часто используется в автоматизации освещения и стандартная карточка погоды на основе Норвежской метеорологической службы. Да, на картинке нарисовано 20 градусов, потому что я оставил дефолтные координаты Амтсердама.

Дальше можно настраивать по своему вкусу, но прежде чем перейти к наполнению своего дашборда разными карточками и интеграциями, нужно добавить HomeAssistant в автозагрузку. Здесь уже можно воспользоваться инструкцией по добавлению демона systemd с официального сайта для виртуального окружения.

Автозапуск

Предварительно выходим из режима виртуального окружения командой

Создаём файл запуска:

sudo nano -w /etc/systemd/system/home-assistant@homeassistant.service
[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=%i
ExecStart=/srv/homeassistant/bin/hass -c "/home/%i/.homeassistant"
[Install]
WantedBy=multi-user.target

Сохраняем Ctrl+O и выходим Ctrl+X

Включаем только что созданную службу:

sudo systemctl enable home-assistant@ homeassistant.service
sudo systemctl start home-assistant@ homeassistant.service

Сервер перезапустился и снова доступен через браузер.

Минус установки в виртуальном окружении, в отличие от докера - необходимость обновлять вручную. Хотя, может быть, не такой уж и минус, поскольку некоторые обновления напрочь вырубают какие-нибудь компоненты или вообще становятся несовместимы с вашим ПО.

Обновление

Заходим в консоль сервера и вводим команды:

sudo -u homeassistant -H -s
source /srv/homeassistant/bin/activate
pip3 install --upgrade homeassistant

Дожидаемся обновления, выходим из виртуального окружения:

И перезапускаем службу:

sudo systemctl restart home-assistant@homeassistant.service

На этом установку можно считать законченной и можно переходить к настройкам. Но это в следующий раз.


Нетбуки были бы идеальным железом для установки сервера Home Assistant, если бы разработчики продолжали поддержку таких систем. Как выяснилось, существует масса нюансов.

В процессе экспериментов, тестировались Ubuntu 16.04, 18.04 (более поздние уже 64-битные), FreeBSD (таки сложная для меня) и Debian 10.8. Далее будет описана установка Home Assistant Supervised на Ubuntu 18.04 LTS и установка в виртуальное окружение на Debian 10.8.

Такой выбор обусловлен тем, что Debian 10.8 - это свежая актуальная система с поддержкой 32 бит, но при попытках установки в нее, Docker устанавливался только 18 версии, а Home Assistant требует уже 19й Docker. И что интересно, Docker 19.03.6 подтянулся только на Ubuntu. К сожалению, я не имею большого опыта в использовании linux, поэтому заранее хочу простить спецов не бить меня палками и не тыкать пальцами, а указать на имеющиеся ошибки.

Установка Debian 10.8

Я не люблю гигабайты избыточной информации, которая возникает вместе со стандартной установкой. Для Debian существует крошечный образ , который имеет размер всего 42 мб. Там находятся самый минимум, который позволяет запустить процесс установки и скачать все необходимое из сети в процессе. Записываем его любой программой для записи образов на флешку, вставляем ее в свой ПК и устанавливаем в BIOS загрузку с USB.

Простота процесса установки Debian позволяет в нескольких картинках показать практически все. Пробежимся бегло.

С установкой закончили. Если я что-то и попустил, то все достаточно понятно и задокументировано.

Установка Home Assistant в виртуальное окружение

Далее предлагаю подключиться по SSH любимой терминальной программой (например Putty) к нашему подопытному. Код ниже можно копировать построчно и вставлять в консоли. В минимальной установке Debian нет программы sudo, поэтому сначала устанавливаем ее и даем права вашему пользователю: Скачиваем последнюю версию Python, компилируем и устанавливаем:

Курим, пьем кофе, откинувшись на спинку кресла. Много курим.

Теперь устанавливаем Home Assistant и сразу редактор конфигураций YAML:

Переходим по адресу, который указан в конце установки, и ждем (довольно долго) пока Home Assistant закончит установку, после чего появится начальное приветствие.

1600x_image.jpg?1616031478

Пока можно ничего не вводить и продолжить установку дополнительных инструментов.

Скачиваем и устанавливаем HACS. Дальнейшая настройка уже в системе:

Ставим базу MariaDB:

Добавляем в базу таблицу, пользователя и устанавливаем права:

Теперь было бы неплохо сразу изменить конфигурационный файл, добавив подключение к базе, ссылку на редактор YAML и некоторые полезные датчики:

Нужно добавить этот текст в конец файла, не забыв указать свои <ПАРОЛЬ ВАШЕГО ПОЛЬЗОВАТЕЛЯ БАЗЫ> и <ВАШ IP АДРЕС СЕРВЕРА>.

После окончания редактирования, нажмите CTRL O для сохранения файла и CTRL X - для выхода из редактора.

Создаем сервис автозапуска для редактора YAML:

После окончания редактирования CTRL O и CTRL X.

Также нужен сервис для самого Home Assistant:

После окончания редактирования CTRL O и CTRL X.

Ну и завершающий этап - запуск сервисов:

Теперь можно перезагрузить систему и начать настройку.

Итак, у нас установлен актуальный Home Assistant на актуальной операционной системе, установлен редактор конфигурационных файлов YAML, репозиторий кастомных интеграций HACS и SQL база MariaDB.

Обновление Home Assistant в виртуальном окружении

Дожидаемся обновления, выходим из виртуального окружения: Конечно, настраивать есть еще много всего, но эта информация хорошо описана в сообществе, а пальцы автора уже порядком устали)) Идем дальше.

Установка Ubuntu 18.04 LTS и Home Assistant Supervised

Эта версия Ubuntu еще позволяет установить ее на 32х битную систему, правда с небольшой хитростью. Просто в релизе вы не найдете нужного образа. Но так же, как и для Debian, существует минимальный образ 18.04 LTS. Он занимает всего 68 мбайт.

Качаем, записываем на флешку любимой программой для записи образов, вставляем в свой ПК и устанавливаем в BIOS загрузку с USB.

Так как Ubuntu основана на Debian, то и процесс установки также максимально прост - выбор локализации, сетевой карты и настройка сети, пользователей, разметка диска и выбор только сервера SSH. Если выбрать русский язык, то сможете безошибочно определить, где нажимают кнопку "далее". Также можно глянуть на описание установки Debian, отличия чисто косметические.

После установки системы и перезагрузки, советую сразу подключаться с помощью терминальной программы (я все еще пользуюсь putty) и можно приступать к установке Home Assistant.

Ставим кастомный репозиторий, с которого загружаем последнюю версию Python:

Подготавливаем и устанавливает Docker и Home Assistant:

Набираемся терпения и ждем, пока появится начальное приветствие по адресу, который указан в конце установки . Можно пока не входить, установить еще HACS и перезагрузиться:

Заключение

Конечно, Home Assistant Supervised очень удобна своей простотой, но при практически равном функционале, реализованном в этих установках, версия с Docker потребляет значительно больше ресурсов. Так что вам решать, какую систему выбрать.


Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.

Или просто залить образ HassOS для NUC, особенно если сетевая карта Intel.

на 32битный процессор? неужели получилось?))

очень интересно с точки зрения проделанной работы, а вот практический смысл какой? Да и где найти такой настолько древний ПК до корковой эпохи. Коркам то уже 10+ лет.

в принципе, я рассчитывал на атомы. их немало еще осталось

Да как бы атомы тоже в основном 64 разряда, а те что 32 достаточно редкие. На кромен n-к.

первые атомы, на которых были первые нетбуки все 32 бита. у меня в загашнике пылилось asus eee pc, acer aspire one d250, ZOTAC ZBOX ID41 и пара fit-pc2

теперь fit-pc2 в деле

Добрый день, отличная статья давно хотел окучить свой ЕЕЕРС который уже лет 10 без дела валянтся и теперь - и малинка будет и бесперебойник на ССД.

Вопрос поссле установки получаю такое

1000x_image.jpg?1620793341

что я делаю не так

все так, на скорость не влияет). просто супервайзер хочет debian 10. кстати, если загрузка процессора в простое будет более 20-30%, можно попробовать поставить этот аддон

хочется иметь актуальную систему, но с убунтой можно только максимум 18.04, а в debian 10 тянется 18й docker, с которым ha не работает((

сейчас тестирую debian 11. пока все нравится, но неподдерживаемый способ установки тоже присутствует т.к. релиза debian 11 еще не было

1000x_image.jpg?1620817311

Было бы неплохо небольшой мануал как сделать все тоже самое но используя Wi-Fi устройства.

Например у меня не везде можно установить девайс и подключить шнурком.

А так сложил нетбук под кровать положил и пусть себе трудится.

Если не сложно то подскажите. А то в линуксах слаб и не получается поставить ХА на нетбуке подключенном по Wi-Fi

После
[info] Replacing /etc/network/interfaces

[info] Restarting NetworkManager

Я теряю связь с сервером и установка НА не продолжается

не уверен, но попробуй поискать сервер на другом ip и с другим macом (поискать на роутере). установка, на самом деле, может продолжаться и через 10-20-30-60 мин может быть закончена (если не прерывать)

нужно будет попробовать самому

Я нахожу сервер на другом ИПе но вот почему то подключиться не могу даже по SSH

по "новому ip":8123 через время есть что-то?

постараюсь попробовать, но сначала я "добью" тестовую инсталляцию (пытаюсь получить звук из аудиовыхода с управлением из ha)

Посмотрите в сторону аддона Mopidy

бьюсь и c Mopidy и с MPD и с VLC(( если бы еще понимать что делаешь))))))

знакомо.
а вот с этим скриптом установки под убунту у меня не срослось, и тоже не пойму почему. при запуске по инструкции из-под суперпользователя при скачивании образа скрипт выдаёт invalid reference format, под обычным юзером ващще вылетает без ошибок, как так и надо.
Автор! Рад за тебя, что хоть с установкой у тебя всё прошло норм =)

и под убунту и под debian 11 замечательно ставится.

пишите сразу в телегу, попробуем вместе разобраться

у меня сейчас умирает в тестовой машине compact flash 16Gb в переходнике на sata) примерно через сутки тупит и виснет. потом еще больше извращусь и поставлю в этот переходник ibm microdrive 6Gb в формате CF)))))))))))

с Atom N570, который 64 битный, проблем не должно быть при любом способе установки. чтобы не ругался на неподдерживаемый способ установки можно поставить debian 10 64 битный. но если душа больше лежит к убунте, то все будет и так прекрасно работать

" с Atom N570, который 64 битный, проблем не должно быть при любом способе установки."
мдя, оказывается, у меня железка ещё вполне ничего =)
просто с 2011г. жинка его убила практически совсем: колонки с усилком, клава, хард - всё под замену, кухонным плеером быть уже не может, вот и думал, что недобуку совсем хана. А тут, глядишь, и третья жизнь начнётся =)
" но если душа больше лежит к убунте"
да, скорее, привычка. файлопомойка уж скоро лет 10 как под убунтой крутится, и хассио пока что там же, в докере, но core версия. ну, теперь буду supervised поковырять

я сделал "финт ушами" - при установке системы использовал проводной интерфейс, а потом, уже в супервайзере, настроил wifi

1000x_image.jpg?1622589254

прискорбно, но вторая часть статьи уже не актуальна(

Доброго времени суток! У меня вопрос: ОШИБКА: после октября 2020 года могут возникать ошибки при установке или обновлении пакетов. Это связано с тем, что pip изменит способ разрешения конфликтов зависимостей. Мы рекомендуем вам использовать --use-feature = 2020-resolver, чтобы протестировать ваши пакеты с новым резолвером, прежде чем он станет по умолчанию. homeassistant 2021.11.1 требует pip <20.3,> = 8.0.3, но у вас будет pip 21.3.1, который несовместим.

в этом и "прелесть" всех инструкций по установке ha - они актуальны лишь на дату публикации.

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

С точки зрения использования системы все способы установки можно разбить на две группы:

  • Где есть супервизор (supervisor)
  • Где нет супервизора

Супервизор — это необязательная часть системы. Можно использовать Home Assistant и без супервизора.

Если есть супервизор, то в Home Assistant появляются дополнительные возможности:

  • Можно "в один клик" устанавливать разные дополнения
  • Появляется простая возможность делать бекапы системы
  • Супервизор проверяет что система работает корректно, например уведомляет если заканчивается место
  • Появляются дополнительные сервисы hassio.*

Вот статистика разных типов установок с этого сайта (скриншот сохранен 17 мая 2021 года):


Home Assistant OS — установка на хост

Это официально рекомендованный способ установки. Установка очень быстрая и простая. Устанавливается Home Assistant вместе с супервизором.

Очень часто этот способ используют для того чтобы установить Home Assistant на Raspberry Pi.

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

Вот несколько популярных образов:

Полный список всех образов находится на GitHub.

Этот образ нужно залить на sd карту (в случае Raspberry Pi) или на жесткий диск (в случае Nuc).

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

У этого способа установки есть особенность — вы получаете "черный ящик" Home Assistant полностью работает, но доступ к операционной системе на которой он работает очень ограничен.

Home Assistant OS — установка в виртуальную машину

Официальный способ установки. Устанавливается Home Assistant вместе с супервизором.

С помощью этого способа можно получить работющий Home Assistant на компьютере с Windows, macOs или Linux. На компьютере появляется вирутальная машина в которой работает Home Assistant.

Нужно сказчать файл с образом с GitHub.

А дальше из этого образа нужно создать виртуальную машину. Это можно сделать, например с помощью VirtualBox.

Home Assistant Supervised

Это официальный способ установки. Но разработчики Home Assistant не особо любят его рекомендовать. Устанавливается Home Assistant вместе с супервизором.

Это возможность установить Home Assistant на компьютер с Linux. Этот способ подходит людям кто знает и умеет использовать Linux консоль. При таком способе установки остается полный доступ к операционной системе, но так же появляется Home Assistant с супервизором.

Опасность этого способа установки — нужно очень точно следовать всем рекомендациям. Если что-то сделать не совсем так, то Home Assistant переходит в режим "You are running an unsupported installation." или даже в "Your installation is running in an unhealthy state", а в этом режиме Home Assistant работает исключительно плохо.

Главное требование — операционная система Linux обязательно должна быть Debian 10 aka Buster. Другие версии Linux официально не поддерживаются. Поддержка отсутствет даже для тех Linux дистрибутивов которые сильно похожи на Debian (например, Rasbperry OS, Ubuntu).

Прямо сейчас этот способ установки работает и на других операционных системах (Rasbperry OS, Ubuntu), но использование этих операционных систем выдает предупреждение "You are running an unsupported installation." и, возможно, что в будущем это будет выдавать не только предупреждение, но и вызывать какие-то проблемы с работой. Так что скорее всего, если ставить Home Assistant этим способом, то стоит соблюдать все требования, или использовать другой способ установки.

Home Assistant Container

Это официальный способ запуска Home Assistant. При использовании этого способа супервизора нет.

Для этого способа нужно чтобы на машине был установлен докер. Этот способ можно использовать на любой операционной системе (Windows, macOS, Linux).

Это просто запуск докер контейнера из официального докерного образа Home Assistant. Можно запускать контейнер как напрямую через docker, можно через docker-compose, а можно использовать какие-то другие способы.

Самый простой способ для запуска HA этим способом — это одна команда:

Home Assistant Core

HassWP

Это неофицильный способ установки. Супервизора тут нет. Это возможность запустить Home Assistant на Windows машине очень быстро и просто, и сразу с некоторым наборо предустановленных дополенний.

Читайте также: