2.0 KiB
2.0 KiB
N2 Auto Update Program
简介
这是一个自动更新程序,用于保持 Gitea 仓库中的 n2.json 文件与上游源同步。程序会自动处理下载、格式化、字段强制覆盖以及通知发送。
功能特性
- 自动同步: 每日定时(05:30)从指定 URL 下载最新的 JSON 文件。
- 智能比对: 仅在内容发生实质变化时才触发更新。
- 字段强制:
- 强制设置
logo字段为./bj/fyj.gif,且更新时不会被覆盖。 - 保留或插入
lf_js_search(大鹏私人影库) 字段,并始终置顶。
- 强制设置
- 自动验证: 每次运行都会自动从 Gitea 拉取最新文件进行验证,确保关键字段正确。
- Telegram 通知:
- 仅在发生更新或验证失败时发送通知。
- 通知包含更新内容详情及验证结果。
- 支持长消息分片发送。
- 安全可靠:
- 使用 Git SHA 校验防止并发冲突。
- 文件锁机制防止程序重复运行。
- Gitea 提交使用服务器自动时间戳,避免时间穿越问题。
部署信息
- 程序路径:
/root/n2-auto-update/ - 配置文件:
/root/n2-auto-update/config.yaml - 服务名称:
n2-update.service - 定时任务:
n2-update.timer
运行日志
日志文件位于 /root/n2-auto-update/logs/n2_update.log,会自动轮转。
更新记录
2026-02-05
- 优化: 调整通知策略,仅在文件更新或验证失败时发送 Telegram 通知,避免每日无效打扰。
- 修复: 修正 Gitea 提交时间显示为 "26 years ago" 的问题 (移除显式时间戳,使用服务器时间)。
- 增强: 添加
verify_and_notify模块,每次运行自动验证logo和lf_js_search字段。 - 功能: 强制
logo字段值为./bj/fyj.gif,并确保lf_js_search字段不被修改且置顶。
2026-02-04
- 初始部署: 完成基础框架搭建,包括下载、Diff 比对、Gitea 上传及 Systemd 定时任务配置。