华硕AX86U路由器梅林固件安装Homeassistant | 您所在的位置:网站首页 › 华硕路由器梅林固件怎么刷新 › 华硕AX86U路由器梅林固件安装Homeassistant |
华硕AX86U路由器梅林固件安装Homeassistant
2024-02-29 00:40:15
9点赞
43收藏
25评论
前言 能够查到的文章都是20年前的,由此可见在路由器上跑通还是有些难度的,之前的文章仅供参考 一、安装KoolCenter梅林系统点击下载 二、软件中心安装 Entware和虚拟内存![]() ![]() 安装Python和依赖 homeassistant 更新很快所以一定要安装最新版本的python3 // 使用shell工具通过ssh进入路由,记得在路由系统设置中开启ssh
ssh [email protected]
// 安装python及依赖
opkg install python3 python3-dev python3-venv python3-pip bluez libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff6 libturbojpeg0-dev tzdata ffmpeg liblapack3 liblapack-dev libatlas-base-dev 这一步很顺利,最好报一些包安装失败,不要紧,有些用不到有些可以后面一个一个安装~~ 安装wheel // 更新pip3
pip3 install--upgrade pip3
python3 -m pip install wheel 这一步也很顺利~~ 安装homeassistant pip3 install homeassistant==2024.2.5 这一步也很顺利,警告可以忽略,因为路由器没有root用户~~ 接下来才是最重要的也是最麻烦的 // 进入u盘 sda1也可能是sda2 根据具体情况 cd /mnt/sda1 mkdir home cd home mkdir root // 设置配置路径,将homeassistant 安装到u盘中,因为一般路由器没那么大存储,所以尽量安装在u盘中 hass -c /mnt/sda1/home/root/.homeassistant 在安装过程中报很多错误,但是很容易解决,主要是个体力活儿,这里不一一列举,只举几个例子 首先是第一个错误,注意圈出来的路径,以后出现类似问题同样的方式处理 ![]() 上面的错误是最后一行 ModuleNotFoundError: No module named 'orjson.orjson' 这个应该是python环境原因导致的,修改也很容易 // 进入site-package目录
cd /opt/lib/python3.11/site-packages/
// 进入orjson
cd orjson
// 查看文件
ls 注意这个文件:“orjson.cpython-311-aarch64-linux-gnu.so ”上面的错误就是因为这个文件名问题,修改一下,用mv命令把第一个"."后的名称都去掉文件类型后缀保存,即“orjson.so ” 这样就可以了 // 修改文件名 mv orjson.cpython-311-aarch64-linux-gnu.so orjson.so 后面都是这种错误 主要有两个目录: /opt/lib/python3.11/site-packages/ /mnt/sda1/home/root/.homeassistant/deps/lib/python3.11/site-packages/ 只要把这种错误解决完homeassistant就能运行起来了 四、配置启动脚本,设置开机启动vi /mnt/sda1/home/root/hass-daemon 复制以下内容 #!/bin/sh PRE_EXEC="" HASS_BIN="hass" RUN_AS="admin" CONFIG_DIR="/mnt/sda1/home/root/.homeassistant" LOG_DIR="/opt/var/log/homeassistant" LOG_FILE="$LOG_DIR/home-assistant.log" FLAGS="-c $CONFIG_DIR --log-file $LOG_FILE" start() { create_piddir 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" $CMD 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 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 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 } case "$1" in start) start ;; stop) stop ;; install) install ;; uninstall) uninstall ;; restart) stop start ;; *) echo "Usage: $0 {start|stop|restart|install|uninstall}" esac 设置权限 chmod 777 hass-daemon 添加开机启动 cd /jffs/scripts/ vi nat-start 将以下命令追加到末尾行 /mnt/sda1/home/root/hass-daemon start 重启ok ![]() 作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~ ![]() |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |