# Home Assistant OS在x86迷你PC上的安装和使用 **Repository Path**: cszhaoqm/home-assistant-os ## Basic Information - **Project Name**: Home Assistant OS在x86迷你PC上的安装和使用 - **Description**: 本文介绍在J3455 CPU的X86架构迷你PC上安装Home Assistant Operate System的过程。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2024-05-08 - **Last Updated**: 2025-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 在x86-64迷你PC Ubuntu系统内通过虚拟机安装HAOS ### 介绍 本文介绍在J3455 CPU的X86架构迷你PC上安装Home Assistant Operate System的过程。 很久之前买了一台J3455 CPU的小型软路由,后来发现用处不大(因为KX上网只需要在群晖中安装c_la_sh即可)。所以把机器安装了Ubuntu 20.4,参考HomeAssistant官网指引,在Virtualbox环境下安装了HAOS版本。 但是,虚拟机中的HAOS怎么也无法正常启动。经过各种搜索和尝试后还是失败! 最后,考虑到Ubuntu版本比较老旧,于是升级到22.04版本,居然顺利启动了! ### 安装教程 #### HACS安装 #### MQTT安装 #### Node-Red安装 ### 使用说明 #### 如何设置MQTT传感器 在configuration.yaml中加入以下内容,注意需要按照yaml规则缩进两个空格,-和:后面都有一个空格 ``` C # Example configuration.yaml entry mqtt: - sensor: name: "Temperature outside" device_class: "temperature" state_topic: "home/livingroom/temperature" suggested_display_precision: 1 unit_of_measurement: "C" unique_id: "Temperature outside" - sensor: name: "Temperature livingroom" device_class: "temperature" state_topic: "home/outside/temperature" suggested_display_precision: 1 unit_of_measurement: "C" unique_id: "Temperature livingroom" ``` #### 如何恢复概览的默认界面 概览->右上角三个小点->编辑仪表盘->再点三个小点->raw configuration editor->删除里面内容->输入下文后保存 ``` C strategy: type: original-states ``` from: ### ESPHome折腾 详见: https://gitee.com/cszhaoqm/esphome-script # 在X86-64通用设备上直接安装HAOS 如果你想轻松开始使用 Home Assistant,或者几乎没有 Linux 使用经验,请遵循本指南。 https://www.home-assistant.io/installation/generic-x86-64 #### 前提条件 本指南假设你有一台专用的通用 x86-64 PC 来专门运行 Home Assistant 操作系统。 · 这通常是一个基于英特尔或 AMD 的系统。 · 系统必须支持 64 位并能够使用 UEFI 启动。 · 过去 10 年内生产的大多数系统都支持 UEFI 启动模式。 #### 概述 · 首先,你需要将你的通用 x86-64 PC 配置为使用 UEFI 启动模式。 · 然后,将 Home Assistant 操作系统磁盘映像写入你的启动介质。 ##### 配置你的 x86-64 硬件的 BIOS 要启动 Home Assistant 操作系统,BIOS 需要启用 UEFI 启动模式并禁用安全启动。下面的截图来自第七代英特尔 NUC 系统。你的系统上的 BIOS 菜单可能看起来不同,但选项应该仍然存在且命名相似。 要进入 BIOS,启动你的 x86-64 硬件并反复按 F2 键(在某些系统上可能是 Del、F1 或 F10)。 1. 确保启用 UEFI 启动模式。 2. 禁用安全启动。 3. 保存更改并退出。 BIOS 配置现已完成。 ##### 将 HAOS 写入你的 x86-64 硬件 接下来,你需要将 Home Assistant 操作系统映像写入启动介质,这是你的 x86-64 硬件在运行 Home Assistant 时将从中启动的介质。 HAOS 没有自动写入映像的集成安装程序。你需要使用 Ubuntu 的“磁盘”工具或 Balena Etcher 手动写入。 通常,x86-64 启动介质使用内部介质,如 S-ATA 硬盘、S-ATA SSD、M.2 SSD 或不可移动的 eMMC。或者,也可以使用外部介质,如 USB SSD,但不推荐这样做。 要将 HAOS 映像写入 x86-64 硬件的启动介质,有两种不同的方法: · **方法 1 (推荐)**:从 U 盘启动 Ubuntu,然后从那里安装 Home Assistant 操作系统。它也适用于带有内部硬盘的笔记本电脑和 PC。 · **方法 2**:使用此方法,你可以直接从你的常规计算机将 Home Assistant 操作系统磁盘映像写入启动介质。步骤稍微复杂一些。如果你有不可移动的内部介质(例如因为你使用的是笔记本电脑)或没有必要的适配器(例如 USB 转 S-ATA 适配器),请使用方法 1。 #### 方法 1:通过从 U 盘启动 Ubuntu 来安装 HAOS ##### 所需材料 · 计算机 · 目标 x86-64 硬件(你希望在其上安装 Home Assistant 操作系统) · U 盘(USB 拇指盘即可,大小至少为 8 GB) · 网络连接 ##### 通过从 U 盘启动 Ubuntu 来安装 HAOS 注意:此过程会将 Home Assistant 操作系统写入你的设备。这意味着你将丢失所有数据以及先前安装的操作系统。 在执行此过程之前,请备份你的数据。 1. 创建 U 盘启动系统: · 按照 Ubuntu 桌面版说明,将 Ubuntu Desktop ISO 文件写入 U 盘设备。 2. 将 U 盘插入你想要运行 Home Assistant 的x86计算机。 3. 启动 U 盘上的系统。 · 你可能需要调整启动顺序或使用 F10(根据 BIOS 的不同,可能是其他 F 键)来选择 U 盘作为启动设备。 4. 出现提示时,确保选择“试用 Ubuntu”。 这将在 U 盘设备上运行 Ubuntu。 5. 系统随后将启动 Ubuntu。 6. 将你的系统连接到网络并确保它可以访问互联网。 7. 在 Ubuntu 中,打开浏览器并打开当前文档页面,以便你可以按照步骤操作。 8. 从 https://github.com/home-assistant/operating-system/releases/download/16.3/haos_generic-x86-64-16.3.img.xz 下载映像。 9. 在 Ubuntu 中,点击左下角,选择“显示应用程序”。 10. 在应用程序中,搜索并打开“磁盘”,然后开始恢复 HAOS 映像: · 在“磁盘”中,左侧选择你想要安装 HAOS 的内部磁盘设备。 · 在屏幕顶部,选择三点菜单并选择“恢复磁盘映像…”。 · 选择你刚刚下载的映像。 · 选择“开始恢复…”。 · 选择“恢复”以确认。 · 故障排除: · 如果收到“卸载文件系统时出错”的错误消息,指出目标正忙: · 很可能,你正在内部磁盘上运行 Ubuntu。相反,你需要在 U 盘上运行它。 · 返回到步骤 3,并在启动期间确保选择“试用 Ubuntu”(而不是“安装 Ubuntu”)。 · 另一个问题可能是 Ubuntu 实时系统正在使用现有 Linux 安装的交换分区。 · 如果你在要安装 HAOS 的驱动器上看到列出“Swap”分区,只需选择该 Swap 分区,然后按停止按钮卸载它,再试一次恢复操作。 11. 在分区概览中,你现在应该能看到恢复操作正在进行。Home Assistant 操作系统现在正安装到你的系统上。 12. Home Assistant 操作系统安装完成后,关闭系统。 13. Ubuntu 关闭后,取出 U 盘(Ubuntu 会通知你何时可以取出)。 14. 你的 Home Assistant 服务器现已设置完毕,可以开始使用。 15. 要使用它,请按照启动你的通用 x86-64 部分的描述进行操作。 #### 方法 2:直接从启动介质安装 HAOS 仅当方法 1 对你无效时才使用此方法。 ##### 所需材料 · 计算机 · 目标 x86-64 硬件(你希望在其上安装 Home Assistant 操作系统) · 启动介质 · 网络连接 ##### 将映像写入你的启动介质 注意:此过程会将 Home Assistant 操作系统写入你的设备。这意味着你将丢失所有数据以及先前安装的操作系统。 在继续下一步之前,请备份你的数据。 1. 将 Home Assistant 启动介质(存储设备)连接到你的计算机。 2. 下载并启动 Balena Etcher。在 Windows 上你可能需要以管理员权限运行它。 3. 下载映像到你的计算机。 · 复制映像的 URL。 · 如果下面有多个链接,请确保选择适合你通用 x86-64 版本的正确链接。 · 将 URL 粘贴到你的浏览器中以开始下载。 4. 解压你刚刚下载的文件。 5. 选择“Flash from file”并选择你刚刚解压的映像。 · 不要使用“Flash from URL”。它在某些系统上无法工作。 6. 选择目标。 · 选择你想用于安装的启动介质(存储设备)。 7. 选择“Flash!”开始写入映像。 · 如果操作失败,请解压缩 .xz 文件并重试。 · 当 Balena Etcher 完成映像写入后,你会看到一个确认信息。 ##### 启动你的通用 x86-64 · 如果使用方法 1 安装,请确保从系统中取出 U 盘。 · 如果使用方法 2 安装,请将启动介质安装到你的 x86-64 硬件中。 · 插入一根连接到网络和互联网的以太网电缆。 · 注意:需要互联网,因为新安装的 Home Assistant 操作系统尚未包含所有 Home Assistant 组件。它会在首次启动时下载最新版本的 Home Assistant Core。 · 给系统通电。如果你有屏幕连接到通用 x86-64 系统,大约一分钟后,Home Assistant 欢迎横幅将出现在控制台中。 如果机器抱怨找不到可启动介质,你可能需要在 BIOS 中指定 EFI 条目。这可以通过使用实时操作系统(例如 Ubuntu)并运行以下命令来完成(将 替换为 Linux 分配的适当驱动器名称,通常是 sda,对于 NVMe SSD 则是 nvme0n1): ```bash efibootmgr --create --disk /dev/ --part 1 --label "HAOS" \ --loader '\EFI\BOOT\bootx64.efi' ``` efibootmgr 命令只有在你以 UEFI 模式启动实时操作系统时才有效,因此请确保以此模式从 U 盘启动。根据你在提示符下的权限,可能需要使用 sudo 运行 efibootmgr。 或者,BIOS 可能会为你提供一个添加启动选项的工具,你可以在其中指定 EFI 文件的路径:\EFI\BOOT\bootx64.efi · 在你的桌面系统浏览器中,几分钟内你将能够在 homeassistant.local:8123 访问到你的新 Home Assistant。 如果你运行的是旧版 Windows 或网络配置更严格,则可能需要在 homeassistant:8123 或 http://X.X.X.X:8123 访问 Home Assistant(将 X.X.X.X 替换为你的通用 x86-64 的 IP 地址)。 Home Assistant 操作系统安装完毕并可以访问后,你可以继续入门设置。