OpenWrt首页改造

优化样式:新增CPU温度、磁盘健康状态、磁盘温度、磁盘通电时长

1639409104091.png

安装相关软件包

需要安装 lm-sensors、lm-sensors-detect、sed 三个程序

opkg update
opkg install lm-sensors lm-sensors-detect sed

如果正确安装,在 terminal 中执行 sensors能得到相关信息

1639409138691.png

修改首页文件

首页的 index.htm 文件位于 /usr/lib/lua/luci/view/admin_status/index.htm
通过观察这个文件的规律可以修改这个文件以实现我们的目标

友情提醒: 备份 index.htm 文件

cp /usr/lib/lua/luci/view/admin_status/index.htm /usr/lib/lua/luci/view/admin_status/index-original.htm

(1)新增函数收集信息

local cpu_temperature = luci.sys.exec("sensors | grep high| awk -F ':' '{print $2}'")
local disk_health = luci.sys.exec("smartctl -H /dev/sda | grep assessment | awk -F ':' '{print $2}'")
local disk_temperature = luci.sys.exec("smartctl -A /dev/sda | grep 194 | awk -F  '-' '{print $2}'")
local disk_hours = luci.sys.exec("smartctl -A /dev/sda | grep Hours | awk -F  '-' '{print $2}'")

(2)将收集到的信息赋予变量并赋给 rv

cputemp    = cpu_temperature,
diskhe    = disk_health,
disktemp   = disk_temperature,
diskhours  = disk_hours,

1639409176267.png

(3)在DOM层操作将元素值赋给innerHTML

if (e = document.getElementById('cputemp'))
    e.innerHTML = info.cputemp;

if (e = document.getElementById('diskhe'))
    e.innerHTML = info.diskhe;

if (e = document.getElementById('disktemp'))
    e.innerHTML = info.disktemp;

if (e = document.getElementById('diskhours'))

e.innerHTML = info.diskhours;

1639409196763.png

(4)在 html 表格里添加渲染条目

<tr><td width="33%"><%:CPU Temperature%></td><td id="cputemp">-</td></tr>
<tr><td width="33%"><%:磁盘健康检测%></td><td id="diskhe">-</td></tr>                
<tr><td width="33%"><%:磁盘温度%></td><td id="disktemp">-</td></tr>
<tr><td width="33%"><%:磁盘通电时长 (h)%></td><td id="diskhours">-</td></tr>

1639409246243.png

|| 版权声明
作者:废权
链接:https://blog.yjscloud.com/archives/129
声明:如无特别声明本文即为原创文章仅代表个人观点,版权归《废权的博客》所有,欢迎转载,转载请保留原文链接。
THE END
分享
二维码
OpenWrt首页改造
优化样式:新增CPU温度、磁盘健康状态、磁盘温度、磁盘通电时长 安装相关软件包 需要安装 lm-sensors、lm-sensors-detect、sed 三个程序 opkg update opkg in……
<<上一篇
下一篇>>
文章目录
关闭
目 录