Найти в Дзене
KooLru

Установка Home Assistant на OrangePi 4 LTS | OrangePi 3 LTS

Оглавление

Список поддерживаемый платформ Home Assistant весьма своеобразен - помимо попсовой Raspberry Pi поддерживается ODROID (в РФ не доставляется), малодоступный Asus Tinkerboard и многожручий x86.

При установке на OrangePi можно столкнутся с неведомым, отчего HA будет ругаться на Unhealthy Installation и всячески показывать как оно плохо себя чувствует не на одноплатнике за 25К/рублей или же не на синем ODROID-N2+

Для установки так же подходит
Orange Pi 3 LTS или Orange Pi 4 LTS при этом "ухудшения" производиетльности я не заметил.

Устанавливаем как Home Assistant Supervised. Мануал расположен
вот тут.

Подготовка (Шаг 0)

apt update | upgrade

apparmor & cgroups

0. Для "включения" apparmor надо добавить к параметрам apparmor=1 security=apparmor
1. В bullseye по дефолту
cgroupv2 , хом асистент хочет в1
Для этого
надо добавить всего ничего:
systemd.unified_cgroup_hierarchy=false и systemd.legacy_systemd_cgroup_controller=false.

Конфигурация U-Boot

cd /boot/

nano boot.cmd

комментируем вот это

#if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=memory swapaccount=1"; fi

под ней добавляем вот это

setenv bootargs "${bootargs} systemd.unified_cgroup_hierarchy=false systemd.legacy_systemd_cgroup_controller=false cgroup_enable=memory apparmor=1 security=apparmor"

После чего (Ctrl+O, ENTER в нано)

mkimage -C none -A arm -T script -d boot.cmd boot.scr

и в завершение

reboot now

после перезегразуки смотрим

mount | grep group

Если видим что-то отличное от

tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,size=4096k,nr_inodes=1024,mode=755)
cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/rdma type cgroup (rw,nosuid,nodev,noexec,relatime,rdma)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)

то зря давили кнопки :) и теперь придется еще и гуглить.

Перенос на EMMC | внешний диск

Чтобы не стало тесно ИМХО нужен диск 32ГБ и более. 8ГБ ОПИ3 хватит на установку и пару мелких аддонов. 16 ГБ в ОПИ4 хватит на побольше.
Move datadisk в HA работает только на HASS OS.

- EMMC
sudo nand-sata-install
- USB (или иное, если прикрутили PCI-E носитель)

sudo orangepi-config

System -> Install

Шаг 1. Установка зависимостей

apt-get install \
apparmor \
jq \
wget \
curl \
udisks2 \
libglib2.0-bin \
network-manager \
dbus \
lsb-release \
systemd-journal-remote -y

Шаг 2: Установка Docker-CE

curl -fsSL get.docker.com | sh

Шаг 3: Установка OS-Agent:


Инструкция тут
https://github.com/home-assistant/os-agent/tree/main#using-home-assistant-supervised-on-debian

Определяем архитектуру

uname -a

Linux orangepi3-lts 5.16.17-sun50iw6 #3.0.8 SMP Tue Sep 6 19:19:38 CST 2022 **aarch64** GNU/Linux

Качаем фаел со страницы релизов
https://github.com/home-assistant/os-agent/releases/tag/1.4.1

wget
https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_aarch64.deb

Устанавливаем
sudo dpkg -i os-agent_1.4.1_linux_aarch64.deb

проверяем

gdbus introspect --system --dest io.hass.os --object-path /io/hass/os

мануал говорит про то, что если не увидели ошибку, то все ок.

Шаг 4: Устанавливаем Home Assistant Supervised

wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
dpkg -i homeassistant-supervised.deb

В качестве платформы выбираем odroid-c4

HACS Home Assistant Community Store

Страница проекта https://hacs.xyz/ там же инструкция с кучей предупреждений

Скачиваем

wget -O -
https://get.hacs.xyz | bash -

далее идем в интеграции, добавить, HACS. Необходима учетка на гитхабе