快捷导航
 
智能家居折腾记 篇二:Homeassistant在小米1手机上的安装过程
VIEW CONTENTS

智能家居折腾记 篇二:Homeassistant在小米1手机上的安装过程

2019-2-23 00:00| 发布者: 智能硬件专家| 查看: 443| 评论: 0|原作者: 智能硬件专家|来自: 网络

智能家居折腾记 篇二:Homeassistant在小米1手机上的安装过程

小编注:此篇文章来自#原创新人#活动,成功参与活动将获得额外100金币奖励。详细活动规则,请猛戳此链接!

追加修改(2018-12-24 12:50:39):
针对第二篇文章《智能家居折腾记 篇二:Homeassistant在小米1手机上的安装过程》中热心朋友的提问,我发现了写作过程中的一个疏漏,其实在我推荐的第一个文章中写到了这个步骤,被我不小心忘记了,造成很多朋友运行过程中遇到的了权限问题。 这个问题我回头仔细看了一下,是建立用户以后忘记把文件夹/srv/homeassistant的管理权限给新建的homeassistant用户了,这里把坑补上,在这里谢谢这位热心朋友。输入代码如下: 安装 HomeAssistant 首先要添加一个用户 sudo useradd -rm homeassistant 在 /srv 目录下面添加 python 运行环境, sudo mkdir /srv/homeassistant sudo chown homeassistant:homeassistant /srv/homeassistant 后续命令按照sudo apt-get install python3-pip python3-dev这样往下弄,创建环境,在环境中运行pip3 install --upgrade homeassistant 就可以了。

前面一篇文章中,我们已经在小米1手机上安装了deploy,并且在deploy中的chroot环境中安装了ubuntu 18.04,这篇文章中将介绍homeassistant系统的安装过程。本文所使用的工具请到这个百度云盘的连接下载

1. homeassistant安装过程

homeassistant是一个基于python3平台的智能家居管理系统,能够介入超过3000多种设备,当然这个数字只是说说,目前我还没找到京东微联sp mini接入的方法,我的建议是遇到问题多到hassbian论坛或者hass.io中文论坛上去看看,随着系统的更新说不定有些设备就支持了。闲言少叙,这里我把homeassistant的安装分为两部,第一步是安装必要的依赖和建立虚拟环境,第二部就是安装homeassistant平台并设置开机启动。

1.1 python安装环境的配置以及homeassistant安装

首先,在deploy最上面有一行ip地址,可以通过ssh客户端访问到这个地址,端口号是22。推荐使用xshell或者putty,以putty为例,

这里ip地址是我手机deploy软件上显示的地址,大家根据自己的情况填写,端口默认22,不需要更改。这里ip地址是我手机deploy软件上显示的地址,大家根据自己的情况填写,端口默认22,不需要更改。

第一次登录会有提示,不用害怕,点“是”就行了。第一次登录会有提示,不用害怕,点“是”就行了。

随后出现登录界面,这里输入我们安装时候设置的用户名,如果记不住回手机安装ubuntu系统的设置界面看一下。随后出现登录界面,这里输入我们安装时候设置的用户名,如果记不住回手机安装ubuntu系统的设置界面看一下。

随后输入密码,我的是1234,这里输入1234,输入的时候不会有任何变化,输入好以后回车,出现欢迎界面。随后输入密码,我的是1234,这里输入1234,输入的时候不会有任何变化,输入好以后回车,出现欢迎界面。

随后按照步骤输入命令,命令输入结束后点回车。

1. 激活系统

sudo apt-get update

Homeassistant在小米1手机上的安装过程

Homeassistant在小米1手机上的安装过程

因为我更新过,所以这里提示很少,正常情况下会更新出很多行,末尾还是会回到命令提示符,这时候我们输入下一条命令。

2.升级系统

sudo apt-get upgrade

Homeassistant在小米1手机上的安装过程

然后我们安装nano,这是一个文本编辑器,和vi比起来对新手更友好一些。

sudo apt-get install nano

我已经安装过,所以这里没有安装提示,当问到y/n的时候输入y确认安装。我已经安装过,所以这里没有安装提示,当问到y/n的时候输入y确认安装。

接下来,安装必要的依赖环境。这些都是homeassistant安装必须的,这里把命令复制下来,通过命令行的地方右键点击就能粘贴上,非常方便。

sudo apt-get install build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libffi-dev -y

依赖安装可能比较慢,等待装好就可以了。

Homeassistant在小米1手机上的安装过程

如果大家用的系统python 3.5.3就需要通过编译安装python或者升级系统到最新版。因为ubuntu 18.04的python版本是3.6.5,,所以安装编译python这步就不用了。

接着要安装python3必要的依赖和pip3

sudo apt-get install python3-pip python3-dev -y

通过pip3安装虚拟环境

sudo pip3 install --upgrade virtualenv

新建用户和组

sudo adduser --system homeassistant

sudo addgroup homeassistant

sudo usermod -G dialout -a homeassistant

这里打开deploy软件查看ubuntu安装设置中是否添加了homeassistant用户,如果没有请添加。

Homeassistant在小米1手机上的安装过程

接着设置用户权限,命令行中输入:

sudo visudo

Homeassistant在小米1手机上的安装过程

大家请按照我图里面黄色线的地方去修改,nano编辑器上下左右选择光标要修改的地方,这里编辑方式和记事本差不多,很容易,修改好以后按住键盘上的ctrl键再按x键,这时会问是否保存,点y,再回车确认文件名称就行了。

下面要设置root和homeassitant的密码,输入:

sudo passwd root

出现Enter new unix password:

这时候设置,后面用winscp的时候需要用root账号登陆。同理,搞定homeassistant

sudo passwd homeassistant

Homeassistant在小米1手机上的安装过程

至此,安装的准备活动就做好了,已经走过了多一半的路,下面我们需要在虚拟环境中安装homeassistant。

1.2 设置虚拟环境,在虚拟环境中安装homeassistant

sudo su -s /bin/bash homeassistant

virtualenv -p python3 /srv/homeassistant

source /srv/homeassistant/bin/activate

如果环境部署好就和图上一样,我设置的用户名是abc。前面有(homeassistant)homeassistant就可以了。

Homeassistant在小米1手机上的安装过程


在环境下安装HA,注意前面是(homeassistant)$ 复制后边的代码,输入代码如下:

pip3 install --upgrade pip

pip3 install --upgrade setuptools

pip3 install netdisco

 pip3 install --upgrade homeassistant

不出意外的话homeassistant就安装好了,在环境中输入hass启动。第一次启动时间很长,需要耐心等待。


Homeassistant在小米1手机上的安装过程


见到路由器出来就差不多了,用浏览器访问你的deploy的ip地址:8123看下页面是不是已经出来了。出来后可以设置下用户名密码,看看主页,如果没问题就在putty上按ctrl+c退出命令行。至此,homeassistant安装完成。朋友们可以退出putty或者输入exit推出homeassitant用户,为后续设置开机启动做准备。

2 设置hass开机启动

因为deploy是一种chroot容器,与真正在计算机不太一样,无法用常规方式做开机启动,这也是我在一开始的设置里就说要勾选INIT enable的原因。

2.1 采用网盘中附件安装方式

从我分享的网盘中找到这个hass-daemon的文件,通过网盘里面的winscp工具把文件拷贝到/etc/init.d目录下。winscp软件登录方式和putty差不多,可以同时登录,输入ip地址和端口号以后,使用root用户名和密码登录。文件类型选择SCP。

Homeassistant在小米1手机上的安装过程

进入winscp以后找到/etc/init.d文件夹,网盘里面的hass-daemon文件拷贝进去。拷贝进去文件上点击右键选择属性,在权限这里输入0755点击确认。

Homeassistant在小米1手机上的安装过程

保存配置文件之后在putty中执行下面的命令

sudo update-rc.d hass-daemon defaults
sudo service hass-daemon install

最后可以手动尝试启动服务

sudo /etc/init.d/hass-daemon start

接着在winscp中进入/etc目录,找到rc.local文件,如果没有这个文件自己创建一个文件命名为rc.local并进入编辑,这里最好在winscp中右键点击选择内部编辑器,如果双击打开需要在编辑器上方的编码中选择utf-8编码。否则正常启动。把下段文字粘贴进去点保存,然后在文件上右键选择属性,权限设置成0755。

#!/bin/sh -e

#

# rc.local

#

# This script is executed at the end of each multiuser runlevel.

# Make sure that the script will "exit 0" on success or any other value on error.

# In order to enable or disable this script just change the execution bits.

#

# By default this script does nothing.


sudo /etc/init.d/hass-daemon start

exit 0

2.2 如果没有从网盘下载附件,linux基础比较好的朋友可以采用putty安装请参考如下代码,这里不需要打开winscp。

先参考项目文档 最下面找到python environment的脚本,把整段代码复制下来,自己创建文件后编辑。

sudo touch /etc/init.d/hass-daemon
sudo nano /etc/init.d/hass-daemon

需要修改 RUN_AS 和 PRE_EXEC 这两个值

RUN_AS="homeassistant"
PRE_EXEC="source /srv/homeassistant/bin/activate;"

保存配置文件之后接着执行下面的命令

sudo chmod +x /etc/init.d/hass-daemon
sudo update-rc.d hass-daemon defaults
sudo service hass-daemon install

最后可以手动尝试启动服务

sudo /etc/init.d/hass-daemon start

启动脚本中定义了日志输出,可以通过下面的命令查看日志

tail /var/opt/homeassistant/home-assistant.log

另外需要注意的是,官方文档中的启动脚本是指定了配置文件的路径的

CONFIG_DIR="/var/opt/homeassistant"

如果需要编辑配置文件需要到该目录下编辑。

当然也可以修改会默认的目录下面

CONFIG_DIR="/home/homeassistant/.homeassistant

如果,到这里hass能正常启动说明服务安装成功了,现在添加到开机启动项。


Homeassistant在小米1手机上的安装过程


首先在设置里面确认INIT的设置是/etc/rc.local目录。

然后继续在putty中输入命令

sudo nano /etc/rc.local

这里字有点多,我把我的代码贴出来分享给大家。

#!/bin/sh -e

#

# rc.local

#

# This script is executed at the end of each multiuser runlevel.

# Make sure that the script will "exit 0" on success or any other value on error.

# In order to enable or disable this script just change the execution bits.

#

# By default this script does nothing.


sudo /etc/init.d/hass-daemon start

exit 0

然后ctrl+x保存退出就可以了。在手机的deploy软件下点停止再启动,看下rc.local是不是正常启动,过一会就能通过浏览器访问到homeassistant了。

一般用户到这里就可以结束了,对于喜欢折腾的朋友可以继续看,我要做微信访问和内网穿透访问以及远控手机。

3. 安装MoloHub通过手机微信访问HA。

MoloHub是一个可以让用户通过微信,google以及github访问到homeassistant的插件,这个插件可以穿透内网,不需要复杂的设置。点击下面的项目地址,找到一键安装,把下面命令复制到命令行,运行。如果提示没有找到curl命令,需要安装curl。

首先,安装curl

sudo apt-get install curl

然后,点击项目地址,进入molohub项目,在一键安装里面将命令行粘贴到命令行。

curl --silent --show-error --retry 5 https://raw.githubusercontent.com/haoctopus/molohub/master/auto_install.py | sudo python

Homeassistant在小米1手机上的安装过程

粘贴后通过homeassistant的网页重启就行了,重启的方法是在网页左侧找到配置-通用-服务管理下面有重启服务,点击,等一会重新进入网页就看到如下页面。molohub安装成功。

Homeassistant在小米1手机上的安装过程

正常情况下进入homeassistant会出现molo,点击之后会让你扫描二维码,用微信扫描关注后就可以访问了,非常简单。




Tab标签:

鲜花

握手

雷人

路过

鸡蛋

最新评论

推荐快讯更多

乐居居-让生活更智能!

  • 反馈建议:153890879@qq.com
  • 客服电话:
  • 工作时间:周一到周五

云服务支持

精彩文章,快速检索

关注我们

Copyright乐居居  Powered by©  备案号:湘ICP备15009499号-1