起因

2018.1.16

混hass群时,看其他人讨论的火热,一时冲动买了个软路由 小马v1

货到后

2018.1.19

本想搞个exsi,发现默认买的版本是2G内存版本,exsi6要求4G起步,GG。转而直接装lede x86,koolshare论坛版,各种装不起来,换了2.6版本的img终于装成功了。不容易啊!分网口为wan,lan后,搞起。感觉还可以,性能杠杠的内存使用了9.34%(200MB差不多),netdata监控如下,内存完全过剩。

RAM

感觉还得设置下qos,不知道管用不,默默感受下

QOS

最后感谢koolshare论坛的大大们,开发了这么好的lede x86

homeassistant

2018年1月21日 15:54:04

对 我就是要把homeassistant直接装到lede x86里。

1. 安装可爱的debian

由于lede默认的仓库里的轮子不足,不足以满足安装homeassistant,所以只能曲线救国了,用debootstrap装debian,如下图,安装软件koolshare仓库里的unifi Controller

安装unifi Controller

选择单独安装debian

2. 安装homeassistant到debian

winscp登陆到路由器,putty登陆到路由器,然后在putty里

切换到debian子系统

chroot /mnt/sda3/debian /bin/bash

#没有返回就成功

#更新下软件

apt update -y && apt upgrade -y

#安装python3 python3-venv python虚拟空间 python3-pip python包管理器

apt install python3 python3-venv python3-pip

#转到/srv目录,建立homeassistant文件夹

cd /srv

mkdir homeassistant

#更改此文件夹的所有者和所属组

sudo chown homeassistant:homeassistant homeassistant

#更换用户

su -s /bin/bash homeassistant

#切换目录,创建并进入虚拟环境

cd /srv/homeassistant

python3 -m venv homeassistant_venv

source /srv/homeassistant/homeassistant_venv/bin/activate

#虚拟环境下安装pip

pip install --upgrade pip

#正式安装HomeAssistant,速度会非常快

pip3 install homeassistant

#先试试,运行下,等好久,看网络,最后提示运行了,不是什么正则安装xxx,就浏览器打开路由器ip:8123

hass

3.开机启动

能用了后,就想开机启动

#切换到debian子系统

chroot /mnt/sda3/debian /bin/bash

#新建启动脚本

cd /etc/init.d/

touch hass-daemon

#!/bin/sh

### BEGIN INIT INFO

# Provides: hass

# Required-Start: $local_fs $network $named $time $syslog

# Required-Stop: $local_fs $network $named $time $syslog

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Description: Home\ Assistant

### END INIT INFO

# /etc/init.d Service Script for Home Assistant

# Created with: https://gist.github.com/naholyr/4275302#file-new-service-sh

PRE_EXEC="cd /srv/homeassistant; source /srv/homeassistant/homeassistant_venv/bin/activate;" #预备运行命令

# Typically /usr/bin/hass

HASS_BIN="hass"

RUN_AS="homeassistant" #用户名

PID_DIR="/var/run/hass"

PID_FILE="$PID_DIR/hass.pid"

CONFIG_DIR="/home/$RUN_AS/.homeassistant" #配置文件路径

LOG_DIR="/var/log/homeassistant"

LOG_FILE="$LOG_DIR/home-assistant.log"

FLAGS="-v --config $CONFIG_DIR --pid-file $PID_FILE --log-file $LOG_FILE --daemon"

start() {

if [ ! -d "$PID_DIR" ]; then

echo "It seems you did not run"

echo -e "\tservice hass-daemon install"

return 1

fi

if [ -f $PID_FILE ] && kill -0 $(cat $PID_FILE) 2> /dev/null; then

echo 'Service already running' >&2

return 1

fi

echo -n 'Starting service… ' >&2

local CMD="$PRE_EXEC $HASS_BIN $FLAGS;"

su -s /bin/bash -c "$CMD" $RUN_AS

if [ $? -ne 0 ]; then

echo "Failed" >&2

else

echo 'Done' >&2

fi

}

stop() {

if [ ! -f "$PID_FILE" ] || ! kill -0 $(cat "$PID_FILE") 2> /dev/null; then

echo 'Service not running' >&2

return 1

fi

echo -n 'Stopping service… ' >&2

kill $(cat "$PID_FILE")

while ps -p $(cat "$PID_FILE") > /dev/null 2>&1; do sleep 1;done;

rm -f $PID_FILE

echo 'Done' >&2

}

install() {

echo "Installing Home Assistant Daemon (hass-daemon)"

update-rc.d hass-daemon defaults

create_piddir

mkdir -p $CONFIG_DIR

chown $RUN_AS $CONFIG_DIR

mkdir -p $LOG_DIR

chown $RUN_AS $LOG_DIR

}

uninstall() {

echo "Are you really sure you want to uninstall this service? The INIT script will"

echo -n "also be deleted! That cannot be undone. [yes|No] "

local SURE

read SURE

if [ "$SURE" = "yes" ]; then

stop

remove_piddir

echo "Notice: The config directory has not been removed"

echo $CONFIG_DIR

echo "Notice: The log directory has not been removed"

echo $LOG_DIR

update-rc.d -f hass-daemon remove

rm -fv "$0"

echo "Home Assistant Daemon has been removed. Home Assistant is still installed."

fi

}

create_piddir() {

if [ ! -d "$PID_DIR" ]; then

mkdir -p $PID_DIR

chown $RUN_AS "$PID_DIR"

fi

}

remove_piddir() {

if [ -d "$PID_DIR" ]; then

if [ -e "$PID_FILE" ]; then

rm -fv "$PID_FILE"

fi

rmdir -fv "$PID_DIR"

fi

}

case "$1" in

start)

start

;;

stop)

stop

;;

install)

install

;;

uninstall)

uninstall

;;

restart)

stop

start

;;

*)

echo "Usage: $0 {start|stop|restart|install|uninstall}"

esac

脚本测试

#离开子系统debian

exit

#脚本安装下,就是更新到rc.xd

chroot /mnt/sda3/debian /bin/bash service hass-daemon install

#返回如下

Installing Home Assistant Daemon (hass-daemon)

#脚本启动

chroot /mnt/sda3/debian /bin/bash service hass-daemon start

网页测试下,路由器ip:8123,ok下一步。

4. 真开机启动

还需要把启动脚本放到我们的lede x86里,

#退出debian,然后

cd /etc

#编辑rc.local文件,可以用vi,也可以用winscp

vi rc.local

在exit 0 前添加一行

chroot /debian/debian service hass-daemon start

rc.local文件如下

# Put your custom commands here that should be executed once

# the system init finished. By default this file does nothing.

chroot /debian/debian service hass-daemon start

exit 0

重启路由器,看看网页是否打得开 路由器ip:8123

可以再安装个mosquitto

opkg update

opkg upgrade

opkg install mosquitto

软路由 文件服务器拒绝,软路由踩坑相关推荐

  1. 微信vue路由跳转兼容_Vue微信公众号开发踩坑记录

    需求 微信授权登录(基于公众号的登录方案) 接入JS-SDK实现图片上传,分享等功能 现状及难点 采用的Vue框架,前后端分离模式(vue工程仅作为客户端),用户通过域名访问的是客户端,但是微信授权中 ...

  2. 踩坑Gateway服务搭建、配置网关路由、路径重写和解决跨域问题(java类实现跨域)

    由于项目需要,需要使用Gateway,话不多说直接干 引入依赖 <dependency><groupId>org.springframework.cloud</group ...

  3. 海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路由 :: 软件路由 :: RouterOs...

    海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路由 :: 软件路由 :: RouterOs 海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路 ...

  4. 踩坑记15 动态路由 router.options.routes未更新 | vue升级 element-plus未适配vue3.2.x | vite glob导入动态加载组件,不能使用别名alias

    2021.8.12 坑50(vue-router4.addRoute().router.options.routes未更新):进行动态权限获取菜单的设置,使用了addRoute()来添加路由,但是ro ...

  5. win10 软路由_为软路由选择系统,从零打造自己的专属软路由系统

    软路由系统 常见软路由系统主要有爱快,openwrt,ros,爱快分流功能强大,适合公司,openwrt 开源,功能插件比较多,适合折腾.ros 据说比较稳定,我没试过,不多评论.这里我们选 open ...

  6. 家庭网络软路由才是主路由 进阶版

    家庭网络软路由才是主路由 进阶版

  7. 用Gitee Pages服务在线预览vue3前端项目:静态网站+多级路由+history模式(踩坑)

    目录 目标与前提 vue打包.预览遇到的坑以及原因 坑①:静态网站打开一片空白 坑②:子路由刷新或直接输入时,网页一片空白或404 坑③:首页加载时间过长 坑④:线上预览地址出错时,不显示404页面 ...

  8. 拒绝软银收购选择IPO 亏损收窄的Wework未来发展会如何?

    作为共办公享巨头的Wework近日发表声明宣称已于去年12月递交了IPO申请,很可能将于今年上市.相关机构给出的估值是470亿美元,在今年上市的众多科技公司中仅次于Uber.但Uber流血上市在前,W ...

  9. 优酷路由宝文件服务器,优酷路由宝到手后的刷新、配置

    以下资料搜集于网络: 路由宝系统用openwrt,sshd或者dropbear已被直接删除,telnet还在.opkg的地址被指向本地IP.系统是openwrt,用的LUCI,那就有机会注入脚本.果然 ...

最新文章

  1. 实践人生 —— 一个普通IT人的十年回顾(下)
  2. eclipse中创建类和包的快捷方式
  3. 高颜值的神经网络可视化工具:3D、彩色、可定制,还能可视化参数重要性 | 开源...
  4. This text field does not specify an inputType or a hint
  5. 再谈 BigInteger - 使用快速傅里叶变换
  6. BZOJ 2959: 长跑 [lct 双连通分量 并查集]
  7. ViewPager实现翻页效果导航点
  8. 2013\Province_Java_C\2.组素数
  9. postgresql参数化查询_一个能融会贯通PostgreSQL监控的人,大概率是高手
  10. java freemarker 分页_10小时入门java开发04 springboot+freemarker+bootstrap快速实现分页功能...
  11. sysadmin默认密码_Sysadmin指南,开源电子邮件客户端,macOS应用程序,SELinux,Firefox扩展等...
  12. linux yum 安装软件
  13. ogre 1.9SDK阅读笔记
  14. ArcSDE:C#创建SDE要素数据集
  15. cad编辑节点快捷键是什么_cad模型库的快捷键(请问CAD里窗口切换的快捷键是什么?)...
  16. 自上而下 or 自下而上?企业部署RPA的2种策略
  17. 云计算开发技术Python自动化运维开发实战二
  18. 对于计算机等级考试的建议
  19. 万历十五年 . 读书笔记
  20. 1、HTML超文本标记语言

热门文章

  1. 云服务商正在杀死开源商业模式
  2. Nacos离GA更进一步:0.9.0发布
  3. 缓存穿透、缓存并发、热点缓存之最佳招式
  4. win10系统由于服务器出错翻译失败,win10系统下谷歌浏览器翻译失败如何解决
  5. 【并发编程】线程中的Sleep、Yield、Join等api方法方法线程状态转换
  6. RemoveError: ‘requests‘ is a dependency of conda and cannot be removed from
  7. VS2019配置opencv环境时找不到Microsoft.Cpp.x64.user.props
  8. pyotrch nn.Conv2d中groups参数的理解
  9. android-apt plugin is incompatible with the Android Gradle plugin. Please use 'annotationProcessor'
  10. 目标检测 最新源码大放送