树莓派 篇七:树莓派安装homeassistant全流程(非docker方式)

2021-01-20 18:47:10 14点赞 80收藏 13评论

如何才能快速换一种生活方式?参加#牛年Flag#征稿活动,征集你2021年的购物学习生活计划!>>点击查看活动详情<<本次征稿活动欢迎你的敢出敢买Flag、学习Flag以及各种生活Flag,优秀的投稿文章能获得优厚的大奖,让我们一起努力实现目标吧!

创作立场声明:树莓派自费购入后就在家里落灰,所以不存在利益相关,仅仅为了记录折腾过程,并分享给值友们,希望对大家有所启发。

1、前言

这篇文章也许是这个系列的最后一篇了,但是也不一定。

如你所料,我的树莓派也和你一样,一直在吃灰。

因为树莓派3B的性能有限,之前在树莓派上实现的功能已全部转到 sinoc 主机 黑群晖上了,见:

sinoc 主机 篇一:300元 Sinoc NAS主机整机——2020年第一辆矿车,能不能上?是返乡过年?还是就地过年?最新一届#双面过节指南#开始啦!本次征稿活动分为A面返乡和B面就地,大家可以根据自己的情况,分享自己的春节攻略,优秀的投稿文章还有可能能获得优厚的大奖哦,快点击查看活动详情mwh1987| 397 评论475 收藏1k查看详情


之前在树莓派上所实现的功能:

samba -----------------局域网文件共享

sshfs------------------广域网文件共享

ssh------------ -------远程管理

vnc/xrdp---------------远程桌面

aria2/transmission-----远程下载

nextcloud--------------私有云

syncthing---------------文件同步

nginx-------------------web服务

frp---------------------内网穿透

emby/jellyfin-----------视频管理

calibre-----------------电子书管理

以上功能全部迁移到群晖上,太简单了,基本上都有现成的教程,所以“sinoc 主机 ”系列的文章也不一定会有后续了,也许会有一两篇,记录我怎样在群晖上建立我的私人电子书网站:

https://kandou.cc

https://books.kandou.cc/

很早以前有使用树莓派安装 homeassistant 的经历,因为使用的是 docker 安装方式,可能是因为docker 安装方式比较占用存储空间,homeassistant 的日志文件太大了,于是将日志文件放在移动硬盘上,最后可能因为移动硬盘频繁写入日志,挂掉了,我的结论是 homeassistant 对硬盘是不友好的,于是没有打算使用群晖来安装 homeassistant ,于是又找到了落灰已久的树莓派,这次换了个32G 的 TF卡,写坏了也不心疼。

2、Home Assistan安装

方案选择

首先转载一张图,这张图是在树莓派上安装Home Assistant的不同方式。

树莓派安装homeassistant全流程(非docker方式)

其中Hassbian没有图形界面,详见:https://www.home-assistant.io/blog/2019/10/26/rip-hassbian/

Mossbian是由Hassbian改版的本土版本,详情:https://home-assistant.cc/mossbian/ 目前已停止维护,遂放弃这两种方案。

这里不使用docker ,就直接在树莓派的系统Raspbian上通过手动的方式安装Home Assistant;

开始安装

安装Home Assistant过程

以下内容参考官方指导页面: https://www.home-assistant.io/docs/installation/raspberry-pi/

个人建议在网速良好的环境下安装或者将软件源更换到国内,否则很有可能安装完之后无法打开页面,或者页面返回 404 错误

2.1 使用以下指令修改树莓派 pi 用户的默认密码,注意,一定要修改,否则安装会出错。


passwd

2.2 更新系统


sudo apt-get update
sudo apt-get upgrade -y

2.3 安装依赖

如果你是下载的最新的系统,此步骤应该会很快


$ sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5

pip国内镜像配置

这一步一定不能少

很多安装Home Assistant未成功的,往往都是因为python依赖模块无法成功安装,而其中由于网络不通也占比不少。

这里配置清华的源,可以参照:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

临时使用

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

注意,simple 不能少, 是 https 而不是 http

设为默认

升级 pip 到最新的版本 (>=10.0.0) 后进行配置:

pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U

2.4 添加Home Assistant账号及安装目录

Home Assistant不能使用root运行,可以建个专用用户,然后顺便把GPIO的权限都给它,方便以后连接其它传感器。

sudo useradd -rm homeassistant -G dialout,gpio,i2c

cd /opt && sudo mkdir homeassistant

sudo chown homeassistant:homeassistant homeassistant

但是这里我直接使用系统默认的 pi 用户来运行,只需执行以下命令:

cd /opt && sudo mkdir homeassistant

sudo chown pi:pi homeassistant

2.5 python虚拟容器创建及Home Assistant安装


cd /opt/homeassistant

python3 -m venv .

source bin/activate

python3 -m pip install wheel #这一条可以不执行,实测执行了反而又会变慢,多次重试才安装成功

cd /opt/homeassistant && pip3 install homeassistant

2.6 启动 homeassistant

使用下面的指令启动 Home Assistant ,在此过程中将会创建配置文件(配置文件位置位于/home/pi/.homeassistant/ 如果发生错误,可以将些文件夹下内容删除,再重新启动 homeassistant),并且安装所需要的一些软件。此过程实测在 3B 上大约耗时20-30 分钟。你可以打开浏览器,输入 ipaddress:8123(将 ipaddress 换成树莓派的 IP 地址),直到网页成功加载即可。


source /opt/homeassistant/bin/activate

hass

第一次访问需要创建一个用户。然后输入刚刚创建的用户名和密码登录Home Assistant

树莓派安装homeassistant全流程(非docker方式)

如果你可到网页加载成功加载了 homeassistant 的主页,那么切回命令行,先用 Ctrl + C 退出 homeassistant ,再输入如下指令退出 python 虚拟环境,因为我们还要设置开机启动。

(homeassistant) $ exit

我们使用Jupyter Notebook 来编辑Home Assistant 的配置文件。

2.7 安装jupyter notebook

推荐 python3 环境下安装 jupyter。树莓派3里面内置了 python3,所以直接安装 jupyter,如果系统 python 版本是 python2.7,可以使用 virtualenvwrapper 进行多版本python管理。

下面使用pip来安装 jupyter notebook

sudo apt-get install python3-pip // 安装pip3
sudo pip3 install jupyter // 安装jupyter

注意:jupyter 是单用户服务,如果想使用多用户服务可以使用jupyterhub

2.8 配置 jupyter notebook

生成配置文件

下面命令将在~/.jupyter目录下面生成jupyter notebook配置文件jupyter_notebook_config.py

sudo jupyter notebook --generate-config

修改jupyter_notebook_config.py文件中以下配置:

c.NotebookApp.ip = '*' // jupyter监控地址
c.NotebookApp.port = 8888 // jupyter监听端口
c.NotebookApp.allow_remote_access = True // 运行以非localhost/127.0.0.1访问

2.9 配置登录密码

jupyter启动服务时候,默认是使用一次性token进行登录验证的。我们需要使用以下命令来给jupyter服务配置登录密码:

sudo jupyter notebook password

按照提示输入密码,再次确认密码就可以了。这条命令需要jupyter notebook版本不小于5.0才支持。若不支持可以按照下面方式来配置,详细见官方文档

在python交互模式下,输入以下命令

>>> from notebook.auth import passwd
>>> passwd()
Enter password:
Verify password:
'sha1:5952f1c3c7ec:16852a1f8ee36f7cb716b74d3e0127efee106c1c'

然后复制上面的hash处理之后的字符串到~/jupyter_notebook_config.py

c.NotebookApp.password = u'sha1:5952f1c3c7ec:16852a1f8ee36f7cb716b74d3e0127efee106c1c'

2.10 启动服务并验证

配置完成之后我们可以使用 jupyter notebook来启动服务

cd /home/pi/.homeassistant // 使用homeassistant 的配置目录作为jupyter的工作目录
jupyter notebook

完成上面操作,打开浏览器,地址栏输入 ipaddress:8888(将 ipaddress 换成树莓派的 IP 地址),即可打开jupyter ,这时候 Home Assistant 的目录是隐藏的,这时在新开的终端 输入

ln -s .homeassistant/ homeassistant

然后刷新 jupyter Notebook 就可以看到 Home Assistant 的目录了。

树莓派安装homeassistant全流程(非docker方式)

可直接编辑配置文件 configuration.yaml:

树莓派安装homeassistant全流程(非docker方式)

注意配置缩进,一定要注意。

到此已经介绍完 Home Assistant 在树莓派上的安装。但是关掉终端,就会发现Home Assistant 无法访问了。下面我就介绍一下如何把Home Assistant 安装成服务 进行自启动。

2.11 设置开机启动

sudo nano /etc/systemd/system/homeassistant.service

编辑内容如下:

[Unit]

Description=Home Assistant

After=network-online.target

[Service]

Type=simple

User=pi

ExecStart=/opt/homeassistant/bin/hass -c "/home/pi/.homeassistant"

[Install]

WantedBy=multi-user.target

保存退出。

sudo systemctl daemon-reload

sudo systemctl enable homeassistant

同样也可以用相同的方式把 Jupyter Notebook 也安装成服务 自启动:

sudo nano /etc/systemd/system//jupyter-notebook.service

编辑内容如下:

[Unit]

Description=Jupyter Notebook

[Service]

Type=simple

ExecStart=/usr/local/bin/jupyter-notebook

User=pi

[Install]

WantedBy=multi-user.target

保存退出。

同样输入指令 sudo systemctl enable jupyter-notebook

手动启动 刚刚安装的两个服务:

sudo systemctl start homeassistant

sudo systemctl start jupyter-notebook

这样下次就不用在终端输入命令来启动服务了,直接开启树莓派就可以使用。


2.12 服务相关命令(以homeassistant服务为例)

重载服务配置: sudo systemctl --system daemon-reload

将服务加入自启动: sudo systemctl enable homeassistant

将服务移除自启动: sudo systemctl disable homeassistant

手工启动服务: sudo systemctl start homeassistant

手工停止服务: sudo systemctl stop homeassistant

手工重启服务: sudo systemctl restart homeassistant

查看服务输出: sudo journalctl -f -u homeassistant


后记

树莓派的折腾就到此为止了,“sinoc 主机 ”系列的文章也不一定会有后续了,也许会有一两篇,记录我怎样在群晖上建立我的私人电子书网站:

https://kandou.cc

https://books.kandou.cc/

码字太难了。

展开 收起

ONETHINGCLOUD 玩客云 私人云盘 1GB+8GB 曜石黑

ONETHINGCLOUD 玩客云 私人云盘 1GB+8GB 曜石黑

525.9元起

HONOR 荣耀 存储手机伴侣 手机移动硬盘 1TB

HONOR 荣耀 存储手机伴侣 手机移动硬盘 1TB

459元起

HIKVISION 海康威视 H99 网络硬盘盒

HIKVISION 海康威视 H99 网络硬盘盒

228元起

QNAP 威联通 QNA-UC5G1T NAS配件5G转换器透过USB3.0对5GbE

QNAP 威联通 QNA-UC5G1T NAS配件5G转换器透过USB3.0对5GbE

690元起

联想(Lenovo)DS2200存储 (小盘主机/双控/4*1G iSCSI/12*600GB SAS 10K )改配

联想(Lenovo)DS2200存储 (小盘主机/双控/4*1G iSCSI/12*600GB SAS 10K )改配

暂无报价

Western Digital 西部数据 My Cloud EX2 网络存储

Western Digital 西部数据 My Cloud EX2 网络存储

1299元起

QNAP 威联通 TS-231P2 4G内存 网络存储器

QNAP 威联通 TS-231P2 4G内存 网络存储器

2340元起

WD西部数据个人云存储4t My Cloud Home私有储存云盘4tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi共享

WD西部数据个人云存储4t My Cloud Home私有储存云盘4tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi共享

1299元起

WD/西部数据 My Cloud Home 3T 网络存储个人云存储私有云盘 3tb 家用家庭智能云硬盘系统 WIFI USB3.0高速

WD/西部数据 My Cloud Home 3T 网络存储个人云存储私有云盘 3tb 家用家庭智能云硬盘系统 WIFI USB3.0高速

809元起

NAS型光纤大号弱电箱家用空机箱/兼容群晖2硬盘/多媒体集线信息

NAS型光纤大号弱电箱家用空机箱/兼容群晖2硬盘/多媒体集线信息

298元起

WD西部数据个人云存储6t My Cloud Home Duo私有储存云盘6tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi

WD西部数据个人云存储6t My Cloud Home Duo私有储存云盘6tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi

3499元起

WD西部数据个人云存储8t My Cloud Home私有储存云盘8tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi共享

WD西部数据个人云存储8t My Cloud Home私有储存云盘8tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi共享

2699元起

Synology 群晖 DX513 5盘位NAS网络存储扩充设备

Synology 群晖 DX513 5盘位NAS网络存储扩充设备

3980元起

N2 恩兔 ND-1 双盘位家庭云盘

N2 恩兔 ND-1 双盘位家庭云盘

4299元起

QNAP 威联通 TS-251C 迅雷版 双核2.41GHz CPU 网络存储服务器

QNAP 威联通 TS-251C 迅雷版 双核2.41GHz CPU 网络存储服务器

暂无报价

WD西部数据个人云存储20t My Cloud Home Duo私有储存云盘20tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi

WD西部数据个人云存储20t My Cloud Home Duo私有储存云盘20tb 西数网络家用存储器网盘nas云硬盘 家庭云wifi

6999元起
13评论

发表评论请 登录
  • 最新
  • 最热
评论举报

请选择举报理由

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
80
扫一下,分享更方便,购买更轻松