备份与恢复
LLStack 提供两种备份方式:
传统的 tar.gz 打包方式:
- 打包站点文件 + 数据库导出
- 适合小型站点
- 每次备份都是完整副本
基于 restic 的增量备份:
- 块级去重,只传输变化的数据
- AES-256 加密存储
- 100GB 站点日增量可能只需几 MB
- 支持多后端(本地、S3、SFTP)
- 快照管理和保留策略
增量备份 (restic)
Section titled “增量备份 (restic)”首次使用增量备份需要初始化仓库:
- 进入 备份 页面 → 增量备份 Tab
- 点击 初始化仓库
- 系统自动生成加密密码并持久化存储
仓库位置:/opt/llstack/backups/restic/
点击 创建快照 选择要备份的站点,系统会:
- 导出数据库到临时文件
- 使用 restic 对站点目录和数据库文件进行增量备份
- 清理临时文件
首次备份会传输所有数据,后续备份只传输变化的块。
快照列表显示:
- 创建时间
- 快照 ID
- 备份标签(站点名称)
- 数据大小
选择快照和恢复目标路径,系统会将快照数据恢复到指定位置。
恢复时可以选择恢复模式:
| 模式 | 说明 |
|---|---|
| 全部恢复 | 同时恢复站点文件和数据库 |
| 仅文件 | 只恢复站点文件,保持现有数据库不变 |
| 仅数据库 | 只恢复数据库,保持现有文件不变 |
配置自动清理旧快照的策略:
| 参数 | 说明 | 默认值 |
|---|---|---|
keep-last | 保留最近 N 个快照 | 7 |
keep-daily | 每天保留 1 个,最多 N 天 | 30 |
keep-weekly | 每周保留 1 个,最多 N 周 | - |
keep-monthly | 每月保留 1 个,最多 N 月 | - |
自动备份调度
Section titled “自动备份调度”配置定时自动执行增量备份,通过 cron 任务实现:
| 频率 | 说明 |
|---|---|
| 每 1 小时 | 适合高频更新的站点 |
| 每 3 小时 | 推荐大多数站点使用 |
| 每 6 小时 | 中等更新频率 |
| 每 12 小时 | 低更新频率 |
| 每 24 小时 | 每日备份 |
在 备份 页面 → 调度设置 中选择备份频率和目标站点,系统自动创建对应的 cron 任务。
查看仓库的总大小和去重率,了解备份的存储效率。
选择站点,系统打包 tar.gz 备份文件,包含:
- 站点文件(文档根目录)
- 数据库导出(如有关联)
上传 tar.gz 备份文件进行恢复。
面板数据库备份
Section titled “面板数据库备份”面板配置数据库 (SQLite) 自动定时备份:
- 每日凌晨 2:30 自动备份
- 使用
sqlite3.backup()API(WAL 安全) - 支持手动触发备份