diff --git a/package.json b/package.json index 2a6643f..18be5d9 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "private": true, "hexo": { - "version": "3.8.0" + "version": "3.9.0" }, "dependencies": { "hexo": "^3.8.0", diff --git a/source/_posts/Add-CPU-info-to-OpenWrt-status-page.md b/source/_posts/Add-CPU-info-to-OpenWrt-status-page.md new file mode 100644 index 0000000..99a1270 --- /dev/null +++ b/source/_posts/Add-CPU-info-to-OpenWrt-status-page.md @@ -0,0 +1,88 @@ +--- +title: OpenWrt 19.07.2 状态页面增加 CPU 信息显示 +date: 2020-08-07 12:29:15 +tags: +--- +{% blockquote 引用文章 https://www.popyone.com/post/30.html OPENWRT_x86(19.07.3)界面添加cpu温度和使用率 %} +{% endblockquote %} +--- +安装软件包:`lm-sensors`、`lm-sensors-detect` + +修改 `/usr/libexec/rpcd/luci` 文件,添加一个 `ubus` 的 `method`: +
+ return { result = args.localtime }
+ end
+ },
+
+ getCPUInfo = {
+ call = function()
+ local sys = require "luci.sys"
+ local rv = {}
+ rv.cpufreq = sys.exec("grep 'MHz' /proc/cpuinfo | cut -c11- | sed -n '1p' | tr -d '\n'")
+ rv.cputemp = sys.exec("sensors | grep Core | awk '{print $1,$2,$3}' | tr '\n' ' '")
+ return rv
+ end
+ },
+
+ getTimezones = {
+
+
+
+
+修改 `/usr/share/rpcd/acl.d/luci-base.json` ,给刚刚添加的 `getCPUInfo` 添加权限:
+
+
+ "ubus": {
+ "file": [ "list", "read", "stat" ],
+ "iwinfo": [ "assoclist", "freqlist", "txpowerlist", "countrylist" ],
+ "luci": [ "getConntrackList", "getInitList", "getLocaltime", "getProcessList", "getRealtimeStats", "getTimezones", "getLEDs", "getUSBDevices", "getSwconfigFeatures", "getSwconfigPortState", "getBlockDevices", "getMountPoints", "getCPUInfo" ],
+ "luci-rpc": [ "getBoardJSON", "getDHCPLeases", "getDSLStatus", "getDUIDHints", "getHostHints", "getNetworkDevices", "getWirelessDevices" ],
+
+
+修改 `/www/luci-static/resources/view/status/include/10_system.js`
+
++ var callSystemInfo = rpc.declare({ + object: 'system', + method: 'info' + }); + var callCPUInfo = rpc.declare({ + object: 'luci', + method: 'getCPUInfo' + }); + return baseclass.extend({ + title: _('System'), + load: function() { + return Promise.all([ + L.resolveDefault(callSystemBoard(), {}), + L.resolveDefault(callSystemInfo(), {}), + L.resolveDefault(callCPUInfo(), {}), + fs.lines('/usr/lib/lua/luci/version.lua') + ]); + }, + render: function(data) { + var boardinfo = data[0], + systeminfo = data[1], + cpuinfo = data[2], + luciversion = data[3]; +... + var fields = [ + _('Hostname'), boardinfo.hostname, + _('Model'), boardinfo.model, + _('Architecture'), boardinfo.system, + _('Firmware Version'), (L.isObject(boardinfo.release) ? boardinfo.release.description + ' / ' : '') + (luciversion || ''), + _('Kernel Version'), boardinfo.kernel, + _('Local Time'), datestr, + _('Uptime'), systeminfo.uptime ? '%t'.format(systeminfo.uptime) : null, + _('CPU Info'), cpuinfo.cpufreq + ' MHz / ' + cpuinfo.cputemp, + _('Load Average'), Array.isArray(systeminfo.load) ? '%.2f, %.2f, %.2f'.format( + systeminfo.load[0] / 65535.0, + systeminfo.load[1] / 65535.0, + systeminfo.load[2] / 65535.0 + ) : null + ]; ++ +使用命令 `/etc/init.d/rpcd restart` 重启 `rpcd` 服务,最后清除浏览器页面缓存。 + +PS:可使用 `ubus call luci getCPUInfo` 检查执行是否有异常。 \ No newline at end of file diff --git a/themes/next/_config.yml b/themes/next/_config.yml index f07f8e9..a3ca480 100644 --- a/themes/next/_config.yml +++ b/themes/next/_config.yml @@ -480,8 +480,8 @@ font: # Font settings for
and code blocks.
codes:
external: true
- family:
- size:
+ family: 'SF Mono'
+ size: 13
# ---------------------------------------------------------------