本帖最后由 27hh 于 2017-9-25 16:30 编辑
2. 部署系统
2.1 连接
点击Linux Deploy下面的启动按钮,启动Linux系统。
当出现“<<<start”时,系统启动完成,我们就可以在电脑上操作手机了。
打开Xshell,通过SSH连接到手机。地址就是Linux Deploy最上面显示的地址,例如我的是192.168.1.15。
用户名和密码是刚刚配置过的。
当出现下图所示的界面时,连接成功。
2.2 执行命令
(这里提供一个我写的脚本,执行此脚本后可以省去一部分复制粘贴的麻烦,可以空降到“创建 Python 虚拟运行环境并切换”步骤继续。)
1.sh.zip
(411 Bytes, 下载次数: 423)
(经测试脚本不能使用,请手动粘帖命令 )
2.2.1 各种小准备
由于发行版默认没有安装 nano(文本编辑器) 所以需要手动安装一下
sudo apt-get install nano
复制代码
nano 的基本操作就是 Ctrl+O 是保存,会提示是否写入,回车确认即可,Ctrl+X 是退出
安装Python 的包管理器
sudo apt-get install -y python3-pip
复制代码
为了解决安装慢的问题,需要修改一下 Python 包管理器(pip)的安装源
sudo mkdir /root/.pip
sudo sh -c "echo '[global]\nindex-url = http://mirrors.ustc.edu.cn/pypi/web/simple/' > /root/.pip/pip.conf"
复制代码
更新pip
sudo pip3 install -U pip
复制代码
安装需要用到的 python 虚拟环境工具
sudo pip3 install virtualenv
复制代码
2.2.2 HomeAssistant
添加一个用户
sudo useradd -rm homeassistant
复制代码
在 /srv 目录下面添加 python 运行环境,
sudo mkdir /srv/homeassistant
sudo chown homeassistant:homeassistant /srv/homeassistant
复制代码
之前修改过的 pip 安装源是针对 root 用户的,由于要使用 homeassistant 这个用户运行,而首次运行过程中又需要安装一些 python 包,所以这里还得来一次。
sudo mkdir /home/homeassistant/.pip
sudo sh -c "echo '[global]\nindex-url = http://mirrors.ustc.edu.cn/pypi/web/simple/' > /home/homeassistant/.pip/pip.conf"
复制代码
需要把新建的文件权限给 homeassistant 用户
sudo chown -R homeassistant:homeassistant /home/homeassistant/.pip
复制代码
然后切换到新建的用户
sudo su -s /bin/bash homeassistant
复制代码
创建 Python 虚拟运行环境并切换
virtualenv -p python3 /srv/homeassistant
source /srv/homeassistant/bin/activate
复制代码
安装 homeassistant
pip3 install -U homeassistant
复制代码
至此,HomeAssistant安装完成。 如果你想马上尝尝鲜,输入hass回车;如果想继续配置,输入exit回车。
2.2.3 HomeBridge
默认是没有安装 curl 的,手动安装一下
sudo apt-get install -y curl
复制代码
使用官方脚本先添加好安装源
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash –
复制代码
修改安装源
sudo nano /etc/apt/sources.list.d/nodesource.list
复制代码
删除文件原有的内容,粘贴以下内容:
deb https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb_7.x xenial main
deb-src https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb_7.x xenial main
复制代码
Ctrl+X,Y,回车。(这就是保存退出的动作)
安装 nodejs
sudo apt-get update
sudo apt-get install -y nodejs
复制代码
然后是几个编译用到的依赖包
sudo apt-get install -y python git libavahi-compat-libdnssd-dev
复制代码
接下来,输入
sudo npm install -g --unsafe-perm homebridge hap-nodejs node-gypcd /usr/lib/node_modules/homebridge/
sudo npm install --unsafe-perm bignum
cd /usr/lib/node_modules/hap-nodejs/node_modules/mdns
sudo node-gyp BUILDTYPE=Release rebuild
复制代码
在安卓上运行需要执行的额外步骤:
sudo nano /etc/avahi/avahi-daemon.conf
复制代码
在[publish]部分,有两行前面没有井号(#),把它们加上,保存退出。
然后需要修改服务的启动参数
sudo nano /etc/init.d/avahi-daemon
复制代码
找到启动服务的地方 d_start() 这一段,在 $DAEMON 后面添加上 --no-drop-root 参数
d_start() {
$DAEMON --no-drop-root -c && return 0
if [ -e $DISABLE_TAG -a "$AVAHI_DAEMON_DETECT_LOCAL" != "0" ]; then
# Disabled because of the existance of an unicast .local domain
log_warning_msg "avahi-daemon disabled because there is a unicast .local domain"
exit 0;
fi;
$DAEMON --no-drop-root -D
}
至此,HomeBridge配置完成。
2.2.4接下来的工作,是要安装一个HomeBridge的插件HomeBridge-HomeAssitant,这个插件很重要,它是一个“桥”,可以将HomeAssitant这个智能家居系统与苹果的HomeKit平台连接。
先输入并回车
然后输入
sudo npm install -g homebridge-homeassistant
复制代码
输入
cd /home/android/.homebridge
复制代码
输入
sudo nano config.json
复制代码
文本编辑,内容如下:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "123-45-678"
},
"platforms": [
{
"platform": "HomeAssistant",
"name": "HomeAssistant",
"host": "http://192.168.1.200:8123",
"password": "yourapipassword",
"supported_types": ["fan", "garage_door", "input_boolean", "light", "lock", "media_player", "rollershutter", "scene", "switch"]
}
]
}
复制代码
补充:如果HomeAssistant和HomeBridge在同一台手机运行,则“手机的IP地址”可以为127.0.0.1,这样写响应应会更快一些。 "host": "http://127.0.0.1:8123",