121 lines
6.3 KiB
Markdown
121 lines
6.3 KiB
Markdown
# MEMORY.md —— PBS 备份助手长期记忆
|
||
|
||
## 🔌 连接信息(核心)
|
||
- **主机**:pbs01(Proxmox Backup Server)
|
||
- **地址**:`100.115.195.195`(Tailscale 内网)
|
||
- **SSH 登录**:`ssh root@100.115.195.195`(已配置免密,使用 `~/.ssh/id_ed25519`)
|
||
- **系统**:Debian 系,内核 `7.0.0-3-pve`(Proxmox VE 内核)
|
||
- **连接状态**:2026-08-21 配置免密登录成功,已验证可正常连接
|
||
|
||
## 🗄️ 数据存储(datastore)
|
||
|
||
### 1. `library`(VPS/OPT 备份)
|
||
- **路径**:`/mnt/library`
|
||
- **设备**:`/dev/sdc1`(984G 总量)
|
||
- **用途**:VPS、PC02、BK03 等设备的 /opt 目录备份
|
||
- **GC 计划**:daily
|
||
- **API Tokens**:
|
||
- `backup@pbs!vps01_opt` → VPS OPT 备份
|
||
- `backup@pbs!pc02_library` → PC02 library 备份
|
||
- `backup@pbs!bk03` → BK03 OPT 备份
|
||
- **状态**:已用 271G(30%),可用 663G
|
||
|
||
### 2. `weixin_backup`(微信聊天记录)
|
||
- **路径**:`/mnt/backup`
|
||
- **设备**:`/dev/sdb1`(98G 总量)
|
||
- **用途**:PC02 微信聊天记录备份
|
||
- **保留策略**:keep-daily 30, keep-monthly 12
|
||
- **API Token**:`root@pam!pc02-weixin`(或 `backup@pbs!pc02_weixin`)
|
||
- **备份源**:`/mnt/d/yangxuan/Documents/xwechat_files/Backup/wxid_4931329313415`(WSL2 路径)
|
||
- **自动化**:cron 每月 1 号凌晨 2:00 执行 `~/backup-wechat.sh`
|
||
- **状态**:已用 9.4G(11%),可用 84G
|
||
|
||
## 📅 定时备份任务
|
||
- **微信备份**:cron `0 2 1 * *`(每月 1 号 2:00)
|
||
- **library GC**:daily(自动)
|
||
|
||
## 🖥️ 备份客户端清单
|
||
| 客户端 | 备份内容 | Datastore | 路径 |
|
||
|--------|---------|-----------|------|
|
||
| VPS (vps01_opt) | /opt | library | - |
|
||
| PC02 (pc02_library) | /mnt/e/library/library | library | - |
|
||
| BK03 | /opt | library | - |
|
||
| PC02 (微信) | 微信聊天记录 | weixin_backup | `/mnt/d/yangxuan/Documents/xwechat_files/Backup/wxid_4931329313415` |
|
||
|
||
## 📝 运行模式
|
||
- **低功耗策略**:pbs01 每月开机一次
|
||
- **开机后检测**:检查各备份主机(pc02 等)是否在线(Tailscale),在线则同步
|
||
|
||
## 🤖 BK03 自动同步(已完成 2026-08-21)
|
||
|
||
### 连接信息
|
||
- **bk03**:主机名 `xuan-aq`,Tailscale `100.115.195.193`,SSH 用户 `yangxuan`
|
||
- **认证**:pbs01 专属密钥 `~/.ssh/id_ed25519_pbs01_bk03` → bk03 authorized_keys(免密)
|
||
- **PBS token**:`backup@pbs!bk03`(/datastore Admin),secret 存于 bk03 `~/.config/proxmox-backup/bk03.pass`(权限 600),**勿泄露**
|
||
|
||
### systemd 自动同步(pbs01 上)
|
||
- **脚本**:`/root/scripts/auto-sync-bk03.sh`
|
||
- **service**:`bk03-autosync.service`(oneshot)
|
||
- **timer**:`bk03-autosync.timer`(开机后 90 秒触发)
|
||
- **日志**:`/var/log/bk03-autosync.log`
|
||
- **流程**:开机→90s→检测 bk03 在线(ping 193)→在线则免密触发 `proxmox-backup-client backup bk03_opt.pxar:/opt --backup-id xuan-aq`
|
||
- **已验证**:端到端备份成功(增量复用 100%)
|
||
|
||
## 🤖 VPS01 自动同步(已完成 2026-08-21)
|
||
|
||
### 连接信息
|
||
- **vps01**:主机名 `xuan-vps`,Tailscale `100.115.195.20`,SSH 用户 `root`(可直接登录,无需 su)
|
||
- **认证**:pbs01 专属密钥 `~/.ssh/id_ed25519_pbs01_vps01` → vps01 authorized_keys(免密)
|
||
- **PBS token**:`backup@pbs!vps01_opt`(/datastore Admin),secret 存于 vps01 `~/.config/proxmox-backup/vps01.pass`(权限 600),**勿泄露**
|
||
- **注意**:vps01 authorized_keys 曾因原有粘连行损坏,已拆分修复,原条目全保留
|
||
|
||
### systemd 自动同步(pbs01 上)
|
||
- **脚本**:`/root/scripts/auto-sync-vps01.sh`
|
||
- **service**:`vps01-autosync.service`(oneshot)
|
||
- **timer**:`vps01-autosync.timer`(开机后 120 秒触发)
|
||
- **日志**:`/var/log/vps01-autosync.log`
|
||
- **流程**:开机→120s→检测 vps01 在线(ping 20)→在线则免密触发 `proxmox-backup-client backup vps_opt.pxar:/opt --backup-id xuan-vps`
|
||
- **已验证**:端到端备份成功(增量复用 98.3%),耗时约7分钟
|
||
- **注意**:vps01 /opt 含 navidrome 数据库,备份时 db-wal 文件增长会截断(正常现象)
|
||
|
||
### 时区说明
|
||
- PBS 快照时间为 **RFC3339 + UTC**(尾部 Z),如 `2026-08-21T07:59:08Z`,**无法改为本地时区**(文档依据 terminology.html)
|
||
- 本地读取需 +8h 转换(Asia/Shanghai)
|
||
|
||
## 🤖 PC02 自动同步(配置于 2026-09-02)
|
||
|
||
### 连接信息
|
||
- **pc02**:主机名 `xuan-main`,Windows+WSL2,Tailscale `100.115.195.189`
|
||
- **SSH**:端口 **2222**,用户 `yangxuan`,密钥 `id_ed25519_pbs01_pc02`(免密)
|
||
- **备份源在 WSL2 的 /mnt/d(Windows D盘 9P 慢速挂载)**,跨盘校验慢、耗时偏长(正常)
|
||
|
||
### 双备份配置(pbs01 触发)
|
||
| 备份 | token | 源 | 目标 datastore | archive |
|
||
|------|-------|-----|------|------|
|
||
| 微信 | `backup@pbs!pc02_weixin` | `/mnt/d/yangxuan/Documents/xwechat_files/Backup/wxid_4931329313415` | weixin_backup | wexin.pxar |
|
||
| library照片 | `backup@pbs!pc02_library` | `/mnt/e/library/library` | library | library.pxar |
|
||
|
||
- secret 存 PC02:`~/.config/proxmox-backup/pc02_weixin.pass`、`pc02_library.pass`(600)
|
||
|
||
### systemd 自动同步(pbs01 上)
|
||
- **脚本**:`/root/scripts/auto-sync-pc02.sh`(先微信后 library 串行双备份)
|
||
- **service**:`pc02-autosync.service`(oneshot,TimeoutStartSec=43200 即 12h)
|
||
- **timer**:`pc02-autosync.timer`(开机后 150 秒触发)
|
||
- **日志**:`/var/log/pc02-autosync.log`
|
||
- **流程**:开机→150s→检测 PC02 在线(ping 189)→在线则免密 SSH(2222) 串行跑:微信备份 → library照片备份
|
||
|
||
### PC02 微信备份历史痛点
|
||
- 微信/library 数据源在 /mnt/d,/mnt/e(Windows NTFS 跨盘 9P),proxmox-backup-client 增量校验每个文件时慢速 I/O,CPU 仅1-2%、进度慢、uploaded 0B 持续多分钟属正常
|
||
- 全目录扫描可能比实际上传耗时更长
|
||
|
||
## 🔧 常见操作规范
|
||
- 所有读写操作通过 `ssh root@100.115.195.195 '<命令>'` 执行
|
||
- 只读命令直接执行;写/删/改命令必须先请示杨轩
|
||
- SSH 密钥内容不读取、不泄露
|
||
- **敏感信息保护**:API Token 密码、Secret 等不写入日志或聊天
|
||
|
||
## ⚠️ 注意事项
|
||
- 备份数据删除操作不可逆,务必谨慎
|
||
- 涉及回收站清空、数据存储格式化等高风险操作一律先请示
|
||
- **文档依据**:任何写/删/改操作前必须查阅 PBS 官方文档(https://100.115.195.195:8007/docs/),说明依据并获确认
|