Выполняет ли AWS cli проверку целостности данных при синхронизации с s3?

Выполняет ли AWS cli проверку целостности данных при синхронизации с s3?

Я рассматривал возможность использования AWS cli для проверки целостности данных, чтобы убедиться, что резервная копия была правильно перенесена с файлового сервера Linux на AWS s3. Аналогично, я хотел бы проверить, что при восстановлении файла из резервной копии на файловый сервер Linux он также был перенесен правильно.

Я проверил etag, хранящийся с объектом на S3, потому что, похоже, это md5sum. Однако, если файл передается как multipart в случае больших файлов, etag больше недействителен.

Но прежде чем я пойду дальше и попытаюсь сделать MD5sum для того, что только что было синхронизировано с S3 каждый раз, действительно ли это необходимо? При использовании rsync между файловыми системами Linux через интернет, не принято делать md5sum для переданных файлов, чтобы проверить их. Поскольку предполагается, что я думаю, что rsync уже позаботился об этом?

Мне интересно, выполняет ли AWS cli sync проверку целостности данных за нас?

решение1

Короткий ответ — да, aws s3 syncи aws s3 cpвычислить контрольную сумму MD5, и если она не совпадет после завершения загрузки, повторить попытку до пяти раз.

Более развернутый ответ:

AWS CLI вычислит и автоматически заполнит заголовок Content-MD5 как для стандартных, так и для многокомпонентных загрузок. Если контрольная сумма, вычисленная S3, не совпадает с предоставленным Content-MD5, S3 не сохранит объект и вместо этого вернет сообщение об ошибке обратно в AWS CLI. AWS CLI повторит эту ошибку до 5 раз, прежде чем прекратить работу.

Если запрос подписан с помощью , Signature Version 4то контрольная сумма MD5 не рассчитывается.

Обратите внимание, что AWS CLI добавит заголовок Content-MD5 как для высокоуровневых команд aws s3, которые выполняют загрузку (aws s3 cp, aws s3 sync), так и для низкоуровневых команд s3api, включая aws s3api put-object и aws s3api upload-part.

Ссылка

Часто задаваемые вопросы по AWS CLI S3

Связанный контент