飞牛NAS搭建智能家居中枢:Home Assistant
为什么是飞牛NAS + Home Assistant
智能家居的痛点从来不是设备不够多,而是生态割裂。米家、HomeKit、涂鸦、Sonoff……每个App都有自己的逻辑,而Home Assistant(以下简称HA)正是那个把碎片粘合起来的“中枢”。飞牛NAS的Docker支持完善、硬件兼容性好,加上fnOS基于Debian底层,跑HA几乎零门槛。更重要的是,你不需要额外买一台树莓派或老旧笔记本,让NAS一机两用,既存数据又管全屋智能。
第一步:准备飞牛NAS环境
确保你的fnOS版本在0.8.20以上,且Docker已启用。进入「应用中心」→「Docker」,若未安装,直接点击安装。建议给HA分配至少2GB内存和2核CPU,如果你家设备多(超过30个实体),4GB更稳妥。
在Docker设置中,建议把存储路径挂载到机械硬盘(如 /vol1/docker),避免占用SSD缓存空间。同时开启「高级模式」下的“特权模式”,这能让HA直接访问USB设备(比如Zigbee网关或蓝牙适配器)。
第二步:用Docker Compose部署HA
虽然可以直接用Docker图形界面拉镜像,但Compose文件更适合版本管理和后续升级。在飞牛NAS的共享文件夹里新建 ha-config 目录,然后创建 docker-compose.yml:
version: '3.8'
services:
homeassistant:
image: ghcr.io/home-assistant/home-assistant:stable
container_name: hass
restart: unless-stopped
privileged: true
network_mode: host
volumes:
- ./ha-config:/config
environment:
- TZ=Asia/Shanghai
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8123"]
interval: 30s
timeout: 10s
retries: 3
注意 network_mode: host 是关键——HA需要直接访问局域网内的设备(如通过mDNS发现小米设备),桥接模式会屏蔽这些广播包。
在SSH终端(或飞牛自带的终端)里执行:
cd /vol1/docker/ha-config
docker compose up -d
首次拉取镜像约需3-5分钟,取决于网速。启动后,浏览器访问 http://你的NASIP:8123,看到初始化页面即成功。
第三步:初始化与基础配置
创建管理员账号后,HA会让你填写「家庭位置」——务必打开“自动检测”,系统会根据公网IP推断时区。如果检测失败,手动输入经纬度(可以从百度地图坐标拾取器获取)。
进入主界面后,先做三件事:
- 启用高级模式:点击左下角用户名 → 「高级模式」,否则看不到很多调试选项。
- 安装HACS:这是HA的灵魂插件商店。在SSH中执行:
docker exec -it hass bash
wget -O - https://get.hacs.xyz | bash -
exit
然后重启HA容器:docker restart hass。重启后,在「设置」→「设备与服务」→「添加集成」里搜“HACS”,按提示授权GitHub账号即可。
3. 配置备份:在「设置」→「系统」→「备份」里,把备份目标指向飞牛NAS的共享文件夹。建议开启每日自动备份,HA配置改崩了能一键还原。
第四步:接入米家设备(以Xiaomi Miot Auto为例)
这是国内用户最刚需的场景。在HACS里搜索“Xiaomi Miot Auto”,安装后重启HA。然后添加集成:
- 进入「设置」→「设备与服务」→「添加集成」→ 搜索“Xiaomi Miot Auto”。
- 选择“使用账号登录”,输入小米账号密码(建议用“小号”账号,避免影响主账号设备管理)。
- 勾选要接入的设备——支持WiFi、蓝牙Mesh、Zigbee三种协议的设备都能识别。网关设备(如多模网关)也一并接入。
接入后,你会发现设备实体(如灯、插座、传感器)自动出现在「概览」面板。此时你可以用HA的自动化功能,比如“日落时自动开客厅灯”,而无需依赖米家App的云端逻辑——所有自动化都在本地执行,响应更快且断网也能用。
第五步:接入USB Zigbee设备(Sonoff/ZHA)
如果你有第三方Zigbee设备(比如Sonoff BasicZBR3、Aqara传感器),需要USB Zigbee协调器。把协调器(如ConBee II)插入飞牛NAS的USB口,然后在HA中:
- 添加集成“ZHA”,选择“自动检测”USB设备路径(通常为
/dev/ttyUSB0或/dev/ttyACM0)。 - 点击“形成网络”,按下协调器上的配对按钮,再长按设备上的配对键,等待设备自动加入。
这里有个坑:部分飞牛NAS的USB口供电不足,导致协调器掉线。建议用带外部供电的USB Hub,或者在 docker-compose.yml 里加一行 devices: 映射指定USB设备:
devices:
- /dev/ttyUSB0:/dev/ttyUSB0
第六步:外网访问与手机推送
内网能用还不够,出门在外也得控制。推荐两步走:
- 内网穿透:飞牛NAS自带DDNS和反向代理,在「控制面板」→「DDNS」里绑定一个域名,再在「反向代理」里把
你的域名:8123转发到localhost:8123。注意开启HTTPS,用免费证书(Let's Encrypt)避免浏览器警告。 - 手机通知:在HA中安装“Mobile App”集成,手机装HA官方App,扫码登录。之后HA的自动化可以推送通知到手机(比如“门窗传感器报警”)。配合
pushover或telegram集成,还能发到其他IM工具。
第七步:性能调优与维护
飞牛NAS跑HA一般负载不高,但长期运行要注意:
- 日志清理:HA日志默认无限增长,在
configuration.yaml里加:
homeassistant:
customize: !include customize.yaml
logger:
default: warning
logs:
homeassistant.components.xiaomi_miot: warning
- 数据库瘦身:默认SQLite数据库会越滚越大。改用MariaDB(飞牛NAS自带数据库服务),在
configuration.yaml里配置:
recorder:
db_url: mysql://hass:密码@NASIP/homeassistant
- 定期更新:每月在Docker里拉一次
home-assistant:stable镜像并重建容器,保证安全补丁到位。
总结
飞牛NAS + Home Assistant的组合,本质上是把“存储中心”升级为“家庭算力中心”。整个过程无需额外硬件,Docker容器隔离了环境,配置全在YAML文件里,可版本化管理。最核心的收益是:所有自动化逻辑本地化,隐私可控,且能打通米家、HomeKit、Sonoff等互不相认的生态。按照上述步骤,你大约花一下午就能跑通基础环境,后续再逐步接入更多设备。记住,HA玩的是“折腾的乐趣”,别怕改配置——反正飞牛NAS有快照备份,改坏了回滚就是。
暂无评论,来说两句吧