智能家居很火,之前看到过文章说小米官宣开源 Home Assistant 插件,当时内心毫无波澜。

后来大概了解了一下 Home Assistant 是什么,借用 ChatGPT 的回答:

Home Assistant 是一款开源的智能家居自动化平台,旨在通过中央化控制、自动化和智能化管理家中的各种设备和系统,从而提供更高效、便捷的生活方式。它支持与多个智能设备和服务集成,能够集中控制家中的各种硬件和软件系统,实现自定义自动化规则。

直到第二次看到有人写:小米正式官宣开源!杀疯了!

于是衍生出了对 Home Assistant 一探究竟的好奇心。

第一步就看官方安装文档:https://www.home-assistant.io/installation/

官方文档说最容易的安装是直接买安装了 Home Assistant 的树莓派硬件。

其次是自带树莓派硬件安装 Home Assistant。

最难的是自行在类安卓或 PC 机器上安装 Home Assistant。

然后出现了几种版本:

  • Home Assistant Operating System(HA OS)
  • Home Assistant Container (Docker)
  • Home Assistant Supervised (Manual installation of the Supervisor.)
  • Home Assistant Core (Manual installation using Python virtual environment.)

详细区别请看官方文档,总结就是:

HA OS 是用定制版 Debian 系统安装了 Home Assistant。

Supervised 是自己用 Debian 系统去安装 Supervised 和 HA 那一套。

这两个方案都是全功能版,Container 和 Core 不能在 UI 界面上安装插件。

安装1

首先想的是在 windows 上安装 VirtualBox 虚拟机版本。刚好电脑上安装了 VirtualBox,这是最方便的方式。

等照着官网一步一步安装好,并且进了 UI 管理界面后,死活安装不是官方的 Terminal & SSH 插件,这就尴尬了,没法进行下一步,而且最脑残的是官方竟然把 Ternimal & SSH 这个插件打的 docker 包来安装,国内 docker 根本没法拉取,卡了好久,实在没想到好的解决方法,放弃了。

安装2

换个方案,我先在 VirtualBox 虚拟机安装一个 Debian 12 的操作系统,然后预先安装好以来的软件和工具,再安装 Home Assistant Supervised。

文档:https://www.home-assistant.io/installation/linux#install-home-assistant-supervised

这个文档里第一步让我先把系统弄得满足这个文档里的需求:

https://github.com/home-assistant/architecture/blob/master/adr/0014-home-assistant-supervised.md

Docker CE >= 20.10.17
Systemd >= 239
NetworkManager >= 1.14.6
udisks2 >= 2.8
AppArmor == 2.13.x (built into the kernel)
Debian Linux Debian 12 aka Bookworm (no derivatives)
Home Assistant OS-Agent (Only the latest release is supported)

安装 Home Assistant Supervised

1、安装 Debian 12.7 xfce桌面

下载 debian-12.7.0-amd64-DVD-1.iso,在虚拟机里安装,并且同时要安装 xfce桌面、SSH。

再把网络连接改成“桥接模式”,让虚拟机能获取到 IP 地址。

1
2
3
4
5
6
7
apt update

# 安装 vim
apt install vim

# 编辑ssh配置,让root账号能远程登录
vim /etc/ssh/sshd_config

/etc/ssh/sshd_config 找到 PermitRootLogin 附近,加一行:

1
PermitRootLogin yes

重启sshd:

1
systemctl restart sshd

在 Debian 系统里使用 ip addr 查一查 ip 地址。

在本机系统上,用 Git Bash 执行命令配置免密登录:

1
ssh-copy-id root@192.168.xx.xx

2、安装依赖软件

在 Debian 12 上,Systemd、NetworkManager、udisks2、AppArmor 版本都已经满足要求。

2.1、安装 Docker CE

按照官方文档安装Docker:https://docs.docker.com/engine/install/debian/

2.2、安装 OS Agent

从上面可以看到,系统需要 Home Assistant OS-Agent

地址:https://github.com/home-assistant/os-agent

下载当前最新版本:os-agent_1.6.0_linux_x86_64.deb

打开 Git Bash,使用命令把安装包上传到 Debian 系统里:

1
scp os-agent_1.6.0_linux_x86_64.deb root@192.168.xx.xx:/root/ 

在 Debian 系统里执行安装:

1
dpkg -i os-agent_1.6.0_linux_x86_64.deb

为了验证是否安装成功,还需要安装:

1
apt install libglib2.0-bin

执行命令验证是否安装成功:

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

3、安装 Supervised

看官方文档:https://github.com/home-assistant/supervised-installer

再按照官方文档的步骤安装完成。

4、配置

打开:http://192.168.xx.xx:8123

正常情况下,就能看到欢迎页面了。选择注册账号,选择地理位置等,完成后就可以进入系统。

5、安装 HACS 极速版

HACS 极速版介绍地址:https://github.com/hacs-china

简介:HACS是一款优秀的 Home Assistant 集成商店,然而国人想要使用它下载插件或前端卡片却困难重重,主要原因就是国内的网络环境。 本项目使用了gitmirror.comfastgit.org等提供的Github代理服务,可以让大家更快的下载商店里的插件。

下载地址:https://github.com/hacs-china/integration/releases

这里下载的是 2.0.5.0 - china 版本。

未完待续……