Установка Home Assistant Core

Опубликовано admin - ср, 04/13/2022 - 15:31

Долго думал писать или нет процесс установки Ubuntu Server, и решил что писать там в принципе нечего. Но, если нужна такая инструкция, напишите в комментариях. 

На данный момент я предполагаю что вы:

  • Установили Ubuntu 20.04 
  • Настроили сеть
  • Подключились по ssh к серверу

Начнём пожалуй с обновления системы

sudo apt update && sudo apt upgrade -y

Нам будет необходимо установить Python версии 3.9, для этого мы подключим внешний репозиторий:

sudo add-apt-repository ppa:deadsnakes/ppa

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

sudo apt install -y python3.9 python3.9-dev python3.9-venv python3-pip libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5 libturbojpeg0-dev tzdata ffmpeg unzip

Затем нам необходимо создать пользователя для запуска HA и дать ему права для доступа к последовательному порту, чтобы в дальнейшем была возможность подключить например стик для zigbee.

sudo useradd -rm homeassistant -G dialout

Создадим виртуальное окружение python venv. Это такое изолирование окружение для выполнения приложений на языке Python, которое позволяет ставить для конкретного приложения необходимые версии библиотек не затрагивая системные настройки. Для этого сначала создадим папку и сделаем нашего пользователя её владельцем:

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

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

sudo -u homeassistant -H -s
python3.9 -m venv /srv/homeassistant

Перейдём в папку и включим окружение:
cd /srv/homeassistant/
. bin/activate

По итогу в командной строке мы увидим начало вида (homeassistant) homeassistant@myserver:/srv/homeassistant$. И установим Home Assistant с помощью менеджера пакетов Python pip:

pip3 install wheel
pip3 install homeassistant

После завершения установки запустим Home Assistant:

hass

Первый запуск займёт некоторое время.

Будет создана начальная конфигурация по пути /home/homeassistant/.homeassistant и установлены необходимые зависимости. После этого можно будет зайти по адресу http://serverip:8123 . Вам будет предложено создать учётную запись:

Начальный экран

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

Начальный экран 2

Выбрать какой служебной информацией делиться с разработчиками:

Диагностика

И покажет какие интеграции нашлись в вашей сети и их можно настроить сразу:

Интеграции

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

Расширенный режим

Перейдём обратно в консоль и нажмём ctrl-c для того чтобы остановить наш Home Assistant, и наберём exit, чтобы выйти из под пользователя и из виртуального окружения.

Теперь нам нужно настроить автоматический запуск при старте системы. Для этого создадим файл /etc/systemd/system/home-assistant@homeassistant.service:

sudo nano /etc/systemd/system/home-assistant@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

Обновим конфигурацию systemd

sudo systemctl --system daemon-reload

Включим автоматический запуск службы:

sudo systemctl enable home-assistant@homeassistant

И запустим:

sudo systemctl start home-assistant@homeassistant

Вы можете использовать команды start stop restart и status для получения статуса службы и короткой информации. Для просмотра лога в реальном времени используйте:

sudo journalctl -f -u home-assistant@homeassistant

Или так для вывода только ошибок:

sudo journalctl -f -u home-assistant@homeassistant| grep -i 'error'

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

sudo apt update && sudo apt upgrade -y
sudo add-apt-repository ppa:deadsnakes/ppa

Тут надо будет нажать ENTER
sudo apt install -y python3.9 python3.9-dev python3.9-venv python3-pip libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5 libturbojpeg0-dev tzdata ffmpeg unzip
sudo useradd -rm homeassistant -G dialout
sudo mkdir /srv/homeassistant
sudo chown homeassistant:homeassistant /srv/homeassistant
sudo -u homeassistant -H -s
python3.9 -m venv /srv/homeassistant
cd /srv/homeassistant/
. bin/activate
pip3 install wheel
pip3 install homeassistant
hass