Простая установка Home Assistant Supervised на Debian 10 | Kali Linux на Неттоп (домашний сервер), Ноутбук, Десктоп… или даже VirtualBox
Я уже рассматривал установку своих тестовых версий Home Assistant Core и Home Аssistant Supervised на бесплатный (Always Free) VPS — сервер от Oracle. Если вы хотите установить свою систему «Умного дома» на десктопную или серверную версию Ubuntu 20.04, то можете смело использовать в качестве инструкции указанные выше статьи. В этой же статье будет установка Home Assistant Supervised на Debian | Kali Linux на неттоп (домашний сервер), ноутбук, нетбук, десктоп, моноблок… или даже VirtualBox.
Отличие Home Аssistant Supervised от Home Assistant Core и других вариантов — это конечно же наличие Supervisor, с помощью которого становятся доступны различные плагины (аддоны) из Add-on Store. (Как говорит мой друг — отличная версия для «Домохозяек») :-)))
Я свой окончательный выбор остановил именно на версии с Supervisor, не из-за наличия аддонов, т.к. использовать я их буду довольно редко, а скорее по этой причине:
Supervisor — это не просто приложение, это полноценное устройство, которое управляет всей системой. Он очистит, восстановит или сбросит настройки по умолчанию, если они больше не будут соответствовать ожидаемым значениям.
По моим наблюдениям Supervisor делает систему «Умного дома» практически не убиваемой, что с моей любовью к различным экспериментам с системой является огромным плюсом! )))
Home Аssistant Supervised имеет очень большое сходство с базовой Home Assistant OS,
но в отличии от неё оставляет пользователю полный доступ к операционной системе Linux, в которую он установлен.
Учитывая этот факт, для установки своего «Умного дома» — Home Аssistant Supervised я выбрал (на просторах б/у техники) простенький NETTOP имеющий на борту 4-х ядерный Intel Celeron — 2 GHz, два SSD 120 + 500 Gb (второй купил для мультимедиа) и планку оперативки на 8 Gb. Всё это обошлось мне за 4+4+2~10 т.р., что всего на 20-30% дороже обычной Raspberry Pi 4 b c Китая. Но ресурсов под «Умный дом» на базе Home Аssistant Supervised + несколько других запущенных сервисов и возможность иногда (по потребности) зайти в систему Linux, как на десктопную версию (90% времени работает как сервер) — более чем достаточно! 😉
Не стоит путать установку Home Аssistant Supervised, которая осуществляется так же в Docker, с «Установкой Core-версии в Docker», которую многие/некоторые часто имеют ввиду услышав комбинацию из слов — «Home Assistant + Docker». Т.е. мы не рассматриваем установку Home Assistant Core в Docker где все контейнеры полностью изолированы от хост-системы. В версии Home Аssistant Supervised — «Supervisor взаимодействует с системой»… В общем рекомендую «покурить» эту тему в официальном источнике — Installation of Home Assistant (и расставить уже все точки над «i») 🙂
Эта статья лишь небольшое дополнение к официальной инструкции на github с несколькими дополнениями и нюансами по установки системы конкретно на Kali Linux | Debian (desktop | server) и отчасти показывающая что утверждение This installation method is for advanced users only не такое уж и страшное и верное на 100% :-)))
А причин выбрать именно Debian в качестве хост-системы для своего «Умного дома» на базе Home Assistant множество, но есть ещё и вариант разработчиков:
Поддерживаться полностью будет Home Assistant OS и установка Home Assistant Supervised на Debian 10 (Buster)
Ну, а почему я остановил свои выбор на Kali Linux, которая базируется на Debian подробно уже рассказал в этом посте. )))
Установка Home Assistant Supervised на Debian | Kali Linux
Установку Home Аssistant Supervised будем делать через терминал. Можно и в графической оболочке системы, но рекомендую привыкать к «серверному» варианту, например через PuTTy по SSH — этот опыт вам очень пригодится в дальнейшем.
Если вы читаете мои посты не в первые, то этот вариант вам уже знаком 😉
Подготовим систему.
1) Для получения списка и обновления новых пактов, выполните:
$ sudo apt-get update && sudo apt-get upgrade -y
2) Удаляем возможно оставшиеся зависимости пакетов:
$ sudo apt autoremove -y
3) Устанавливаем необходимые пакеты:
$ sudo apt-get install -y software-properties-common apparmor-utils apt-transport-https avahi-daemon ca-certificates curl dbus jq network-manager socat
4) На этом этапе нам нужно установить Docker в Linux (Installing Docker on Kali Linux), для этого вводим в терминал поочерёдно следующие команды (Следует иметь в виду, что Kali Linux основан на Debian и команды аналогичны):
$ sudo apt install -y docker.io
$ sudo systemctl enable docker --now
Если вы хотите добавить себя в группу Docker, чтобы использовать Docker без sudo:
$ sudo usermod -aG docker $USER
Обратите внимание, что мы установили версию Docker — docker.io
Старые версии двоичного файла Docker назывались docker, docker-engine или docker-io.
Пакет docker-io по-прежнему является именем, используемым Debian / Ubuntu для выпуска docker, представленного в их официальных репозиториях.
docker-ce — это сертифицированный выпуск, предоставляемый непосредственно docker.com, и его также можно собрать из исходного кода.
Основная причина использования имени docker-io на платформе Debian / Ubuntu заключалась в том, чтобы избежать конфликта имени с двоичным файлом панели задач Docker.
Docker имеет корпоративную версию (EE) и бесплатную версию Community Edition (CE).
Перед установкой Docker Community Edition (docker-ce с сайта docker.com) вам может потребоваться удалить старые двоичные файлы.
Так что тот факт, что веб-сайт Docker ничего не пишет про установку docker.io — ровным счётом ничего не значит! ))) Но, если вы по своим личным убеждениям хотите установить версию Docker Engine на Debian (Kali Linux), то переходите на сайт Docker к официальной инструкции — Install Docker Engine on Debian
5) Деактивируем и отключаем ModemManager:
$ sudo systemctl disable ModemManager
$ sudo systemctl stop ModemManager
6) На всякий случай перезагружаем систему
$ sudo reboot
7) Загружаем скрипт «supervised-installer»:
$ curl -Lo installer.sh https://raw.githubusercontent.com/home-assistant/supervised-installer/master/installer.sh
Если не получается полностью скопировать эту строчку в терминал с сайта, то строки с кодом можете копировать с моей «шпаргалки» на github (установка Home Assistant Supervised на Debian | Kali Linux)
8) Запускаем установку способом, где установщик сам выбирает директории (папки для установки Home Аssistant Supervised):
$ sudo bash installer.sh
Рекомендую этот вариант (выше), т.к. он без всяких заморочек. Если вы хотите сами установить параметры установки, то смотрите аргументы командной строки на официальной странице установщика: https://github.com/home-assistant/supervised-installer
При выбранном мной варианте установки (стандартный) файлы Home Аssistant Supervised будут расположены в директориях так:
/usr/share/hassio — директория hass.io
/usr/share/hassio/homeassistant — директория с «конфигами» (configuration.yaml)
/usr/sbin — файлы hassio-supervisor и hassio-apparmor
/etc — файл hassio.json
Через несколько минут (от 1 до 30, в зависимости от вашего «железа») после запуска скрипта установки, Home Assistant будет доступен по адресу ipaddress:8123.
ip-address — локальный ip-address вашего сервера (неттопа, ноутбука, нетбука, десктопа, моноблока…) а в случае с установкой в VirtualBox будет указан терминале на последнем этапе отработки скрипта установки или вы его можете так же посмотреть на своём роутере согласно инструкции к нему.
На этом установка Home Assistant Supervised на Debian | Kali Linux завершена
Примечание по «локальной сети» для VirtualBox:
Перед загрузкой скрипта «supervised-installer» (пункт 7) вам нужно настроить свою виртуальную машину на использование мостового соединения, после чего она получит свой собственный IP-адрес, и вы сможете подключатся к хост-машине по нему в своей локальной сети.
Пока виртуальная машина не запущена!
выберите «Настройки» — «Сеть» — на вкладке «Адаптер 1» установите «Тип подключения:» — Сетевой мост, «Имя:» — выберите свой сетевой адаптер.
Если Home Assistant недоступен или не запускается по адресу ipaddress:8123
Если через 20-30 минут Home Assistant всё ещё не доступен по адресу ipaddress:8123, точнее установка не завершилась полностью, то нужно смотреть лог с возможными ошибками, нажав на голубой «пульсирующий кружок» и наблюдать на странице процесс установки .
Рассмотрим вариант решения возможной ошибки (ошибок):
ERROR (SyncWorker_0) [supervisor.docker.interface] Can't install homeassistant/qemux86-64-homeassistant:2021.1.5 -> 404 Client Error for http+docker://localhost/v1.41/images/homeassistant/qemux86-64-homeassistant:2021.1.5/json: Not Found ("no such image: homeassistant/qemux86-64-homeassistant:2021.1.5: No such image: homeassistant/qemux86-64-homeassistant:2021.1.5").
WARNING (MainThread) [supervisor.homeassistant.core] Error on Home Assistant installation. Retry in 30sec
ERROR (MainThread) [asyncio] Task was destroyed but it is pending!
task: .wrap_api() running at /usr/src/supervisor/supervisor/utils/__init__.py:33> wait_for=()]>>
Она может возникнуть, когда при установке своей операционной системы на этапе «Разбиение на разделы» вы выбрали отдельные разделы для /home и /var /tmp Обычно программа автоматической установки «жадничает» выделяет для тома /var — 2-3 Гб согласно своей логике. Мы можем почистить этот том от «мусора» или увеличить его объём. Подробно о том, как это сделать я написал в этой статье: Увеличение / Уменьшение логических томов LVM на Linux + очистка системы — памяти (cache) Kali Linux / Debian / Ubuntu / CentOS
Пример решения этой «проблемы»:
$ sudo lvextend -L +5G /dev/mapper/Kali--VM--vg-var -r
После этого снова запускаем скрипт «установка Home Assistant Supervised на Debian, Kali Linux, Ubuntu….»
$ sudo bash installer.sh
Пример отработки скрипта на VirtualBox (на реальной машине всё тоже самое):
Заходим в браузере по указанному в скрипте адресу с любого устройства в своей локальной сети. Там должна открыться такая страничка (ниже). Вводим свои данные (регистрируемся) и настраиваем/тестируем систему….
На этом установка Home Assistant Supervised на Debian | Kali Linux… и VirtualBox завершена.
Ф С Ё ! ! ! ) ) )
Похожие публикации:
Как подключить второй MQTT брокер к Home Assistant или мостовое (bridge) соединения MQTT брокеров Mosquitto В этом посте рассмотрим как подключить второй MQTT брокера к Home Assistant или мостовое (bridge) соединения MQTT…