Loading... 转载自:https://www.jianshu.com/p/8f77a3f46f4d 作者:梦沧海 截止到写这篇文章的时候,HomeAssistant 更新的最新版本是 0.65.5 所以这篇文章就基于此版本进行介绍。 **1.树莓派安装系统** ==================== 请参考 https://www.jianshu.com/p/0884f105fd50 **2.安装 HomeAssistant** ======================== 以下内容与官方指导的参考页面完全一致: https://home-assistant.io/docs/installation/raspberry-pi/ 以下内容都是在树莓派终端或者 通过 SSH 远程控制树莓派操作,如果想要直接复制代码到命令行,青葱 $ 符号之后开始复制,不要复制 $ 符号及其之前的任何内容。 个人建议在网速良好的环境下安装或者将软件源更换到国内,否则很有可能安装完之后无法打开页面,或者页面返回 404 错误 **2.1 使用以下指令修改树莓派 pi 用户的默认密码,注意,一定要修改,否则安装会出错。** ------------------------------------------------------------------------------------ ```bash $ passwd ``` **2.2 更新系统** ---------------- ```bash $ sudo apt-get update $ sudo apt-get upgrade -y ``` **2.3 安装依赖** ---------------- 如果你是下载的最新的系统,此步骤应该会很快 ```bash $ sudo apt-get install python3 python3-venv python3-pip ``` **2.4 使用如下指令添加为系统添加一个 名为 homeassistant 的账户** ---------------------------------------------------------------- ```bash $ sudo useradd -rm homeassistant ``` **2.5 创建安装目录,并将此目录的所有者改为 homeassistant** ---------------------------------------------------------- ```bash $ cd /srv $ sudo mkdir homeassistant $ sudo chown homeassistant:homeassistant homeassistant ``` **2.6 创建并进入到 homeassistant 虚拟环境** ------------------------------------------- ```bash $ sudo su -s /bin/bash homeassistant $ cd /srv/homeassistant $ python3 -m venv . $ source bin/activate ``` **2.7 安装依赖的 python 包** ---------------------------- ```bash (homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ python3 -m pip install wheel ``` **2.8 安装 Home Assistant** --------------------------- ```bash (homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ pip3 install homeassistant ``` **2.9 启动 homeassistant** -------------------------- 使用下面一条指令启动 Home Assistant ,在此过程中将会创建配置文件,并且安装所需要的一些软件。此过程实测在 3B 上大约耗时20-30 分钟。你可以打开浏览器,输入 ipaddress:8123(将 ipaddress 换成树莓派的 IP 地址),直到网页成功加载即可。 ```bash (homeassistant) $ hass ``` 如果你可到网页加载成功加载了 homeassistant 的主页,那么切回命令行,先用 Ctrl + C 退出 homeassistant ,再输入如下指令退出 python 虚拟环境,因为我们还要安装其他软件。 ```bash (homeassistant) $ exit ``` **3. 安装 Homebridge 与 Mosquitto** =================================== 此过程也可以参考 https://sspai.com/post/38849 ,在我第二次安装 homeassistant 的过程中,博主的文章给我提供了很多帮助,在此表示感谢。此部分以及下一部分中部分代码部分参考了博主的文章,在此一并声明。 **3.1 安装 Mosquitto** ---------------------- ```bash pi@raspberrypi:~ $ sudo apt-get install mosquitto ``` **3.2 运行 Mosquitto** ---------------------- ```bash pi@raspberrypi:~ $ mosquitto ``` 之后按下 Ctrl + C 退出 Mosquitto 。 **3.3 安装 Homebridge** ----------------------- ```bash pi@raspberrypi:~ $ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - pi@raspberrypi:~ $ sudo apt-get install -y nodejs pi@raspberrypi:~ $ sudo apt-get install libavahi-compat-libdnssd-dev pi@raspberrypi:~ $ sudo apt-get install npm pi@raspberrypi:~ $ sudo npm install -g --unsafe-perm homebridge pi@raspberrypi:~ $ sudo npm install -g homebridge-homeassistant ``` **3.4 运行 Homebridge** ----------------------- ```bash pi@raspberrypi:~ $ homebridge ``` 之后按下 Ctrl + C 退出 homebridge。 **3.5 设置 Homebridge** ----------------------- ```bash pi@raspberrypi:~ $ sudo nano /home/pi/.homebridge/config.json ``` 然后将下列内容粘贴到文件中,Ctrl + O 保存,回车确定,Ctrl + X退出。 ```bash { "bridge": { "name": "Homebridge", "username": "B8:27:EB:DB:D8:84", "port": 51826, "pin": "123-45-678" }, "platforms": [{ "platform": "HomeAssistant", "name": "HomeAssistant", "host": "http://127.0.0.1:8123", "password": "oplm1234", "supported_types": ["automation", "binary_sensor", "climate", "cover", "device_tracker", "fan", "group", "input_boolean", "light", "lock", "media_player", "remote", "scene", "script", "sensor", "switch", "vacuum"], "default_visibility": "hidden", "logging": true, "verify_ssl": true } ] } ``` 记得将 "username": "B8:27:EB:34:D8:84", 这一行的内容指的是树莓派的 MAC 地址,记得改为你自己的树莓派的 MAC 地址。所有字母一律大写,小写无效!!! 之后按下 Ctrl + C 退出 homebridge。 **3.6 设置 mosquitto 用户名与密码** ----------------------------------- ```bash pi@raspberrypi:~ $ mosquitto_passwd -c /etc/mosquitto/passwd pi ``` 这里的 pi 是创建的 mosquitto 的用户名,运行完之后将会提示输入密码,改密码将会密文存储,所以请牢记。你也可以将 pi 换成其他你喜欢的用户名 **4.设置开机自启** ================== **4.1 设置 homeassistant 开机自启** ----------------------------------- 对于 raspbian 来说你可以通过以下方式,其他操作系统请参考官方文档 https://home-assistant.io/docs/autostart/ 。 **4.1.1 创建文件** 执行如下指令创建文件: ```bash pi@raspberrypi:~ $ sudo nano -w /etc/systemd/system/home-assistant@homeassistant.service ``` 然后将如下内容复制到文件中,然后按 Ctrl + O 再按 Enter 保存,再按 Ctrl + X 退出。如果你的安装目录改变了,请将 ExecStart= 之后的 /srv/homeassistant/bin/hass 更改为你的 homeassistant 的安装目录,如果你是按照本教程操作,则无需更改。 ```bash [Unit] Description=Home Assistant After=network-online.target [Service] Type=simple User=%i ExecStart=/srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant" [Install] WantedBy=multi-user.target ``` **4.1.2 配置 systemd** 先执行如下指令重新加载 systemd ```bash pi@raspberrypi:~ $ sudo systemctl --system daemon-reload ``` 再执行如下指令以重新以允许 homeassistant 开机自启。 ```bash pi@raspberrypi:~ $ sudo systemctl enable home-assistant@homeassistant ``` 4.2 设置 homebridge 与 mosquitto 开机自启 ----------------------------------------- 注意:配置 HB 前程序会运行错误,提示缺少配置文件,可先不理会。 ```bash cd /etc/default sudo nano homebridge ``` 粘贴一下内容到文件中 ```bash # Defaults / Configuration options for homebridge # The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others) HOMEBRIDGE_OPTS= /home/pi/.homebridge ``` 所有带有 # 字的行皆为注释,可整行删除不影响。上述指令的作用是指定 Homebridge 的配置文件及缓存所在文件夹。 如果你想要 Homebridge 显示更详细的日志,可以继续添加如下字段: ```bash DEBUG=* ``` 之后 Ctrl+X,Y,回车。继续输入: ```bash cd /etc/systemd/system sudo nano homebridge.service ``` 复制粘贴 ```bash [Unit] Description=Node.js HomeKit Server After=syslog.target network-online.target [Service] Type=simple User=pi EnvironmentFile=/etc/default/homebridge ExecStart=/usr/local/bin/homebridge $HOMEBRIDGE_OPTS Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target ``` Ctrl+X,Y,回车 ```bash cd / sudo systemctl daemon-reload sudo systemctl enable homebridge sudo systemctl start homebridge sudo systemctl status homebridge sudo systemctl enable mosquitto ``` 然后执行`sudo reboot` 重启即可。 作者:梦沧海 链接:https://www.jianshu.com/p/8f77a3f46f4d 最后修改:2023 年 11 月 23 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 1 如果觉得我的文章对你有用,请随意赞赏