Skip to content

备份事故处理

远程备份显示成功但担心文件损坏

在备份中心使用远程完整性检查。服务端会下载远程 ZIP,并对比文件名里的 hash 前缀。

如果 hash 不匹配,不要立刻删除旧备份。先下载该文件、本地保存,再运行新的手动备份。

恢复后备份设置需要修复

这通常是 JWT_SECRET 不同导致 runtime 信封无法解密。进入备份中心后,系统会根据 portable 部分提示管理员重新保存备份设置。

修复后会用当前 JWT_SECRET 重新生成 runtime 密文。

附件部分恢复失败

还原结果会返回 skipped 列表。常见原因:

  • 远程 attachments/ 目录缺少 blob。
  • KV 模式下附件超过 25 MiB。
  • 目标实例没有绑定 R2/KV。
  • 写入 R2/KV 失败。

服务端会把失败附件从恢复后的 attachments 表移除,所以密码项不会引用不存在的附件。

误删远程 attachments 目录

远程 ZIP 本身通常只包含 manifest.jsondb.json,历史附件依赖远程 attachments/ 目录。误删后:

  1. 不要清理旧 ZIP。
  2. 先检查本地是否有完整导出的 ZIP。
  3. 如果当前实例仍有附件,立刻运行一次包含附件的远程备份,重新上传仍存在的附件 blob。
  4. 对已经丢失且当前实例也没有的附件,只能从其他备份恢复。

误换 JWT_SECRET

影响:

  • 已登录会话失效。
  • 附件和 Send 短链失效。
  • 备份设置 runtime 解密失败。

处理:

  1. 如果知道旧 JWT_SECRET,恢复旧值。
  2. 如果不知道旧值,进入备份中心重新保存备份目标。
  3. 通知用户重新登录。
  4. 重新运行一次手动备份。

Released under the LGPL-3.0 License.