2016-04-06 6 views
7

Я пытаюсь использовать s3cmd sync (vanilla command remote to local), но для каждого файла я получаю предупреждение not writable: Operation not permitted (см. Ниже). Однако файлы выглядят правильно загруженными, и если я делаю ls на файл, он есть. Я пробовал использовать флаг --disable-multipart, но это не имело значения. Я использую s3cmd версию 1.5.0-rc1.S3 Sync Not Writable Предупреждение

Есть ли причина, по которой я могу получать эти предупреждения?

WARNING: MD5 signatures do not match: computed=11ff15bf.., received="b119cb85b109c6.." 
WARNING: ./path/part-r-00003.gz.parquet not writable: Operation not permitted 
s3://bucket/path/part-r-00003.gz.parquet -> <fdopen> [31 of 72] 36101458 of 36101458 100% in 2s 16.30 MB/s done 

ответ

8

Вероятная причина в том, что объекты S3 были сохранены с атрибутами файловой системы. Когда вы синхронизируете их в локальном каталоге, по умолчанию s3cmd sync попытается восстановить эти атрибуты, включая uid, gid.

Чтобы предотвратить s3cmd делать это, запустить его с --no-сохранить опции, например .:

s3cmd sync --no-preserve s3://bucket/my/key/prefix . 
+0

Это работало для меня; верьте, что это должно было быть отмечено как ответ. – GDB

+0

Это правильный ответ. Должен быть отмечен как таковой. – nrm