Edw*_*118 6 rsync amazon-s3 md5 aws-cli
我一直在研究使用 AWS cli 进行数据完整性检查,以验证备份是否已从 Linux 文件服务器正确传输到 AWS s3。同样,我想验证将文件从备份恢复到 Linux 文件服务器时是否也正确传输。
我检查了 S3 上与对象一起存储的 etag,因为它似乎是 md5sum。但是,如果在大文件的情况下将文件作为分段传输,则 etag 将不再有效。
但在我进一步尝试对每次刚刚同步到 S3 的内容进行 MD5sum 之前,真的有必要这样做吗?当通过互联网在 Linux 文件系统之间使用 rsync 时,对传输的文件进行 md5sum 来验证它们并不常见。因为假设我认为 rsync 已经解决了这个问题?
所以我想知道 AWS clisync 是否已经为我们处理了数据完整性检查?
ken*_*kas 10
简短的回答是肯定的,aws s3 sync并aws s3 cp计算 MD5 校验和,如果上传完成时不匹配,将重试最多五次。
较长的答案:
AWS CLI 将计算并自动填充标准上传和分段上传的 Content-MD5 标头。如果 S3 计算的校验和与提供的 Content-MD5 不匹配,S3 将不会存储该对象,而是向 AWS CLI 返回一条错误消息。AWS CLI 将在放弃之前重试此错误最多 5 次。
如果请求使用 a 进行签名,Signature Version 4则不会计算 MD5 校验和。
请注意,AWS CLI 将为执行上传的高级 aws s3 命令(aws s3 cp、aws s3sync)以及低级 s3api 命令(包括 aws s3api put-object 和 aws s3api upload)添加 Content-MD5 标头-部分。
参考
| 归档时间: |
|
| 查看次数: |
6981 次 |
| 最近记录: |