Эта ошибка возникает, когда Amazon возвращает ошибку: они, похоже, затем отключают сокет, чтобы не дать вам загрузить гигабайты запроса, чтобы получить ответ «нет, не получилось» в ответ.Вот почему некоторые люди получают его из-за перекоса часов, некоторые получают его из-за ошибок политики, а другие сталкиваются с ограничениями размера, требующими использования API загрузки из нескольких частей.Дело не в том, что все не правы или даже смотрят на разные проблемы: это все разные симптомы одного и того же базового поведения в s3cmd.
Поскольку большинство состояний ошибок будут детерминированными, поведение броска s3cmdудалить сообщение об ошибке, и повторная попытка сделать это немного сумасшедшая неудача :(. Itthen Чтобы получить реальное сообщение об ошибке, вы можете перейти в /usr/share/s3cmd/S3/S3.py (не забудьте удалить соответствующий .pyc, чтобы изменения) и добавьте print e
в блок except Exception, e:
функции send_file.
В моем случае я пытался установить тип содержимого загружаемого файла в "application / x-debian-package"Msgstr "По всей видимости, S3obd S3.object_put 1) не учитывает Content-Type, переданный через --add-header, и все же 2) не может перезаписать Content-Type, добавленный через --add-header, так как заголовки хранятся в словаре счувствительные к регистру ключи.В результате он выполняет вычисление подписи, используя свое значение «content-type», а затем в конечном итоге (по крайней мере, со многими запросами; это может быть основано на каком-то порядке хеширования) отправляет «Content-Type» в Amazon,приводя к ошибке подписи.
В моем конкретном случае сегодня кажется, что -M заставит s3cmd угадать правильный Content-Type, но, похоже, это будет сделано только на основе имени файла ... Я бынадеялся, что он будет использовать базу данных mimemagic на основе содержимого файла.Честно говоря, хотя: s3cmd даже не удается вернуть состояние неудачного завершения оболочки, когда не удается загрузить файл, поэтому в сочетании со всеми этими другими проблемами, вероятно, лучше просто написать свой собственный одноразовый инструмент, чтобы сделать тотто, что вам нужно ... почти наверняка, в конце концов, это сэкономит вам время, когда вас укусит какой-то угловой пример этого инструмента: (.