| name | backup-restore |
| description | 处理所有备份与恢复任务,覆盖四个层面:工作区(项目/数据库/代码)、用户数据(家目录/dotfiles/密钥)、操作系统(全量系统/磁盘镜像/LVM 快照)、阿里云快照(云盘快照/自动策略/跨地域复制/整机镜像)。适用于 RPM 包管理的 Linux 系统(如 Alibaba Cloud Linux)纯命令行环境,使用 yum 包管理器。当用户提到备份、恢复、快照、归档、回滚、克隆、迁移、容灾等任何涉及数据保存或恢复的请求时触发此技能,即使请求看起来很简单也应使用。 |
| author | aliyun |
| layer | runtime |
| version | 0.1.0 |
| category | release |
| lifecycle | maintenance |
| tags | ["release","backup","restore","aliyun"] |
| status | beta |
备份与恢复技能
本技能处理四个层面的备份与恢复操作。执行前务必先探测环境、识别场景,再选择合适的层面。
适用环境:Linux / 纯命令行 / yum 包管理器
第零步:环境探测
在读取任何 reference 文件之前,先运行以下命令了解当前环境,据此推荐方案:
ECS_ID=$(curl -s --connect-timeout 2 http://100.100.100.200/latest/meta-data/instance-id 2>/dev/null)
if [ -n "$ECS_ID" ]; then
echo "环境:阿里云 ECS(实例 $ECS_ID)"
else
echo "环境:非 ECS 或无法访问元数据"
fi
cat /etc/os-release | grep -E '^(NAME|VERSION)='
lvs 2>/dev/null && echo "LVM:可用" || echo "LVM:无"
df -h /
lsblk
根据探测结果:
- 检测到 ECS → 优先推荐阿里云快照方案
- 有 LVM → OS 备份可用 LVM 快照
- 非 ECS 且无 LVM → 推荐 restic 或 tar
层面说明与包含关系
阿里云快照(云盘块级,平台管理)
└── 包含整个磁盘,含以下所有内容
操作系统备份(系统全量文件)
└── 包含以下所有内容
用户备份(家目录、dotfiles、个人数据)
└── 包含以下内容
工作区备份(项目文件、数据库)
高层面的备份天然包含低层面的数据。不要推荐冗余的备份组合——如果用户已经做了 OS 备份或阿里云快照,就不需要额外再做用户层或工作区层的备份。
层面选择
| 层面 | 管理主体 | 范围 | 常用工具 |
|---|
| 工作区 | 用户 | 项目文件、代码、数据库、工作目录 | tar、rsync、mysqldump、git bundle |
| 用户 | 用户 | 家目录(~)、dotfiles、应用数据、SSH 密钥 | rsync、tar |
| 操作系统 |