Introducción
Este manual fue compilado por mí después de varias semanas de estudiar los foros, para aquellos que quieran seguir mi camino. Las críticas son bienvenidas.
Selección de pila
Mucho se ha dicho sobre Home Assistant (en lo sucesivo, HA para abreviar) y, en mi opinión, este es el sistema de hogar inteligente más exitoso. Sobre el tema de su elección, puede leer aquí:
https://habr.com/ru/post/485848/
https://sprut.ai/client/article/546
https://www.lazyhome.ru/index.php/15-overview/22-openhab-majordomo
¿Por qué HDD? Muchas veces en los foros escribieron que una frambuesa con Home Assistant a bordo come tarjetas SD una por año. Además, HA también escribe registros en qué medida no está claro. Entonces no SD.
Equipo en stock
Frambuesa pi 4
HDD
Adaptador SATA a USB (si es necesario)
Monitor
Klava
Laptop (computadora) con capacidad para grabar tarjetas SD. (Tengo una computadora portátil con Windows 10)
Enrutador para acceso a la red
Opciones de instalación de Home Assistant
El sitio oficial nos ofrece varias formas de instalar Home Assistant:
Sistema operativo Home Assistant para Raspberry Pi. La forma más sencilla de instalar: subió la imagen y no hay problema. Todas las funciones están disponibles. Recomendado por desarrolladores. La desventaja es la falta de un sistema completo.
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. , DHP IP- Raspberry. , , .
Ubuntu . Ubuntu Server 20.04.2 LTS 64-bit. SD Balena Etcher. ... . , Ububuntu . network-config
WiFi. - :
version: 2
ethernets:
eth0:
dhcp4: true
optional: true
wifis:
wlan0:
dhcp4: true
optional: true
access-points:
" ":
password: " "
:
Raspberry WiFi. . ,
sudo reboot -h now
.
. , ubuntu
. Login incorrect
. -- , . - . , - Ubuntu , . IP MAC ip a
. IP MAC . - .
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
, - :
#[pi4]
#kernel=uboot_rpi_4.bin
#max_framebuffers=2
#[pi2]
#kernel=uboot_rpi_2.bin
#[pi3]
#kernel=uboot_rpi_3.bin
, - :
[all]
arm_64bit=1
device_tree_address=0x03000000
kernel=vmlinux
initramfs initrd.img followkernel
. , ...
: wi-fi 0.
. : https://github.com/raspberrypi/firmware/tree/master
. Code
, Download ZIP
. Boot
( !) .dat
.elf
USB . USB . USB 3.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.
, Docker sudo apt install apt-transport-https ca-certificates curl gnupg-agent \
software-properties-common
.
Docker curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
. , sudo apt-key fingerprint 0EBFCD88
. 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
.
Docker .
sudo add-apt-repository \
"deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) \
stable"
sudo apt update
Docker sudo apt install docker-ce docker-ce-cli containerd.io
. , Docker sudo docker run hello-world
.
3. Home Assistant
, Home Assistant! curl -Lo installer.sh https://raw.githubusercontent.com/home-assistant/supervised-installer/master/installer.sh
Pero no tenemos prisa por lanzarlo. Mejor aún, ábralo vi installer.sh
. Encontramos la línea y # Pull supervisor image
después la insertamos sleep 20
, y luego insertamos otra línea HASSIO_VERSION="latest"
. Cambie al modo de superusuario sudo su
y ejecute el script bash installer.sh --machine raspberrypi4-64
. Estamos esperando que el script se ejecute hasta el final. Se tarda un poco en cargar Home Assistant por primera vez. Se paciente. Si todo salió bien, puede comunicarse con HA en http: // local ip raspberry : 8123. No olvide eliminarlo rm installer.sh
ya no es necesario.
Eso es todo.