教你增强小米路由WEB管理(一)——添加CPU温度显示
任务目标:为小米路由WEB管理首页添加CPU温度显示(如下图)支持平台:R1D(初代大路由)、R2D(二代大路由)使用工具:WINSCP所需基础:windows基本操作MP插件群:162049771
前言:小米路由,从出身那天起就没有离开“极客”这两个字。然而尴尬的是,抱怨之声在论坛、Q群等各处此起彼伏,诸如“真垃圾,连个XX功能都没有”、“垃圾!根本不好用”、“早知不买了,几年不出一个新插件”等等。也不知道是小米宣传时定位模糊还是消费者自我定位错误。最终,一款“极客”性质的产品成了普通小白的消费品,那么抱怨之声自然而然的就来了。
然而真正的“极客”们是不该抱怨的,小米路由作为一款基于开源项目openwrt系统的产品,在软件扩展性方面是足够优秀的。不支持usb打印?“极客”可以编译相关模块来添加相关功能;广告过滤插件形同虚设?“极客”可以添加新的模块,甚至修改原有的模块来加强。与其等别人开发出功能,不如自己动手,这才是“极客”。还有,不要让人家用某路由的看不起用小米路由的,他们有“大神”帮忙开发插件?我希望小米路由论坛以后到处都是“大神”。
今天的教程会涉及到一些令人看不懂的代码,不过请放心,就算没有任何编写代码的基础,只要照着做就可以实现,之后好人会给出此功能的独立安装命令。
一、备份原文件(非常重要)1.1 打开winscp,使用控制台逐条运行以下命令并:mkdir -p /etc/backupcp /usr/lib/lua/luci/controller/api/misystem.lua /etc/backup/cp /usr/lib/lua/xiaoqiang/util/XQSysUtil.lua /etc/backup/cp /usr/lib/lua/luci/view/web/*index.htm /etc/backup/至此,原始文件就备份好了。备份的原始文件在/etc/backup/里面。
二、打开系统区域读写2.1 winscp控制台中运行如下命令mount -o remount rw /此条命令作用便是挂载路由根目录为读写。完成操作后,关闭winscp控制台。
三、修改web页面,给“CPU温度显示”做个“地基”3.1 修改index.htm和apidex.htm3.1.1 index.htm和apindex.htm这两个文件位于/usr/lib/lua/luci/view/web使用winscp找到文件,先修改index.htm
3.1.2右键点击index.htm,选择编织>内部编辑器
3.2 修改index.htm3.2.1在文本编辑窗口中使用热键ctrl+f加关键字“id="cpuhz"”找到相关代码段
3.2.2 在其下一行插入如下代码:代码无法在论坛显示,只能用图片代替,大家可以复制文本里上面一段然后修改一下3.2.3 ctrl+f热键搜“#cpuhz”3.2.4 在下一行插入以下代码:$('#cputmp').text( data.tmp );3.2.5 修改完毕。热键ctrl+s保存修改,关闭文本编辑器。
3.3 如法炮制,修改apindex.htm3.3.1 在文本编辑窗口中使用热键ctrl+f加关键字“id="cpuhz"”找到相关代码段3.3.2 在此行最后一个后插入以下代码:以上为图片形式,大家可以复制前面的文本替换几个不同的字符
3.3.3 ctrl+f热键搜“#cpuhz”3.3.4 在此行下面添加代码:$('#cputmp').text( data.tmp );3.3.5 修改完毕。热键ctrl+s保存修改,关闭文本编辑器。
3.4至此我们已经为“CPU温度显示”在web页面做好了“地基”,刷新我们的web管理首页已经能看到了。只是温度这里现在还没有数据显示。因为我们还没有做好“三通一平”啊!。
四、修改小米官方API,为“CPU温度显示”做好“三通一平”4.1 修改misystem.lua文件4.1.1 找到位于/usr/lib/lua/luci/controller/api的misystem.lua文件4.1.2 右键该文件选择内部编辑器打开
4.1.3 热键ctrl+f搜索“["core"]”,找到如下图中的代码段4.1.4 在下面一行插入如下代码:["tmp"] = sys.tmp,4.1.5 修改完毕。热键ctrl+s保存修改,关闭文本编辑器。
4.2 修改XQSysUtil.lua文件4.2.1 找到位于/usr/lib/lua/xiaoqiang/util的XQSysUtil.lua文件4.2.2 右键该文件选择内部编辑器打开4.2.3 热键ctrl+f搜索“sysInfo["system"]”,找到如下图中的代码段4.2.4 在上面一行插入如下代码:sysInfo["tmp"] = LuciUtil.exec([])4.2.5 修改完毕。热键ctrl+s保存修改,关闭文本编辑器。
4.6 至此,此“三通一平”工作已经全部完成。
五、生效及恢复
打开winscp控制台,逐条运行以下命令:rm -rf /tmp/luci-modulecachemount -o remount ro /现在刷新web管理首页已经可以看到cpu核心温度了!其实整个修改过程非常简单,难点在于不要做错任何一步,任何一步出了问题都可能失败,失败有可能会在登录web管理后出现500错误。这时请使用一开始就让大家备份的文件恢复。恢复命令:cp -rf /etc/backup/misystem.lua /usr/lib/lua/luci/controller/api/cp -rf /etc/backup/XQSysUtil.lua /usr/lib/lua/xiaoqiang/util/cp -rf /etc/backup/*index.htm /usr/lib/lua/luci/view/web/推荐大家安装当贝市场,然后从当贝市场里面一键下载软件,方便又省事。当贝市场直接下载地址:https://webapk.dangbei.net/update/dbmarket.apk
注:本帖转自网络,版权归原作者所有! {xiaolu13}{xiaolu13}哎呦,这个不错 感谢楼主的分享!
楼主,我发现一个问题,最新的开发版固件的米system.lua已经是加密的了,没办法修改,找了几个方法都解不开,楼主有办法了嘛? SsSuhb 发表于 2020-1-9 09:49
楼主,我发现一个问题,最新的开发版固件的米system.lua已经是加密的了,没办法修改,找了几个方法都解不开 ...
固件降级,用老的固件,我用的开发版固件是2.19.32,固件下载链接:https://pan.baidu.com/s/1YpeIis3_rzWqDmrr4xcZ_w 提取码:odf5
亲测可行,不过我显示91度,不知道怎么回事? SsSuhb 发表于 2020-1-9 09:49
楼主,我发现一个问题,最新的开发版固件的米system.lua已经是加密的了,没办法修改,找了几个方法都解不开 ...
新版固件中直接用旧版本替换这两个LUA文件也可以使用
页:
[1]