ubuntu19.04+node-red ,samba,jupyter notebook
作者:蓝宏网络,本站已授权转载。
(一)下载UBUNTU1904系统
https://mirrors.aliyun.com/ubuntu-releases/
用rufus-3.3制作UBUNTU安装U盘
按默认选择安装
首先改一下sudoer设置,省得sudo时总要求输密码
sudo nano /etc/sudoers
在最下面(看好,是此文件的最下方,否则会被下面的设置所覆盖而无效!)添加以下内容(pi改为你的用户名):
pi ALL=NOPASSWD: ALL
更改时区
sudo dpkg-reconfigure tzdata
打不开SSH处理(一般不需要)
sudo apt-get install ufw
sudo ufw enable
sudo ufw allow 22
(二)更新源信息,安装更新
sudo apt-get update && sudo apt-get upgrade -y
(三)安装pip3
sudo apt install python3-pip
(三)安装python2.7及 pip(ubuntu19.04自带python3.7,未安装python2.7)
安装python2
sudo apt-get install python
安装PIP
sudo apt install -y python-pip
安装python依赖包
sudo pip3 install request
sudo pip3 install sqlalchemy
sudo pip3 install distro
sudo pip3 install http
sudo pip3 install hass-nabucasa
sudo pip3 install xmltodict
sudo pip3 install mutagen
sudo pip3 install netdisco
sudo pip3 install pynacl
sudo pip3 install pyotp
sudo pip3 install pyqrcode
sudo pip3 install aiohttp_cors
sudo pip3 install cryptography
sudo pip3 install gtts-token
sudo pip3 install pycryptodome
(四)安装HOME-ASSISTANT
sudo pip3 install homeassistant
(六)创建ubuntu上 HA的自启动服务文件
sudo nano -w /etc/systemd/system/home-assistant@pi.service #pi就是用户名
复制内容
[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=%i
ExecStart=/usr/local/bin/hass #不知道目录在哪里,用命令 which hass 查询
[Install]
WantedBy=multi-user.target
保存退出后
更新系统设置
sudo systemctl daemon-reload
设置HomeAssistant开机启动
sudo systemctl enable home-assistant@pi.service
启动HomeAssistant
sudo systemctl start home-assistant@pi.service
重新启动HomeAssistant
sudo systemctl restart home-assistant@pi.service
查看HomeAssistant状态
sudo systemctl status home-assistant@pi.service
(七)安装NODE-RED
1.安装库 sudo apt-get install build-essential
2.使用安装脚本安装NODE-RED 命令:bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
安装完成后
node-red-stop 停止NODE-RED
node-red-start 启动NODE-RED
node-red-log node-red 日志
sudo systemctl enable nodered.service 添加随系统自启动
sudo systemctl disable nodered.service 删除随系统自启动
当前NODE-RED需要安装的节点(当前家庭HA中用到的节点)
1.node-red
2.node-red-contrib-bizwechat
3.node-red-contrib-gps
4.node-red-contrib-home-assistant-websocket
5.node-red-contrib-http-request
6.node-red-contrib-ibm-watson-iot
7.node-red-contrib-modbus
8.node-red-contrib-modbustcp
9.node-red-contrib-play-audio
10.node-red-contrib-sunpos
11.node-red-node-base64
12.node-red-node-email
13.node-red-node-feedparser
14.node-red-node-msgpack
15.node-red-node-ping
16.node-red-node-random
17.node-red-node-rbe
18.node-red-node-sentiment
19.node-red-node-serialport
20.node-red-node-smooth
21.node-red-node-suncalc
22.node-red-node-tail
23.node-red-node-twitter
samba增加Node-Red目录(以后要扩容就不要先搞samba)
sudo nano /etc/samba/smb.conf
在最下面增加:
————————————–
[Node-Red]
comment = Node-Red
browseable = yes
read only = no
path = /home/pi/esphome_config
valid users = pi
writable = yes
guest ok = yes
public = yes
create mask = 0777
directory mask = 0777
force user = root
force create mode = 0777
force directory mode = 0777
hosts allow =
————————————–
保存退出用命令:sudo service smbd restart 重启服务
(八)安装ESPHOME
命令: sudo pip2 install esphome
安装完成后用 命令: sudo esphome esphome_config/ dashboard 打开web配置
如果是版本之间移植,那就把原来目录中的文件拷贝到这个文档中
(九)安装jupyternotebook (以便用浏览器可以直接修改配置文件)
安装jupyternotebook
sudo pip3 install jupyter
生成配置文件
sudo jupyter-notebook –generate-config (如果直接运行不行就进入目录 cd /usr/local/bin 然后运行)
运行后生成 /home/pi/./jupyter/jupyter_notebook_config.py
设置访问密码
sudo jupyter-notebook password
生成的密码存放在 /home/pi/.jupyter/jupyter_notebook_config.json 中
修改配置文件的相关内容
sudo nano /home/pi/.jupyter/jupyter_notebook_config.py
找到下面4项配置项,去出前面的注释符号(#),并修改等号会后的值为下面的值
c.NotebookApp.ip = ‘0.0.0.0’
c.NotebookApp.open_browser = False
c.NotebookApp.port = 8888
c.NotebookApp.notebook_dir = ‘/home/pi/’
为了能在浏览器中修改HA的配置,把HA的配置目录软链接到/home/pi 在
sudo ln -s /home/pi/.homeassistant /home/pi/homeassistant
启动jupyter notebook
jupyter-notebook
编辑jupyter notebook自启动服务
sudo nano /etc/systemd/system/jupyter-notebook@pi.service
添加以下配置
[Unit]
Description=Jupyter Notebook
After=network-online.target
[Service]
Type=simple
User=%i
ExecStart=/usr/local/bin/jupyter-notebook
[Install]
WantedBy=multi-user.target
把自启动加载到系统中
更新系统设置
sudo systemctl daemon-reload
设置jupyter-nodebook开机启动
sudo systemctl enable jupyter-notebook@pi.service
(十)增加中文支持安装语言包
检查本机已有的语言包
locale -a
首先是修改locale.gen文件
sudo nano /etc/locale.gen
将zh_CN.GBK GBK zh_CN.UTF8 UTF8的注释去掉,或者直接添加这两行内容。
然后使用sudo locale-gen下载语言。
修改默认语言编码
sudo dpkg-reconfigure locales
(十一)设置静态IP地址,安装的时候用了静态地址就不用这一步了
按照惯例,先查看本机网卡
ifconfig #确定网卡名称
接下来去设置静态IP
sudo nano /etc/netplan/50-cloud-init.yaml
改成如下格式:
network:
ethernets:
enp0s3:
dhcp4: false
addresses: [192.168.1.181/24]
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1, 202.101.172.35]
version: 2
保存后,执行 sudo netplan –debug apply 应用更新
(十二)常用命令
1、halt 立刻关机
2、poweroff 立刻关机
3、shutdown -h now 立刻关机(root用户使用)
4、shutdown -h 10 10分钟后自动关机
如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启
1、reboot
2、shutdown -r now 立刻重启(root用户使用)
3、shutdown -r 10 过10分钟自动重启(root用户使用)
4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用)
如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启
(十三)MQTT安装
sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
sudo apt-get update
sudo apt-get install mosquitto
sudo mosquitto_passwd -c /etc/mosquitto/passwd pi #(创建密码文件,并创建用户pi)
sudo systemctl restart mosquitto #(重启服务)
(十四)安装samba文件共享及配置方法
sudo apt-get install samba
增加一个samba用户
sudo smbpasswd -a pi #用户名为pi 回车后输入密码
编辑samba配置
sudo nano /etc/samba/smb.conf
添加下面的信息
————————————–
[HomeAssistant]
comment = HomeAssistant
browseable = yes
read only = no
path = /home/pi/.homeassistant #这个就是HA的安装目录
valid users = pi #这个用户名很重要,要跟上面增加的用户名一致
————————————–
重启samba服务
sudo service smbd restart
修改samba用户密码(windows访问)
命令:sudo smbpasswd -x pi 删除这个用户
命令 : sudo smbpasswd -a pi 增加PI用户并设置密码