在DietPI系统上安装Home Assistant Supervisor
前言
尽管HomeAssistant官方推荐直接HAOS进行安装,但这个系统对于有linux系统使用经验的用户而言有些过于白屏化,而且这个系统只对树莓派和其他少数几个板子有支持,想要自己折腾国产pi的话,还得基于其他的系统搞一搞
准备工作
- 首先需要在DietPi官网下载镜像
- 然后是烧录镜像,推荐使用balenaEtcher,比其他一些工具都好用。当然树莓派官方的烧录工具也可以自定义img烧录,也是不错的选择
- 插电,开机。使用默认的root和dietpi作为账号密码登录
系统初始化
- 系统开机之后会自动进行更新。官方源速度有些慢,如果等不及,可以直接ctrl-c,修改/etc/apt/source.list里面的地址为mirrors.aliyun.com。然后重启重新进入流程
- 初始化的时候建议把dropbear换成openssh
- 建议使用
sudo hostnamectl set-hostname YOUR_HOST_NAME
命令更改一下主机名称,增加辨识度,记得顺便sudo nano /etc/hosts
把默认的DietPi项目改成刚刚设置的host名字,否则每次sudo都会提示一个warning,比较烦人 - 建议使用
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
更改一下时区。主要是为了方便看日志,时间不会混淆。也可以当系统正式运行起来之后,可以使用sudo dietpi-config命令更改时区。
安装HomeAssistant
这里主要参考官方的安装教程
- 执行下列命令,安装系统依赖
sudo su - root
apt install network-manager systemd-resolved
systemctl restart systemd-resolved.service
systemctl disable --now networking.service
mv /etc/network/interfaces /etc/network/interfaces.disabled
systemctl restart NetworkManager
- 执行以下命令,安装应用依赖
sudo apt install curl lsb-release udisks2
- 之后我遇到了无法scp文件到板子上的问题,Qwen3给了这个方案,实测可以用
sudo systemctl unmask systemd-logind.service
sudo systemctl enable systemd-logind --now
sudo systemctl start systemd-logind
- 安装docker
curl -fsSL get.docker.com | sh
- 此时建议执行这些操作,然后重启系统再安装HomeAssistant,否则后续日志会有Error日志。尚不清楚这些Error会不会真的有影响,建议还是修理修理
sudo apt install alsa-utils upower
sudo nano /etc/bluetooth/main.conf
# 编辑配置,设置 Experimental = true
sudo nano /etc/dbus-1/system.d/pulseaudio.conf
# 添加以下内容到文件中
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="org.pulseaudio.Server"/>
<allow send_destination="org.pulseaudio.Server"/>
<allow receive_sender="org.pulseaudio.Server"/>
</policy>
<policy user="pulse">
<allow own="org.pulseaudio.Server"/>
<allow send_destination="org.pulseaudio.Server"/>
<allow receive_sender="org.pulseaudio.Server"/>
</policy>
<policy context="default">
<deny own="org.pulseaudio.Server"/>
<deny send_destination="org.pulseaudio.Server"/>
</policy>
</busconfig>
- 安装os-agent:在这里下载之后,scp到板子上,然后执行这个命令安装
sudo apt install ./os-agent_1.7.2_linux_aarch64.deb
- 最后安装supervised:在这里下载之后安装
sudo apt install ./homeassistant-supervised.deb
结尾
安装完之后,可以使用sudo journalctl -f
命令查看日志。后台会慢慢执行安装任务,根据网络状态不同,这个时间可能需要20分钟-20小时不等。建议执行完安装熄灯睡觉,第二天早晨再看看有没有安装成功