From e6d6c2058bbf01e19fb7c7ec0f1530ae096adaf4 Mon Sep 17 00:00:00 2001 From: Beginner <70857188+Beginner-Go@users.noreply.github.com> Date: Sat, 18 Sep 2021 00:45:33 +0800 Subject: [PATCH] luci-app-serverchan: update to 2.01.4 (#7870) Signed-off-by: Beginner-Go <70857188+Beginner-Go@users.noreply.github.com> --- package/lean/luci-app-serverchan/Makefile | 4 ++-- .../luasrc/model/cbi/serverchan/advanced.lua | 7 +++++++ .../luasrc/model/cbi/serverchan/client.lua | 2 +- .../luasrc/model/cbi/serverchan/log.lua | 2 +- .../view/serverchan/{log.htm => serverchan_log.htm} | 0 .../root/usr/bin/serverchan/serverchan | 13 +++++++------ 6 files changed, 18 insertions(+), 10 deletions(-) rename package/lean/luci-app-serverchan/luasrc/view/serverchan/{log.htm => serverchan_log.htm} (100%) diff --git a/package/lean/luci-app-serverchan/Makefile b/package/lean/luci-app-serverchan/Makefile index 861d55413..73abeee66 100644 --- a/package/lean/luci-app-serverchan/Makefile +++ b/package/lean/luci-app-serverchan/Makefile @@ -1,10 +1,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-serverchan -PKG_VERSION:=2.01.3 +PKG_VERSION:=2.01.4 PKG_RELEASE:=9 -PKG_MAINTAINER:=tty228 +PKG_MAINTAINER:=tty228 LUCI_TITLE:=LuCI support for serverchan LUCI_PKGARCH:=all diff --git a/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/advanced.lua b/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/advanced.lua index c593739de..4858600bd 100644 --- a/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/advanced.lua +++ b/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/advanced.lua @@ -31,8 +31,15 @@ a.datatype="uinteger" a=s:option(Value, "soc_code", "自定义温度读取命令") a.rmempty = true a:value("",translate("默认")) +a:value("pve",translate("PVE 虚拟机")) a.description = translate("请尽量避免使用特殊符号,如双引号、$、!等,执行结果需为数字,用于温度对比") +a=s:option(Value,"server_host",translate("宿主机地址")) +a.rmempty=true +a.default="10.0.0.2" +a.description = translate("请确认已经设置好密钥登陆,否则会引起脚本无法运行等错误!
PVE 安装 sensors 命令自行百度
密钥登陆例:
opkg update #更新列表
opkg install openssh-client openssh-keygen #安装openssh客户端
ssh-keygen -t rsa # 生成密钥文件(自行设定密码等信息)
ssh root@10.0.0.2 \"tee -a ~/.ssh/id_rsa.pub\" < ~/.ssh/id_rsa.pub # 传送公钥到 PVE
ssh root@10.0.0.2 \"cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys\" # 写入公钥到 PVE
ssh -i ~/.ssh/id_rsa root@10.0.0.2 sensors # 测试温度命令") +a:depends({soc_code="pve"}) + a=s:option(Button,"soc",translate("测试温度命令")) a.inputtitle = translate("输出信息") a.write = function() diff --git a/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/client.lua b/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/client.lua index 9c2dafd4f..b488c00c8 100644 --- a/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/client.lua +++ b/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/client.lua @@ -2,5 +2,5 @@ f = SimpleForm("serverchan") luci.sys.call("/usr/bin/serverchan/serverchan client") f.reset = false f.submit = false -f:append(Template("serverchan/client")) +f:append(Template("serverchan/serverchan_client")) return f diff --git a/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/log.lua b/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/log.lua index 9063c55c2..8360b8e04 100644 --- a/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/log.lua +++ b/package/lean/luci-app-serverchan/luasrc/model/cbi/serverchan/log.lua @@ -1,5 +1,5 @@ f = SimpleForm("serverchan") f.reset = false f.submit = false -f:append(Template("serverchan/log")) +f:append(Template("serverchan/serverchan_log")) return f diff --git a/package/lean/luci-app-serverchan/luasrc/view/serverchan/log.htm b/package/lean/luci-app-serverchan/luasrc/view/serverchan/serverchan_log.htm similarity index 100% rename from package/lean/luci-app-serverchan/luasrc/view/serverchan/log.htm rename to package/lean/luci-app-serverchan/luasrc/view/serverchan/serverchan_log.htm diff --git a/package/lean/luci-app-serverchan/root/usr/bin/serverchan/serverchan b/package/lean/luci-app-serverchan/root/usr/bin/serverchan/serverchan index f0e9a60a4..48e430131 100755 --- a/package/lean/luci-app-serverchan/root/usr/bin/serverchan/serverchan +++ b/package/lean/luci-app-serverchan/root/usr/bin/serverchan/serverchan @@ -14,7 +14,7 @@ function read_config(){ "serverchan_ipv4" "ipv4_interface" "serverchan_ipv6" "ipv6_interface" "serverchan_up" "serverchan_down" "cpuload_enable" "cpuload" "temperature_enable" "temperature" "client_usage" "client_usage_max" "client_usage_disturb" "client_usage_whitelist" "web_logged" "ssh_logged" "web_login_failed" "ssh_login_failed" "login_max_num" "web_login_black" "ip_white_list" "ip_black_timeout"\ "regular_time" "regular_time_2" "regular_time_3" "interval_time" \ "serverchan_sheep" "starttime" "endtime" "serverchan_whitelist" "serverchan_blacklist" "serverchan_interface" "MAC_online_list" "MAC_offline_list" \ - "up_timeout" "down_timeout" "timeout_retry_count" "thread_num" "soc_code" "err_enable" "err_sheep_enable" "err_device_aliases" "network_err_event" "system_time_event" "autoreboot_time" "network_restart_time" "public_ip_event" "public_ip_retry_count" \ + "up_timeout" "down_timeout" "timeout_retry_count" "thread_num" "soc_code" "server_host" "err_enable" "err_sheep_enable" "err_device_aliases" "network_err_event" "system_time_event" "autoreboot_time" "network_restart_time" "public_ip_event" "public_ip_retry_count" \ "jsonpath" "sckey" "corpid" "userid" "agentid" "corpsecret" "mediapath" "wxpusher_apptoken" "wxpusher_uids" "wxpusher_topicIds" "pushplus_token" "tg_token" "chat_id" for str_version in "wrtbwmon" "iputils-arping" "curl" "iw"; do @@ -247,8 +247,9 @@ function getcpu(){ function soc_temp(){ [ -z "$soc_code" ] && local soctemp=`sensors 2>/dev/null|grep °C|sed -nr 's#^.*:.*\+(.*)°C .*#\1#gp'|sort -nr|head -n1` [ -z "$soc_code" ] && [ -z "$soctemp" ] && local soctemp=`cat /sys/class/thermal/thermal_zone*/temp 2>/dev/null|sort -nr|head -n1|cut -c-2` + [ "$soc_code" == "pve" ] && [ ! -z "$server_host" ] && local soctemp=`ssh -i ~/.ssh/id_rsa root@${server_host} sensors 2>/dev/null|grep °C|sed -nr 's#^.*:.*\+(.*)°C .*#\1#gp'|sort -nr|head -n1` [ ! -z "$soctemp" ] && echo "$soctemp" && return - [ ! -z "$soc_code" ] && echo "$soc_code"|awk '{run=$0;system(run)}' 2>/dev/null + [ ! -z "$soc_code" ] && eval `echo "$soc_code"` 2>/dev/null } # 流量数据 @@ -503,7 +504,7 @@ function get_client(){ local js_str="${js_str}
<%:${tmp_uptime}%>
" done < ${dir}ipAddress fi -cat>/usr/lib/lua/luci/view/serverchan/client.htm</usr/lib/lua/luci/view/serverchan/serverchan_client.htm<<%:在线设备列表%>
<%:客户端名%>
<%:MAC%>
<%:IP%>
<%:总计流量%>
<%: 在线时间%>
$js_str
@@ -718,7 +719,7 @@ function ip_changes(){ [ ! -z "$serverchan_ipv6" ] && [ "$serverchan_ipv6" -ne "0" ] && echo "`date "+%Y-%m-%d %H:%M:%S"` 当前IPv6: ${IPv6}" >> ${logfile} echo IPv4 $IPv4 > ${dir}ip && echo -e IPv6 $IPv6 >> ${dir}ip title="路由器重新启动" - content="${content}${str_splitline}${str_title_start} 路由器重新启动"${str_title_end} + content="${content}${str_splitline}${str_title_start} 路由器重新启动${str_title_end}" [ ! -z "$serverchan_ipv4" ] && [ "$serverchan_ipv4" -ne "0" ] && content="${content}${str_linefeed}${str_tab}当前IP:${IPv4}" [ ! -z "$serverchan_ipv6" ] && [ "$serverchan_ipv6" -ne "0" ] && content="${content}${str_linefeed}${str_tab}当前IPv6:${IPv6}" fi @@ -882,7 +883,7 @@ function cpu_load(){ local cpu_wendu=`soc_temp`; [ -z "$cpu_wendu" ] && echo "`date "+%Y-%m-%d %H:%M:%S"` 【!!!】无法读取设备温度,请检查命令" >> ${logfile} - if [ "$cpu_wendu" -gt "$temperature" ]; then + if [ `expr $cpu_wendu \> $temperature` -eq "1" ]; then echo "`date "+%Y-%m-%d %H:%M:%S"` 【!!警报!!】 CPU 温度过高: ${cpu_wendu}" >> ${logfile} else temperature_time=`date +%s` @@ -1104,7 +1105,7 @@ function send(){ local cpuload=`getcpu` local ramload=`free -m|sed -n '2p'|awk '{printf "%.2f%%\n",($3/$2)*100}'` local systemstatustime=`cat /proc/uptime|awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("运行时间:%d天%d时%d分%d秒",run_days,run_hour,run_minute,run_second)}'`;unset run_days run_hour run_minute run_second - local send_content="${send_content}${str_splitline}${str_title_start} 系统运行状态"${str_title_end} + local send_content="${send_content}${str_splitline}${str_title_start} 系统运行状态${str_title_end}" local send_content="${send_content}${str_linefeed}${str_tab}平均负载:${systemload}" local send_content="${send_content}${str_linefeed}${str_tab}CPU占用:${cpuload}" local send_content="${send_content}${str_linefeed}${str_tab}内存占用:${ramload}"