Repository navigation
Releases
v1.0.1 · 面板 · 修鉴权绕过、扫描并发和风扇兜底
v1.0.1 · 面板 · 修鉴权绕过、扫描并发和风扇兜底
这一版没有新功能,修的是评审指出的三处问题和一处安装包里的显示错误。
改了什么
- 伪造
X-Forwarded-For就能绕过面板的 8 次锁定。gin 默认信任所有代理,ClientIP()会采信这个头。现在不信任任何代理,按真实对端地址计数。 - 面板之前没有读写超时,也没有请求体上限。现在读头 5 秒、读 30 秒、写 250 秒、空闲 60 秒,请求体上限 1 MB。
- 磁盘扫描同一时间只允许一次,进行中再点返回 409。之前连点几次就有几个 du 抢同一块盘。
- 温度源读不到时,风扇以前按 30°C 算,对 35–75 的曲线等于默认机器是凉的。现在沿用上次有效读数,15 秒内不升档,超过才抬到 200/255,并在屏上提示「温度源失联」,恢复后自动消失。
- fpk 里中文卷标显示成
\xe5\xaa\x92\xe4\xbd\x93\xe5\xba\x93这样的转义串,现在还原成「媒体库」。
升级
应用中心里装 1.0.1。同版本不能覆盖安装,如果之前装过同名包,先卸载再装。配置保留在 @appconf,重装后沿用;卸载不会清掉配置文件,要彻底删干净得手动移除 @appconf/r1-frontscreen。
完整变更见 CHANGELOG。
附件
r1-toolbox-linux-amd64/.sha256:海康 R1(N100 / x86_64),systemd 部署用r1-toolbox-linux-arm64/.sha256:其他主板 / 副屏r1-frontscreen.fpk:飞牛应用中心安装包,非特权运行
v1.0.0
首个应用中心版本。
功能与 v0.9.8 一致,分发形态改为 fpk 应用包:由应用中心托管启停,随包携带 SDL2 运行库与中文字体,安装时校验前置屏、背光与风扇硬件。
不建议只装 fpk 而不看说明:应用仅适用于带 376×960 DSI 前置屏的 HIKSEMI R1/R1X。
安装
- 应用中心(推荐):下载
r1-frontscreen.fpk,通过应用中心手动安装 - 命令行:
./install.sh(下载r1-toolbox-linux-amd64,注册 systemd 服务)
两种方式二选一,不要同时装 —— 两个实例会抢同一个 DRM 设备。
v0.9.8 · 安装 · 修端口检查的误报
v0.9.8 · 安装 · 修端口检查的误报
只改了安装脚本,屏幕和面板都没动。
- 配置里端口不是 8080 时,升级完会提示"端口没响应",其实服务是好的。现在按配置文件里的端口去检查。
- 机型检查原来只要型号里带 R1 就放行,R1000 这类也会通过。现在要求型号是 R1 或 R1X。
重跑 sudo ./install.sh 就行,配置和程序都不动。
v0.9.7 · 安装 · 不用编译,直接下预编译包
v0.9.7 · 安装 · 不用编译,直接下预编译包
以前装这个东西要先装 Go 和 SDL 开发库,在本机编译几分钟,中途还要回答一堆问题。现在改成下载 Release 里的现成包。
- 只装运行时要用的库,不装编译器。
- 全程不提问。端口用
--port,指定版本用--version,没法联网就把包拷过来用--binary。 - 装之前先看机型和屏幕设备,不对就停下来说清楚。装完检查服务和端口,起不来直接把日志打出来。
- 新增
r1-toolbox --version,可以安全地问版本了。
修掉三个会让人丢配置的老问题:
- 以前的脚本把配置写到
/etc/r1-control/,程序读的却是/etc/r1-toolbox/,装完一直在用默认值。 - 以前的脚本每次安装都重写配置文件,升级一次就把端口、风扇曲线和令牌冲掉。现在先备份再跳过。
- 以前执行
r1-toolbox -version会启动第二个实例,和正在跑的那个抢屏幕。
升级:重跑 sudo ./install.sh。旧路径的配置会自动迁移过来。
v0.9.6 · 面板 · 新增磁盘占用分析
v0.9.6 · 面板 · 新增磁盘占用分析
面板左列多了一张"存储"卡,回答"这块盘到底被什么占满了"。
- 选一块盘,看一级目录 Top 8 和大文件 Top 10,带占比条。
- 这台机器上扫 932 GB 的机械盘用了 0.9 秒,所以直接同步扫,不用等后台任务。
- 用系统的
du而不是自己遍历目录。媒体库里常有硬链接,自己算会把同一份数据算两遍。
另外修了风扇映射:在面板里改完立即生效,不用再重启服务。旧通道会停在最后的转速上,不切回自动,否则 BIOS 一接管转速会突然拉满。
v0.9.5 · 面板 · 容器列表和日志(只读)
v0.9.5 · 面板 · 容器列表和日志(只读)
面板右列底部多了一张"容器"卡,能看到有哪些容器、在不在跑,点"日志"可以看最近 200 行。
- 只能看,不能启停。要编排请用 Portainer。
- 日志做了去色处理,不然满屏都是
\x1b[33m这种转义码。 - 端口映射做了去重,不然会显示成"5433→8000 5433→8000"。
读不到 Docker 的时候,卡片写"未接入",而不是显示一片 0。
v0.9.4 · 面板 · 24 小时历史曲线 + 两列布局
v0.9.4 · 面板 · 24 小时历史曲线 + 两列布局
- 新增"历史"卡,可以看 CPU、内存、温度、磁盘、网络五项,画的是每分钟的均值和峰值。
- 数据存在一个 SQLite 文件里,保留 24 小时,过期的自动删。
- 刚装好时数据不满一天,横轴会按实际跨度显示"几分钟前",攒满一天自动变回 24 小时。
- 面板从一列改成两列,整页短了大约四成,不用一直往下滚。
原来一列铺到底,每张卡 1180px 宽,右边空一大片。现在左边放看的内容,右边放调的控件。
v0.9.3 · 面板 · 新增自检卡
v0.9.3 · 面板 · 新增自检卡
面板上能看到程序自己的状态:占多少 CPU 和内存、每帧画多久、采样还在不在跑、看门狗是否正常。程序有没有变重,不用再猜。
顺手修了两个显示问题:
- 下小雨的夜里,天气图标画的是月亮。夜间切换只该替换晴天和多云,雨雪雾保持原样。
- 系统页控制卡里的中文显示成乱码。
实测程序占用从 1.92% 到 2.11%,还在原来定的基线上。
v0.9.2 · 屏幕、面板 · 异常横幅 + Bark 推送
v0.9.2 · 屏幕、面板 · 异常横幅 + Bark 推送
屏幕顶部加了一条横幅。有故障时显示最严重的一项,右边写"共 N 项",完整清单在面板里。
平时不显示。没有横幅就代表一切正常。
会看五件事:硬盘 SMART、温度、磁盘容量、容器异常、网络掉线。连续 3 次异常才报,同一条告警 30 分钟内不重复推。
Bark 推送到手机,在面板里填 key 就行,接口不会把 key 回显出来。
另外把系统页底部那两个小药丸删了,令牌挪进控制卡,点一下显示 10 秒。
v0.9.1 · 面板 · 实时预览 + 页面显隐
v0.9.1 · 面板 · 实时预览 + 页面显隐
- 面板上能看到屏幕当前的样子。这是用同一份数据重新画了一遍,不是截屏,所以动画和背光不会体现在里面。
- 可以隐藏、显示页面,也能调整顺序,保存后下一个画面就生效,不用重启。
修了一个问题:预览图偶尔是一张纯黑的图,原因是图片请求没带上令牌。