|
|
uu官方提供的openwrt版本,“由于性能原因暂不支持openwrt系统加速pc等设备”而只能加速主机,NX30 PRO的官方固件又是openwrt的改版(从telnet后台可以看出)。因此,如果提取出这个版本安装到openwrt上,就可以既享受到openwrt的便利,又能使用uu加速器加速pc等设备了。本文通过nx30pro的例子,告诉您怎么做到这一点。小米AX3000T,WR30U可直接复刻(因配置完全相同),其他路由器若官方原版固件是类openwrt系统,并且支持uu加速器,则思路通用。
前置条件:
1. 使用19.xx或21.xx版本的openwrt。因uu加速器需要调用iptables,而23.xx版本开始使用nftables。
2. 安装2个包:curl, libstdcpp6。这2个包在nx30pro的官方固件里是自带的,uu官方的脚本依赖这两个,所以您也需要在openwrt里安装。
关键文件2个:
1. /etc/init.d/uu,该文件控制uu的启动。
2. /usr/bin/h3c_uuplugin_monitor.sh,这个脚本由init.d/uu调用,里面包含了下载uu、更新uu等代码。
这两个文件在移植到openwrt系统之后,需要做10行以内的非常简单的修改(因系统不同,路径不匹配了)。您可以自行从官方固件的上述位置中提取后修改(怎么修改文末会提到),也可以直接下载我的。
开始移植:
1. 进行任何修改前,总是先备份您现有的系统。
2. 将文件【1】【2】进行少量修改。若您下载我修改好的版本,跳过这一步。
3. 把文件放到openwrt系统的相应位置(/etc/init.d/uu, /usr/bin/h3c_uuplugin_monitor.sh)
4. 在/usr目录下,新建一个目录,名叫uufactory。将文件【3】放在这个目录下。说明:文件【3】的内容本来是官方固件从一个proc目录中读的,而这个目录在openwrt中是不存在,proc目录是特殊的不能更改,因此必须在这里。脚本中也进行了相应修改把路径放在了这里。
5. 完成。您可以使用/etc/init.d/uu start来启动服务。现在打开您的手机,看看是不是能够配对了。
附录:做了哪些修改
尽量自行构造文件总是安全的,您并不能放心地认为提供者(包括我)不会在脚本文件里加料。
1. 【h3c_uuplugin_monitor.sh】 原版文件的20行左右,
local proc_factoryinfo="/proc/manufactory/factoryinfo"
替换成
local proc_factoryinfo="/usr/uufactory/factoryinfo"
理由如前所述。
2. 【/etc/init.d/uu】 原版文件的10行,
manufactoryDataFile="/proc/manufactory/factoryinfo"
替换成
manufactoryDataFile="/usr/uufactory/factoryinfo"
理由同1。
3. 【/etc/init.d/uu】 原版文件的37行,
eval $(swinterface IF_GetBridgeIfName 0)
替换成
if_acBridgeIfName = "br-lan"
理由:swinterface是h3c私有的函数,运行结果是br-lan。因此直接写br-lan即可。
4. 其他位置,比如在/var/tmp/uu,您会发现一些重复文件。这些文件都是上面的脚本派生的。uu官方脚本会自行下载他需要的东西、把他想要的东西比如manufactoryinfo拷贝到他想要的位置,因此您可能会在不同目录下看到多个拷贝。但经过研究,我认为本帖提到的所有修改是源头,只要这些位置文件正确即可。
|
评分
-
查看全部评分
|