# 2026-02-22

## VPS 备份（6台 → 155.103.67.87:/data/backup/）
- Hdy(597M) greensjc(458M) KXY(645M) greenzjg(169M) jp2co(625M) Alice(100M) 全部完成
- 备份TG通知Bot: 7297809751:AAG2ir-u4hAIui7Ol7oqDY7uUPEyqf2_X9U | ChatID: 165067365
- 踩坑: vps-snapshot _ssh_wrap 的 rsync 双 -e 冲突导致 key 认证失败，已修复推 GitHub
- 踩坑: Hdy/KXY 的 /tmp 是 tmpfs 内存盘，空间不够放快照临时文件
- Alice SSH 超时是因为机器没开，顶尖手动开机后恢复
- 备份数据从 /backup(root分区) 迁移到 /data/backup(大盘984G)，做了软链接兼容
- 6台服务器 REMOTE_DIR 已改为 /data/backup，脚本已同步
- /tmp 下 emby/qb 备份也迁到 /data/backups/EmbyServer/

## OVH 账户信息修改
- fs649135-ovh (mf0@msn.com): 改名 Jian Zhang，国家 Hong Kong，地址 Lippo Centre，电话 +852 95658196
- mjjvps@icloud.com 账号: 同样改名 Jian Zhang（地址电话已经是香港的）
- fs649135-ovh 密码: OvH@2026mNg!（旧密码 rekkuj-2zyvDi-suzdog 已失效）

## OVH KS2 RAID5 reshape
- 38.3% 完成，速度 18MB/s，预计还需 ~36小时（约2/23晚完成）
- 完成后需 resize2fs 扩到 ~10.8T

## vps-snapshot & ss-rust 测试（31.22.111.216 ↔ 211）
- 完整测试: snapshot create → remote sync(rsync) → data restore → full restore 全通过
- Docker 备份恢复: images/volumes/compose.yml 数据验证通过
- ss-rust 安装测试: 双节点(SS2022+AES-128)+BBR 通过
- 测试后两台机器已清理干净
- 修复3个commit: 4f2bf2b(check_deps), 25fcec4(docker volumes restore), 19d10e4(ss-rust兼容性)

## GOST 安装 161.248.136.2
- 只能通过跳板机 103.236.59.173 SSH(端口20084)访问
- gost 2.12.0 binary 已传到位
- 待完成: 配置 config.json + systemd service（server: 161.129.35.235:6365, secret: 34e400f7f20f46f896fc7241a6b33658）

## OpenClaw 监控面板讨论
- 顶尖想做类似哪吒探针的多node OpenClaw监控面板
- 参考了两个项目: SDK-Proxy Dashboard(单机API请求日志) + CatBus Mission Control(多node状态)
- CLIProxyAPI 生态(11.2k⭐)有现成Dashboard但都是单机版，不适合多node
- 设计思路: 中心面板(VPS) + 各机器Agent上报，融合两种面板功能
- 已做设计稿 HTML: workspace/oc-monitor-design.html（3个Tab: Nodes/Provider Matrix/Request Logs）
- 用顶尖实际的4台机器(Mac mini/HDY/OC2/OC3)和6个provider数据
- 暂不开发，先看设计效果

## OC Monitor 开发完成 & 部署
- GitHub: https://github.com/xmg0828888/oc-monitor (新账号)
- Server: OC2(155.103.66.237):3800, Docker, Auth Token: D2DE595D2F9A6F12926212B326DA68BF
- 5节点全部在线: Mac mini / HDY / Tarek(原OC2) / Chicago(原OC3) / Ciallo(155.103.67.87)
- 改名: OC2→Tarek, OC3→Chicago, 新增 Ciallo
- 功能: 实时metrics(10s心跳), provider健康检测(60s), 默认模型绿点标记, 请求日志筛选, 暗色/白天主题切换, 数值跳动动画
- Agent: 轻量轮(10s只采CPU/mem/disk/swap) + 完整轮(60s含provider检测+token统计+请求上报)
- 供应商去重: 同名provider多模型合并显示,每个模型单独一行
- 默认模型自动检测: 从最近7天session日志统计最常用provider
- WS增量更新: heartbeat只更新变化的数值,不重建DOM,CSS transition丝滑过渡

## Chicago(OC3) 磁盘清理
- 清理前: 94% (18G/20G)
- 清理: npm缓存1.5G + 旧备份1.2G + 旧snapshots 3.3G + docker镜像 + apt缓存
- 清理后: 58% (11G/20G)

## GitHub 账号
- 旧账号 mango082888-bit 被封(suspended), 可能因为ss-rust仓库
- 新账号: xmg0828888, 通过 gh auth login --web 登录
- 仓库已迁移: oc-monitor / vps-snapshot / ss-rust / tcp-bbr(新)

## 新仓库: tcp-bbr
- https://github.com/xmg0828888/tcp-bbr
- VPS网络极限优化: BBR + 内核参数调优 + 缓冲区自动计算(4档按内存)
- 直接运行自动优化,显示完整TCP调优参数

## 统一一键命令格式 (jsdelivr CDN)
- 所有脚本统一用: curl -sL https://cdn.jsdelivr.net/gh/xmg0828888/项目@main/脚本 -o 脚本 && chmod +x 脚本 && ./脚本
- jsdelivr CDN国内外都能用,raw.githubusercontent.com被墙
- jsdelivr缓存刷新: curl https://purge.jsdelivr.net/gh/xmg0828888/项目/文件

## tg-user-monitor 恢复
- 从 185.218.6.38:/opt/tg-user-monitor 拉取代码
- 清理敏感数据(api_id/api_hash改input(), rules.json脱敏)
- 推送到 GitHub(xmg0828888) + Gitea(git.088520.xyz)

## Gitea 自建 Git 服务
- 地址: https://git.088520.xyz (Tarek 155.103.66.237)
- Docker容器, SQLite, Let's Encrypt HTTPS(到期2026-05-23)
- 端口: 3001(HTTP) / 2222(SSH)
- 管理员: admin / Mango2026! | API Token: c958b9ec6a570844dc8534da71f3a7bf67c796e7
- 5个仓库: oc-monitor / vps-snapshot / ss-rust / tcp-bbr / tg-user-monitor
- 选Tarek而非185.218.6.38(后者1G RAM/10G磁盘太紧)

## vps-reminder 续费按钮
- HDY /opt/vps-reminder/, systemd service
- 新增: 过期(⚫)和临期(🔴≤3天)VPS显示"✅ 续费"内联按钮
- 点击后输入新到期日, 支持parse_date()简写

## Tarek 每日备份
- vps-snapshot cron 每天04:00, 同步到 155.103.67.87:/data/backup/Tarek
- VPS_NAME改为Tarek, 本地保留3个, 远程保留30天

## OC Monitor UI 改进
- IP脱敏: 未登录显示***, 🔒按钮Token解锁完整视图
- 缓存Token: agent上报cache_read/cache_write, DB新增列, 前端替换无用列
- WS node_name修复: 前端从DATA.nodes查找补全
- 字体改系统UI字体, monospace仅用于数字
- 卡片对齐/标签溢出/圆角/间距优化

## CDN配置 openclaw.mjjvps.com
- 域名解析到 23.147.148.x (jpn-pre CDN集群)
- 需在 peekabo.io 面板配置回源到 155.103.66.237:3800
- certbot无法验证(DNS不直指服务器), CDN端处理SSL
- Nginx反代已配好(Tarek), WebSocket支持

## NodeSeek 论坛帖子
- 写了 oc-monitor 介绍帖(两版文案: 正式版+口语版)
- 截图4张(节点/供应商/日志/亮色), 用未登录状态截图确保IP脱敏
- 生成 post.html 到 oc-monitor 服务器供手机复制, 用完已删除
- 去掉了GitHub链接, 只保留Gitea安装命令

## Sub Bot 订阅管理机器人
- 部署: 185.218.6.38 /opt/sub-bot/, systemd sub-bot.service
- Bot: @mjjvps_bot | Token: 7791156425:AAHaSEcSzqeSyoDWP97Wr2b7TCvQgfe11cM
- 管理员: 165067365 最高权限
- 命令: `/vps` 唯一入口，弹出按钮菜单（添加/列表/获取/删除/检测）
- 交互式: 所有操作通过按钮完成，不需要手打命令
- 自动识别: 群里直接发订阅链接自动入库（支持多条、Surge格式）
- 支持协议: ss/vmess/vless/trojan/hy2/tuic + Surge格式(`Name = ss, server, port, ...`)
- 获取格式: 原始链接 / Base64 / Clash Meta 订阅URL
- HTTP订阅端点: http://185.218.6.38:18888/{secret}/download?target=ClashMeta
- SUB_SECRET: 8a253355edeeb3534780227861873315（路径密钥，防直接访问）
- 选单个节点: 弹出格式选择（原始链接/Clash Meta）
- 选全部: 也弹格式选择（原始/Clash Meta/Base64）
- 所有bot消息60秒后自动删除（包括中间交互面板）
- 6小时自动检测节点存活，不可用的自动删除并通知群
- /setgroup 绑定群（仅管理员，菜单不显示）
- 绑定群: -1002202309858（小🐔&IEPL | Top Network）
- Privacy Mode 需关闭（BotFather → Group Privacy → Turn off）
- 踩坑: post_init + asyncio.ensure_future 会导致 polling 卡住，改用 threading
- 踩坑: 环境变量传 token 在 systemd 里可能失败，直接写代码里更可靠
- 踩坑: getUpdates 手动调用会和 polling 冲突，积压消息需清空
- Python3 + python-telegram-bot, 35MB内存
- Gitea: https://git.088520.xyz/admin/sub-bot（已清理敏感信息，改环境变量）

## xianyu(185.218.6.38) 备份
- vps-snapshot 已安装，配置: VPS_NAME="xianyu"
- 本地: /var/snapshots/ LOCAL_KEEP=1
- 远程: 155.103.67.87:/data/backup/xianyu/ REMOTE_KEEP_DAYS=30
- SSH key: /root/.ssh/id_rsa
- 快照: xianyu_20260223_000705.tar.gz (77MB) 已同步
- 旧快照已清理
- 该机器服务: tg-user-monitor + tg-del-bot + x-ui + sub-bot + nezha
