无备份服务的Azure Fileshare手动快照整体还原方法
手动创建的Azure文件共享快照全量还原方案
你当前使用的无恢复服务保管库关联的手动快照,无法使用备份中心的一键还原能力,可通过以下两种方案直接完成整快照还原,无需逐文件操作:
方案1:使用Azure PowerShell / Azure CLI 直接覆盖还原到原文件共享
适用场景:需要将快照内容直接覆盖原文件共享当前内容的场景
- 第一步获取目标快照的资源ID:可在Azure Portal的文件共享「快照」列表点击对应快照,在属性页直接复制
资源ID,也可以通过PowerShell查询:
Get-AzStorageShare -Context <存储账户上下文> -Name <文件共享名> -IncludeSnapshot | Where-Object {$_.SnapshotTime -eq "<目标快照时间戳>"} | Select-Object Id, SnapshotTime
- 第二步执行全量还原命令,直接用快照内容覆盖原文件共享:
- PowerShell命令:
Restore-AzRmStorageShare -ResourceGroupName <资源组名> -StorageAccountName <存储账户名> -Name <文件共享名> -SnapshotResourceId <你获取到的快照资源ID>- Azure CLI命令:
az storage share restore --account-name <存储账户名> --name <文件共享名> --snapshot-id <你获取到的快照资源ID> --resource-group <资源组名>
注意:该操作会直接覆盖原文件共享的所有当前内容,执行前请确认是否需要先备份现有最新数据
方案2:使用AzCopy 整快照拷贝到目标位置(支持还原到新文件共享/其他存储账户)
适用场景:不想覆盖原文件共享内容,需要把快照还原到新文件共享、或者其他存储账户的场景
- 首先获取目标快照的SAS令牌:在Portal对应快照的「共享访问签名」页生成,权限至少勾选
读取和列表 - 拼接快照的完整访问端点:格式为
https://<存储账户名>.file.core.windows.net/<文件共享名>?<SAS令牌>&sharesnapshot=<快照时间戳>,快照时间戳可在快照属性页直接复制 - 执行AzCopy递归拷贝命令,全量同步快照内容到目标文件共享:
azcopy copy "<快照完整访问端点URL>" "<目标文件共享访问端点URL+SAS令牌>" --recursive=true
- 如果目标是新文件共享,提前在对应存储账户创建好空的文件共享后再执行上述命令即可
注意:AzCopy会自动跳过相同哈希的文件,支持断点续传,适合大体积文件共享的还原场景
内容的提问来源于stack exchange,提问作者Robert
相关产品推荐
相关产品推荐

