February 26, 2024

Установка Home Assistant на Ubuntu сервер

Установка Home Assistant

Вся предоставленная ниже информация взята на сайте проекта и основана на установке Home Assistant для Raspberry Pi.

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

sudo apt-get update
sudo apt-get upgrade -y

После обновления системы устанавливаем необходимые компоненты и зависимости.

sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev autoconf build-essential

Создаем нового системного пользователя с домашней папкой для запуска и работы ядра Home Assistant, назовем его homeassistant. Добавим его в группу dialout для взаимодействия с устройствами Z-Wave и ZigBee.

sudo useradd -rm homeassistant -G dialout

Далее создаем папку для ядра Home Assistant и устанавливаем пользователя homeassistant для неё владельцем.

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

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

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

После активации виртуальной среды выполняем установку необходимого пакета Python.

python3 -m pip install wheel

По завершении установки пакета Python приступаем к установке Home Assistant.

pip3 install homeassistant

Запускаем наш Home Assistant в первый раз. При первом запуске в домашнем каталоге пользователя homeassistant (/home/homeassistant) будет создана папка .homeassistant, в которой будут находится конфигурационные файлы системы.

hass

Первый запуск может занимать 5-10 минут, после чего проверяем доступность установленной системы через браузер.

http://ha_ip_address:8123

Прерываем работу запущенной системы.

Ctrl+C

Выходим из учетной записи пользователя homeassistant.

Создаем файл для запуска сервиса при старте системы.

sudo nano /etc/systemd/system/homeassistant@homeassistant.service

Заполняем его.

[Unit]
Description=Home Assistant
After=network-online.target

[Service]
Type=simple
User=%i
WorkingDirectory=/home/%i/.homeassistant
ExecStart=/srv/homeassistant/bin/hass -c "/home/%i/.homeassistant"
RestartForceExitStatus=100

[Install]
WantedBy=multi-user.target

Запускаем сервис.

$ sudo systemctl --system daemon-reload
$ sudo systemctl enable homeassistant@homeassistant.service
$ sudo systemctl start homeassistant@homeassistant.service

Проверяем работу сервиса.

sudo systemctl status homeassistant@homeassistant.service

Через Web браузер проверяем работу Home Assistant.

http://ha_ip_address:8123

Обновление Home Assistant

Для обновления до последней версии необходимо выполнить следующие три команды.

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

После обновления выполняем перезапуск службы homeassistant@homeassistant.service

sudo systemctl restart homeassistant@homeassistant.service

Обратите внимание, что первый запуск после обновления может занять некоторое время.