Home Assistant 操作系统

2025年4月28日 | 阅读12分钟

引言

Home Assistant 操作系统 (HAOS) 是一种开源的专用家庭自动化解决方案,允许人们控制各种设备。它旨在提供一个单一界面,整合由不同制造商为家庭自动化创建的不同设备和服务的控制。该系统基于 Linux,最适合在 Raspberry Pi、Intel NUC 甚至虚拟机上运行;因此,可以根据具体情况轻松定制。

与其他操作系统(如 Windows 操作系统)不同,HAOS 专为家庭自动化而设计。它包含一个启动环境,其中包含 Home Assistant Core,这是广泛使用的家庭自动化平台之一。这些功能意味着用户可以控制甚至安排各种设备,例如灯光或温度、安全系统和虚拟助手,而无需任何技术输入。

HAOS 的独特卖点之一是其监管组件,该组件具有系统更新、备份和安装附加组件的功能。这保证了用户可以下载额外的功能,例如用于自动化的 Node-RED 或用于 MQTT 协议的 Mosquitto,而无需更复杂的系统配置。

主要功能和结构

  1. 专为家庭自动化而设计
    HAOS 不像用于通用目的的 WindowsLinux 操作系统那样,它是专为 Home Assistant Core 创建的,Home Assistant Core 是家庭自动化系统的核心。该操作系统具有默认设置,想要开始家庭自动化的人可以相当快地完成,而无需太多 IT 专业知识。
  2. 模块化和可扩展
    此外,用户可以通过安装附加组件来扩展其功能,例如用于增强自动化流程的 Node-RED、用于 MQTT 的 Mosquitto 和用于 Zigbee 的 Zigbee2MQTT。这些附加组件在 Home Assistant 界面中非常显眼,可以轻松下载和安装。
  3. 监管组件
    在 HAOS 的所有功能中,监管器因其在系统管理方面的卓越表现而引人注目。监管器还负责系统更新、备份和添加以及安装附加组件等操作,以帮助维护 Home Assistant 环境,该环境通过安全措施进行更新,无需用户直接处理。
  4. 跨平台兼容性
    HAOS 可以用于各种硬件,这有助于增加其灵活性。无论我们使用 Raspberry Pi 还是带有 Intel NUC Core 的 NAS,HAOS 都旨在安装在几乎任何平台上。
  5. 安全性
    在安全性方面,HAOS 专注于使其存在于隔离空间中的安全问题。它处理自动更新并增强了防护措施,以保护智能设备设置和登录详细信息等内容。

安装和设置

  1. 选择您的平台
    HAOS 具有高度灵活性,可以安装在各种硬件平台上
    • Raspberry Pi: 被 DIY 客户广泛使用,它为运行 HAOS 提供了防御和最佳平台。
    • Intel NUC: 对于更高水平的性能,没有比 Intel NUC 更适合的产品了。
    • 虚拟机 (VM): 对于希望在现有系统上运行 HAOS 的用户,可以使用 VirtualBox 或 Proxmox 进行基于 VM 的安装。
    • 其他设备: HAOS 也可以安装在 Odroid 和 Tinkerboard 等小工具中。
  2. 下载 HAOS
    • 首先,访问 Home Assistant 网站,找到适合您设备的正确图像进行更新。图像适用于 Raspberry Pi、Nuc 和虚拟机。请注意支持您的硬件配置的版本。
  3. 写入镜像
    • 写入是将刚刚下载的镜像写入特定设备的存储介质的过程。特别是对于 Raspberry,这意味着使用 SD 卡,而对于 Intel NUC 等其他机器,这涉及“写入”SSD 或 USB 驱动器。
    • Balena Etcher 是一种常用应用程序,用于将 HAOS 镜像写入存储设备。它易于使用,并与 Windows、Mac OS 和 Linux 操作系统兼容。
  4. 控制和为设备供电
    • 出现图像后,取出 SD 卡或 USB 驱动器,将其插入首选设备并打开。确保它已连接到网络(LAN 或无线)。
    • 然而,对于 Raspberry Pi,建议通过以太网连接以确保稳定性。
  5. 访问 Home Assistant
    • 启动后,Home Assistant 必须在本地网络上的 Web 浏览器中打开。打开您的浏览器并输入 http。从浏览器中,访问 http://homeassistant.local:8123 以进入设置向导。如果此 URL 无效,请使用设备的 IP 地址。
  6. 设置 Home Assistant
    设置向导将引导您完成初始配置
    • 创建帐户: 使用用户名和密码创建帐户。
    • 家庭位置和偏好: 输入您喜欢的位置、时间和单位。
    • 设备发现: HAOS 将识别并建议添加网络中的任何其他智能设备。
  7. 完成和附加组件
    • 如上所示,HAOS 设置完成后,您可以在监管器的工作区中安装额外的附加组件,例如文件编辑器、Mosquitto MQTT、Node-RED 等。

附加组件和集成

  1. HAOS 中的附加组件
    扩展是其他可以集成到 HAOS 中并提供增强 HAOS 功能的基本功能的应用程序。这些形式的家用设备非常易于安装,并且可以通过 Home Assistant 上的空间监管器选项卡进行控制。
  2. 文件编辑器
    此附加组件允许用户在浏览器环境中完全包含的编辑器窗口中格式化配置文件,而不必使用外部文本编辑器应用程序。HAOS 通常仅在终端用户需要修改服务器设置的连接设置时使用。
  3. Mosquitto MQTT 代理
    Mosquitto 为 MQTT 代理提供了一个稳定的消息代理服务器,例如,用于传感器和智能开关。MQTT 优化了智能设备之间交互的流量和可靠性。
  4. Node-RED
    Node-Red 是一个强大的工作流程自动化解决方案,使用户能够以图表方式创建规则。它提供了一个简单的前端,用于构建复杂的流程,简化了 HAOS 环境中的设备连接和管理。
  5. NGINX Home Assistant SSL 代理
    此附加组件允许您的 HAOS 实例仅接受通过 HTTPS 的连接;因此,您的设备与 HAOS 之间的所有通信都经过加密。
  6. Samba 共享
    Samba 附加组件允许在 HAOS 与同一网络中的其他设备之间传输文件,从而增强了配置文件的备份。

HAOS 中的集成

  1. Zigbee/Z-Wave
    这是智能家居设备中最著名的两种协议。HAOS 开箱即用支持 Zigbee 和 Z-Wave,这意味着您可以控制来自不同供应商的智能灯、锁和传感器。
  2. Google Home/Alexa
    HAOS 还兼容流行的语音助手,如 Google Home 和 Alexa,人们可以通过语音操作智能家居小工具。此集成允许通过自然语言控制简单的任务,例如关闭灯光或更改房间温度等。
  3. IFTTT (If This Then That)
    IFTTT 使用户能够设置自动化条件,在收到特定信号时在 HAOS 中中继操作。这非常有利,因为人们可以轻松地与应用程序中 HAOS 系统本身可能不支持的其他服务进行交互。
  4. HomeKit
    幸运的是,HAOS 兼容 Apple 的 HomeKit,这允许用户将他们的智能设备与 Apple iOS 设备连接。通过此集成,iPhone 或 iPad 可以通过家庭应用程序或使用 Siri 命令进行控制。

家庭自动化用例

1. 照明控制

照明控制可能是最常见的家庭自动化用例之一。与运动传感器和计时器集成的智能照明系统允许

  • 自动灯光调整: 当人们在场所内时,例如观看电影时,灯可以打开或关闭。开关分别使用运动探测器在人靠近房间或离开房间时操作灯。
  • 自定义场景: 人们可以为几盏灯设置不同的“场景”,所有涉及的光源将改变到指定的亮度和色温水平。例如,“电影时间”场景将适当设置灯光和适合夜晚电影会话的色温。

2. 供暖、通风和空调

智能照明和通过恒温器以及供暖和制冷系统轻松管理家庭环境

  • 远程温度控制: 智能恒温器也可以通过智能手机应用程序进行控制,因此房主可以在使用房屋之前或房主不在房屋中时进行必要的调整。
  • 智能调度: 为了最大限度地减少不必要的加热,人们可以为一天中的不同时间设置所需的温度,或者指定当所有人都去工作时温度应该升高,反之,当所有人都外出时温度应该降低。

3. 安全和监控

  • 智能摄像头和门铃: 智能摄像头连接到用户的移动设备并实时创建家庭。智能门铃可以提供门前人员的视频流,弥补了安全性的不足。
  • 自动化门锁: 智能门锁使用户可以在家中舒适地物理控制门,允许访客或其他人临时访问,或与其他家庭安全系统协同工作

4. 智能家电

  • 智能插头: 移动应用程序允许设置某些电器,如咖啡机、洗衣机或加热器,打开或关闭的时间。例如,当不需要灯光时,这有助于节约能源。
  • 能源使用监控: 智能电表和插头帮助人们监控能源使用情况以及如何调节某些电器,从而最大限度地降低能源费用。

安全和隐私

  1. 默认本地控制
    HAOS 设备最显著的特点是它能够独立于互联网工作。与许多基于云的系统不同,HAOS 确保了人们的智能设备在本地网络上连接的更多本地控制。因此,除非单独编程,否则不允许数据进入云端。它消除了第三方服务器,并有助于消除信息免受云主机潜在攻击的漏洞。
  2. 安全更新
    Home Assistant 经常更新,有助于增强系统并修复所有现有漏洞。这些更新服务非常安全且灵活。用户可以随时更新操作系统和附加组件,以保护家庭自动化系统免受最新威胁。
  3. SSL/TLS
    HAOS 建议用户使用编码链接;p,最好是 SSL 或 TLS。这使得任何怀有不良意图的人都无法拦截用户设备和 HAOS 服务器之间传输的数据。
  4. 双因素认证,通常称为 2FA。
    Home Assistant 目前提供双因素认证(2FA)和对其用户登录系统的保护。如果密码以某种方式被泄露,个人授权仍然可能被拒绝,因为 2FA 确保存在进一步的机制来验证身份,例如移动应用程序。
  5. 编程和用户权限和角色
    为了增强安全性,HAOS 还允许用户根据其他用户为系统分配不同级别的访问和权限。这种基于角色的访问确保任何特定配置或设备仅对授权用户可用,并减少了无意或故意修改的可能性。
  6. 定期审计和日志
    HAOS 为用户提供完整的系统报告,允许他们跟踪系统对任何人的活动。因此,每次创建访问日志时,都可以对其进行审计,并可以发现和解决任何未经授权的访问尝试。

故障排除和维护

  1. 定期系统更新
    推荐的另一个主要维护实践是更新 HAOS 系统。这意味着更改不仅仅是附加功能,而是关键的安全解决方案和问题解决。为了避免因不同步的软件而可能出现的问题,建议通过 GUI 更新 HAOS 和所有附件。
  2. 监控日志
    HAOS 配备了一些默认的日志记录实用程序,用于监控系统事件和进行故障排除。日志可在 Home Assistant 前端界面的“监管器”选项卡中找到,该选项卡又指向日志。定期查看这些日志可以尽早发现系统错误或性能不佳。这就是为什么,对于特定情况,错误消息可以帮助用户找到解决方案,这有时可以在各种专题或 Home Assistant 官方论坛中找到。
  3. 备份和恢复
    在进行任何重大更改之前,请在 Home Assistant 中执行备份。这就是为什么创建系统配置的副本,并且可以在更新或故障排除过程中出现错误时进行恢复。在 HAOS 中,可以自动执行备份,并将结果存储在本地或外部在线存储系统上。这种做法确保无论何时您想要恢复设置,您都无需重新配置或查找新数据。
  4. 重新启动服务
    就是这么简单:当遇到小问题或无响应的设备时,通常重新启动 Home Assistant 或特定服务就足以解决问题。HAOS 通过系统菜单中的“重新启动”按钮为用户提供了一个选项,用户可以通过该按钮重新启动整个系统或一个或多个订阅者的电路或组件,而无需关闭整个系统。
  5. 网络故障排除
    由于 HAOS 通过网络传输请求以与智能设备交互,因此网络故障可能直接导致设备不可用。如果设备无响应,请考虑网络配置,关闭并打开路由器,或确保设备与 HAOS 位于同一网络中。HAOS 中的连接问题可以使用网络诊断工具进行诊断。

局限性

  1. 陡峭的学习曲线
    HAOS 对于新手来说设置起来不是很容易,维护起来可能很复杂,主要是在使用 YAML 配置时。额外的设置可能会导致源代码级别的更改,使其不适合普通用户。
  2. 硬件要求
    然而,为了高效运行 HAOS,用户需要特定的硬件,例如 Raspberry Pi 和虚拟机。因此,在更可靠的平台上采用 HAOS 的成本更高,因为它通常不需要像云服务那样额外的设备。
  3. 有限的移动应用程序功能
    如前所述,HAOS 有一个移动设备应用程序。然而,这并没有像 Google Home 或 Apple HomeKit 那样彻底地整合功能。几个复杂的设置只能在桌面级别进行配置。
  4. 没有官方支持
    HAOS 基于社区,没有任何官方支持服务。从积极的方面来看,社区高度活跃和响应迅速,如果用户没有通过阅读或在论坛上发帖找到解决方案,可能会遇到麻烦。
  5. 对于大型设置而言,资源密集型
    随着设备和集成数量的增加,HAOS 可能需要更多的系统资源,例如 CPURAM,才能有效运行。密集型护理可能需要更好的硬件来管理设置的大小,这意味着额外的费用。

Home Assistant OS 的未来

  1. 增强与 IoT 设备的集成
    在可预见的未来,由于 物联网生态系统的持续发展,HAOS 只能扩展与众多设备的兼容性。这将使用户能够完美连接他们的智能家居环境,使自动化部分更有效。
  2. 人工智能和机器学习
    未来版本的 HAOS 可能会使用人工智能和机器学习将客户体验提升到新的水平。智能功能可以根据客户需求调整自动化解决方案,并根据他们的使用习惯调整设置。
  3. 改进的用户界面
    专注于实用性几乎肯定会导致改进的设计,使​​用户更容易导航。未来的工作应解决用于加速 HAOS 设置过程的因素,并改进仪表板的外观和感觉,以提高非计算机专业客户的可用性。
  4. 社区驱动的开发
    由于 HAOS 是开源的,社区的贡献可以不断融入。后续版本预计将整合用户的反馈和社区的意见,并包含社区的更好解决方案,有助于实现持续的包罗万象的使用。
  5. 隐私和安全增强
    随着数据保护意识水平的提高,用户安全将是 HAOS 的主要考虑因素。未来的发展可能涉及增加加密保护以及强大的访问措施,让人们在使用智能设备时感到安全。
  6. 扩展的附加组件和集成
    有理由相信,可用叠加层的范围将扩大,为用户提供更多自定义 HAOS 的机会。处理云服务与保持数据控制相结合将是另一个挑战,平衡开放性与漏洞之间的微妙界限。
  7. 支持多个平台
    HAOS 的进一步开发可能涉及在更多类型的硬件上进行集成,例如 Raspberry Pi、Intel NUC 或云端,HAOS 应该在这些硬件上运行。这将确保满足大多数用户的需求,具体取决于他们的偏好以及他们希望如何使用它。
  8. 强调能源管理
    考虑到能源价格上涨和环保意识,HAOS 可以发展成为一个能源测量和控制应用程序。还表明用户可以管理能源消耗并整合绿色能源,迈向更绿色的未来。

结论

Home Assistant 操作系统 (HAOS) 为控制家用智能设备提供了全面的选择,同时专注于数据所有权、离线功能和高度可定制的环境。

这一点是因为我拥有闭源技术,因此促进了社区参与,从而为新的开发和增强创造了空间。尽管 HAOS 存在一些挑战,其中包括可能需要学习如何使用它,以及可能需要专用硬件才能充分利用它,但对于愿意花时间学习的家庭自动化爱好者来说,优点大于缺点。

随着智能家居的使用趋势,HAOS 作为一种创新工具脱颖而出,使人们能够完全控制周围环境和个人数据。