我们将项目存档(使用gsutil rsync
)。我的任务是验证每次上传后,必须对本地项目文件夹和上传到存储桶的文件夹进行比较。这是为了确保本地数据实际上已完全上传到存储桶中。
我如何可靠地执行此类测试?
答案 0 :(得分:3)
gsutil rsync
命令本身将为每个上传的文件执行校验和验证。来自Checksum Validation And Failure Handling:
在每次上传或下载结束时,使用gsutil rsync命令 验证源文件/对象的校验和是否匹配 目标文件/对象的校验和。如果校验和没有 匹配,gsutil将删除无效副本并打印警告 信息。
[剪断]
rsync命令将在发生故障时重试,但如果足够的话 在特定的复制或删除操作期间发生故障 命令会失败。
如果提供-C选项,则命令将跳过 失败的对象并继续前进。在同步运行结束时if 任何失败都没有成功重试,rsync命令会 报告失败次数,并以非零状态退出。在这 指出你可以再次运行rsync命令,它将尝试任何 剩下的需要复制和/或删除操作。
[剪断]
有关gsutil重试处理的更多详细信息,请参阅gsutil help retries。
所以你可以:
gsutil rsync
cmds与-C
选项一起使用,并直接使用其失败跟踪结果(最终进行一些自动重新尝试)