华硕路由器梅林固件+alist 简明小教程

2023-02-10 12:25:59 +08:00
 gleArk
最近在折腾 alist ,碰到了不少坑点,记录一下,同时也是备忘。过程中有些不明白的地方,如果谁之前碰到过、解决了,也请指教下。

(我知道某软件中心有,但我没装某软件中心,我喜欢自己动手。)

一、背景:

路由器为华硕 AX86U/梅林固件,有台 win 家庭服务器通过有线连接路由器。

准备通过 alist 连接某数字网盘,最终通过 iPhone/iPad/MacbookPro/Apple TV (以下简称 infuse 终端)的 infuse 读取和播放 4k remux mkv 资源。

家中宽带 200M ,某三位数网盘直接下载或播放基本能跑到满速。

二、win 家庭服务器篇:

一开始把 alist 放在了 win 家庭服务器上,发现播放 4k remux mkv 资源 20-30 分钟会发生断流,症状为家庭服务器和路由器之间掉线、ping 不通,重新拔插网线可以恢复。

另外,之前 iPhone 手机通过 wifi 直接下载某数字网盘的资源,也会出现类似的断流,通过关闭 /开启 wifi 可以恢复。

因此,怀疑是 AX86U 路由器在高流量负载下会断流,网上有人说是因为 AX86U 的芯片发热造成的(看了下,此时 CPU 温度大概 70 多度)。同时,感觉大流量在路由器-win 家庭服务器-路由器-infuse 终端之间跑也是浪费资源,所以考虑把 alist 挂在路由器上。

同时,去某宝买了个散热风扇,在 PWM40%(基本没声音)的前提下,能把 AX86U 的 CPU 温度降低 20 度左右。
具体断流是 PC 侧还是路由器侧造成的,懒得去研究了。


三、华硕 AX86U 路由器-jffs 篇:

接下来是 AX86U 路由器上安装 alist 。
华硕路由器刷梅林固件、打开 jffs 、ssh 等等不说了,网上都能找到。win 侧我一般只用 powershell 里的 ssh 操作,不用第三方软件。

一开始我选择把 alist 装到了路由器的 jffs 上。**注意,装在 jffs 上存在很大的风险!**我会在本篇的最后面做解释。建议按照第四篇装在路由器挂载的 U 盘上。

首先,打开 powershell ,连接路由器:
ssh admin@192.168.XX.XX (此处填入你自己的路由器地址)
接下来填入密码,登录成功后会显示 /tmp/home/root#

接下来去 jffs 文件夹并创建 alist 目录
cd /jffs

mkdir alist

cd alist

接下来是下载 alist ,我试过了最新的 3.10.1 和上一个版本的 3.9.2 ,都会报错,如果是 AX86U 的,不用去下这两个版本了,最后试了个 3.6.0 版本,可以正常运行,就这个版本了。

在命令行执行
curl -L https://ghproxy.com/https://github.com/alist-org/alist/releases/download/v3.6.0/alist-linux-musl-arm64.tar.gz -o /tmp/alist.tar.gz

接下来解压缩
tar zxf /tmp/alist.tar.gz -C /jffs/alist
这个解压的过程有点慢,耐心等一下

解压完成后,运行测试( alist 官方的安装说明里还要授予程序执行权限:chmod +x alist ,我自己是发现解压完就是可执行文件了)
./alist
如果操作说明正常弹出,再跑下服务器
./alist server
如果服务器正常开启,就没问题了,后面的流程和其他设备上装 alist 的设置是一样的,不再赘述。

需要开机启动的,看第五篇的脚本。

最后说下我为什么不推荐把 alist 装在 jffs 上。
snbforum 上反馈这几年的华硕路由器 jffs 寿命很长,可擦写 10 万次,华硕自己的 syslog 文件也往 jffs 上写(在 jffs 文件夹下 ls 能看到)。
但是,我在 infuse 终端操作、播放测试了大约 1 小时后,根据我对 alist 文件夹的观察,daemon 文件夹下的 start.log 和 data/log 文件夹下 log.log 已经各有近 4MB 文件,而且更新是比较频繁的。本身 jffs 也就几十兆的可用容量,就算可擦写 10 万次,我觉得也坚持不了太久的。
**总之,我非常非常不建议装在 jffs 上,毕竟换 U 盘比换路由器便宜多了,不是吗?**

四、华硕 AX86U 路由器-U 盘篇:
因为前述的原因,改为安装在 U 盘上。

准备一个不用的 U 盘,如果之前有 GPT 分区的,先清一下 GPT 分区并改为 MBR (比如使用 win 的 diskpart )。
插入路由器的 U 盘口,用 fdisk 建立分区。
以上两个网上都有很多教程,不再赘述。

我碰到的坑是 ext4 格式的 u 盘有时路由器不会自动挂载,格式化成 ext2 格式后就行了,本着能用就行的原则,没有深究。
mkfs.ext2 /dev/sda1

接下来是去 U 盘文件夹并创建 alist 目录
cd /tmp/mnt/sda1
mkdir alist
cd alist

在命令行执行
curl -L https://ghproxy.com/https://github.com/alist-org/alist/releases/download/v3.6.0/alist-linux-musl-arm64.tar.gz -o /tmp/alist.tar.gz

接下来解压缩
tar zxf /tmp/alist.tar.gz -C /tmp/mnt/sda1/alist
这个解压的过程有点慢,耐心等一下

解压完成后,运行测试( alist 官方的安装说明里还要授予程序执行权限:chmod +x alist ,我自己是发现解压完就是可执行文件了)
./alist
如果操作说明正常弹出,再跑下服务器
./alist server
如果服务器正常开启,就没问题了,后面的流程和其他设备上装 alist 的设置是一样的,不再赘述。

目前用 U 盘跑有没有坑我还在测试

五、华硕 AX86U 路由器-开机启动篇:

华硕路由器 /梅林固件的启动是通过脚本实现的
进入脚本文件夹(如果你还在 alist 的 server 进程里,可以直接按 CRTL+C 先退出)
cd /jffs/scripts

新建 post-mount 文件并编辑(注意,此处 post-mount 名字不能改,具体见 https://github.com/RMerl/asuswrt-merlin.ng/wiki/User-scripts
touch post-mount
nano post-mount

写入如下脚本代码

alist 文件在 U 盘的:
#!/bin/sh
sleep 60
/tmp/mnt/sda1/alist/alist start

alist 文件在 jffs 的:
#!/bin/sh
sleep 60
/jffs/alist/alist start

按 CTRL+O 写入,按回车确定,按 CTRL-X 退出

如果要测试开机启动是否成功的话,reboot 重启即可

六、其他篇:
1 、某三位数网盘的用户,建议 cookies 用 iPhone 客户端的(抓包可用 stream )。年初没有买终身我后悔了。
2 、建议别玩脱了。
4071 次点击
所在节点    路由器
12 条回复
oneisall8955
2023-02-10 15:24:03 +08:00
值得尊敬,太折腾了吧😂

infuse 不用直链播放的吗?应该不会过 win 家庭服务器才对吧?

网盘资源多大,有没有分享?我也想试试
gleArk
2023-02-10 15:34:39 +08:00
@oneisall8955

三位数字网盘的 webdav 策略必须本地代理,会经过服务器中转的。

另外其他网盘比如阿里云,本地代理的兼容性也是最好的,采用重定向的策略有时会播不出来,这个我在 issues 看到有人反馈过。

我自己只用三位数字网盘,分享只能通过 cookies ,所以抱歉不能分享哈。
gleArk
2023-02-10 15:40:09 +08:00
对了,我家还有台 AC66U B1 ,我试了好几个版本的 Arm V7 版和 musl-arm 版,都不行。
估计只能考虑本地编译了。
而且,我通过 PC 中转的方式做了测试,AC66U B1 的 CPU 负载已经上 80%-90%了,感觉有点撑不住的样子。

不过,一直跑倒是没有出现断线,这点比 AX86U 强多了。
billytom
2023-02-10 16:06:48 +08:00
楼主自己试了哪么多,又打了那么多字,赞一个。。。

如有时间,老哥能否帮忙试试,新版 AX86U 梅林固件 388.1 以客户端方式连接 Wireguard (不是 Wireguard )怎么才能正常使用?我参数都对了(同样参数电脑端 WG 应用瞬间连接能通)连接也建立了,但双方都无法 ping 通。不知道是固件没做好还是我那里没设对

谢谢

@gleArk
billytom
2023-02-10 16:07:54 +08:00
补充一下上文,不是用的路由器上的 Wireguard Server 模式,是 Client 模式连接另一台 WG Server
gleArk
2023-02-10 16:10:16 +08:00
@billytom 我现在还是 386 版的,以后上 388 了再试下吧
mmdsun
2023-02-10 16:43:05 +08:00
感谢分享,我是 AX86U pro ,改天试试看。
billytom
2023-02-10 16:45:32 +08:00
@gleArk 好的,谢谢老哥,不过你咋不升级最新 388 版固件呢,这批华硕新机一下增加了好多新功能
opengg
2023-02-13 11:22:28 +08:00
alist 阿里云一般是 302 模式吧,服务运行在哪都是一样的。
我怀疑你没找对问题原因。
sleepsky520
2023-02-20 10:42:29 +08:00
@gleArk #2 老哥,你的 AX86 散热器风扇有链接吗?
gleArk
2023-03-03 08:54:11 +08:00
@sleepsky520 你去某宝找找,好多家
cencoroll
327 天前
大佬想问问你 u 盘用的读写速度多少的?速度有影响使用吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/914857

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX