64 lines
2.1 KiB
Markdown
64 lines
2.1 KiB
Markdown
---
|
||
name: "pbs-bk03-opt-backup"
|
||
description: "bk03 /opt 备份到 pbs01 library。连接 bk03、认证 PBS 仓库、proxmox-backup-client 推送。"
|
||
---
|
||
|
||
# bk03 /opt 备份到 pbs01
|
||
|
||
将 bk03(主机名 xuan-aq)的 `/opt` 目录备份到 Proxmox Backup Server pbs01 的 `library` 存储。
|
||
|
||
## 架构要点
|
||
|
||
- **pbs01**:Proxmox Backup Server(接收端),Tailscale `100.115.195.195`
|
||
- **bk03**:备份源,主机名 `xuan-aq`,Tailscale `100.115.195.193`
|
||
- PBS 是「客户端推送」模式:备份由 **bk03 主动推送到 pbs01**
|
||
- bk03 的 /opt 包含 `containerd`、`seafile` 两个目录,备份整个 `/opt` 为 `bk03_opt.pxar`
|
||
|
||
## 凭证(敏感,勿写入日志/聊天)
|
||
|
||
- **bk03 SSH**:用户 `yangxuan`,密码需临时注入(勿持久化);可 `su`/`sudo` 提权到 root
|
||
- **PBS token**:`backup@pbs!bk03`(/datastore Admin 权限),secret 存于 bk03 权限 600 的文件(如下),不落盘到 pbs01
|
||
|
||
## 触发模式
|
||
|
||
**pbs01 开机后自动检测 + 控制同步(目标是自动化):**
|
||
|
||
1. pbs01 检测 bk03 是否在线(tailscale ping)
|
||
2. 在线 → 控制 bk03 开始备份
|
||
|
||
## 认证方式(在 bk03 上执行)
|
||
|
||
```bash
|
||
export PBS_REPOSITORY='backup@pbs!bk03@100.115.195.195:library'
|
||
export PBS_PASSWORD='<SECRET>' # 从安全文件读取,勿明文输出
|
||
```
|
||
|
||
## 备份命令
|
||
|
||
```bash
|
||
proxmox-backup-client backup bk03_opt.pxar:/opt
|
||
```
|
||
|
||
## 验证(只读)
|
||
|
||
```bash
|
||
# 列出快照
|
||
proxmox-backup-client snapshot list
|
||
# 查看存储用量
|
||
proxmox-backup-client status
|
||
```
|
||
|
||
备份成功后,library 会生成 `host/xuan-aq/YYYY-MM-DDTHH:MM:SSZ` 快照,包含 `bk03_opt.pxar`。
|
||
|
||
## 安全红线
|
||
|
||
- **敏感操作先请示杨轩**:执行真实备份、写配置、删快照前必须确认
|
||
- **不泄露 secret**:token secret、SSH 密码绝不写入 pbs01 日志/记忆/聊天
|
||
- **只读命令可直接执行**;写/删/改必须先确认
|
||
|
||
## 待自动化项(后续迭代)
|
||
|
||
- pbs01 开机检测脚本(systemd 或 cron @reboot)
|
||
- pbs01 → bk03 免密触发(SSH 密钥,替代密码)
|
||
- secret 安全存储方案(bk03 权限 600 文件)
|