Z3735F 小主机安装 HomeAssistant OS
前言
up 主一直一来都想搭建一台 Home Assistant 作为家里的智能家居中枢。众所周知, 的安装有四种方式,四种方式又各有区别,这里贴一张官方的对比图。

因此想要体验 Home Assistant 完整的功能的话就需要搭建 Home Assistant OS 或者 Home Assistant Supervised,Home Assistant Supervised 只能支持安装在 Debian 11 的系统之上,家里使用的服务器目前使用的是 Debian 12 系统(无线网卡是 AX211,Debian 11 没有相关的无线网卡驱动,尝试过从 backport 安装无线网卡驱动但是还是有点兼容性问题,只能选择基于 6.x 内核的 Debian 12)。苦于没有找到合适的低功耗小主机,因此只能观望。某一天刷 B 站时看了 up 主茶茶与无夏的推荐:Z3735F 低功耗小主机,内心又开始心动了,于是去咸鱼上花了 145 大洋购入了一台 2G 内存 64G 储存的 Z3735F(32G 储存就够用了)。
Z3735F 小主机
我们现在看下 这个小主机的配置
105mm x 70mm
CPU 英特尔 atom Z3735F 1.33Ghz 4核 (2M Cache, up to 1.83 GHz)
显示 英特尔 Intel HD Graphics 显示核心
网络 瑞昱 RTL8152B 百兆网口
WIFI及蓝牙 板载802.11n无线模块及蓝牙4.0模块
音频 瑞昱 ALC5640 音频解码控制器
存储 板载64G EMMC
内存 板载2G内存
面板接口
1x 电源开关
1x TF卡读卡器
1x 电源指示灯
1x Micro USB 接口(支持USB供电及扩展为通用USB接口)
2x USB 2.0接口
1x 音频输入输出2合1接口
背部接口
1x DC 5V直流电源输入 (5V2A,外径3.5mm/内径1.35mm)
1x HDMI接口
1x VGA(D-Sub)接口
1x RJ45网络接口
散热方式 被动散热

经过网友测试,该主机的实际功耗仅 5W,并且 2G 的内存足够跑 Home Assistant OS,简直完美有没有!!!
但是!这里有个但是!这个小主机有两个坑:
这个小主机的储存是 64G 的板载 EMMC,无法将其取下来查到电脑上进行烧录,也无法通过 windows 启动盘启动后用 Rufus Unetbootin 等工具烧录(不支持烧录内置硬盘)。为了解决这个问题也导致我花了一两天时间,下面分享下我的安装方法(不想折腾的同学可以直接买个 32G 及其以上的 SD 卡,烧录完之后直接插入 tf 卡槽即可)
虽然这个小主机的 CPU 是 64 位的,但是它的 BIOS 是 32 位的,因此不支持 64 位的引导程序。
Home Assistant OS 安装
准备工具:
一台装有烧录工具的电脑:Windows、Mac、Linux 都可以
Windows:可以使用 Rufus 烧录器,https://github.com/pbatard/rufus/releases
Mac、Linux:可以使用 Balenaetcher 烧录器,https://github.com/balena-io/etcher/releases
一个 8G 以上 U 盘:用来制作启动盘
一个 8G 以上 U 盘:用来装 Home Assistant OS 镜像(可选项,如果启动盘大于 16 G,可以直接将 Home Assistant OS 镜像放入启动盘中,无需该 U 盘)
Home Assistant OS 镜像,下载地址:https://github.com/home-assistant/operating-system/releases ,从该地址下载最新的 OS 镜像,镜像名一般为:haos_generic-x86-64-xxxx.img.xz,用解压工具解压后获得 haos_generic-x86-64-xxxx.img 镜像文件。
lubuntu 镜像,下载地址: https://cdimage.ubuntu.com/lubuntu/releases/ ,从以上镜像地址下载 18.04 或者以上的镜像(16.04 镜像引导不了,暂时不清楚原因,ubuntu 的镜像也可以,不过 lubuntu 占用的内存会更小)
32 位 UEFI 引导程序,下载地址:https://github.com/lamadotcare/bootia32-efi/blob/main/bootia32.efi
安装步骤:
将 U 盘插入电脑中使用烧录器将 lubuntu 烧录至 U 盘中制作启动盘,我这里使用的是 Windows 电脑,烧录工具使用的是 Rufus,烧录配置如下图:
这里需要注意的是分区类型需要选择 GPT,文件系统选择 FAT32。

烧录完成后打开启动盘进入 EFI/BOOT/ 目录下,将 32 位引导程序 bootia32.efi 拷贝至此。
如果启动 U 盘还有剩余空间能放入 Home Assistant OS 镜像,则将 Home Assistant OS 镜像拷贝至启动 U 盘。如果启动 U 盘没有剩余空间能放入 Home Assistant OS 镜像,则将 Home Assistant OS 镜像拷贝至其他 U 盘中。
将启动 U 盘(以及 Home Assistant OS 镜像 U 盘)插入小主机中,按下开机键后疯狂按 ESC 键进入 BIOS,选择 U 盘的引导程序启动。
选择 try without install 启动 lubuntu 系统。
点击左下角找到 terminal 进入命令行模式。
执行如下命令查看 EMMC 设备名
sudo fdisk -l
应该会出现很多设备,如果不清楚怎么找设备的话就根据容量大小找设备,我的 Z3735F 小主机是 64G 的储存,因此找到容量为 64G 的设备即为小主机的磁盘设备。
执行以下命令将 U 盘中的 Home Assistant OS 镜像写入 EMMC 中
# if 后面填写 Home Assistant OS 镜像路径
# of 后面填写要烧录的磁盘设备,设备名可以通过 sudo fdisk -l 查看
# 注意:该命令会格式化小主机的 EMMC 磁盘设备,重要文件请先保存
sudo dd if=/path/to/haos_generic-x86-64-10.2.img of=/dev/sdxxx bs=4M status=progress!!!这里不使用官方推荐的 Balenaetcher 来将镜像烧录至 EMMC 中的原因在于 Balenaetcher 烧录时会将镜像加载到内存中,可怜的 Z3735F 小主机的内存只有 2G。Balenaetcher 烧录最终会因为内存不足导致烧录失败或者系统卡死。
等待烧录完成关机后拔出 U 盘,确保小主机插上网线后再启动小主机。同样疯狂按 ESC 进入 BIOS 选择 HAOS 引导进入 Home Assistant OS 中。
等待 Home Assistant OS 启动完成后会显示 Home Assistant 访问地址,我的地址是 http://homeassistant.local:8123/ 。使用电脑访问该地址,进入初始化页面。如果能进到初始化页面就说明 Home Assistant OS 安装完成了。
PS:如果没有科学环境,初始化估计要好几个小时,请耐心等待。

至此在 Z3735F 小主机上安装 Home Assistant OS(鲜花)。
至于 up 主为什么没有先给这个小主机安装 Debian 系统,再基于 Debian 安装 Home Assistant Supervised 呢。一方面是我已经有一台 Debian 服务器了,二是小主机的内存只有 2G,也不打算在小主机上装其他服务,因此也没有必要装 Debian,省的后期维护麻烦。
如果有小伙伴哪里有问题可以留言提问,up 主会在力所能及的范围内帮助解决!
如果有小伙伴想看视频教程的话也可以留言,后面会根据留言情况做个视频教程。