Синхронизация s3cmd зависает в разделе "Получение списка удаленных файлов для..."
Как часть решения для резервного копирования, я использую s3cmd для передачи загрузки файлов.
У меня четыре разные работы с каталогами разных размеров и файлами разных размеров.
Три из рабочих мест работает просто отлично. Последняя работа, однако, висит на сообщении:
Retrieving list of remote files for <...>
И когда я говорю, что это зависает, я имею в виду, что это не идет дальше. Так стояло целую неделю на 100% стабильном офисном интернет-соединении.
Теперь каталог, который он пытается загрузить, большой. Около 306GB. Это, безусловно, самая большая из рабочих мест.
Я видел сообщение о StackOverflow с проблемой, аналогичной (не идентичной) этой проблеме, и в принятом ответе говорилось, что нужно отредактировать.s3cfg и установить большее значение socket_timeout. Я изменил его с 10 на 180, но это не имело значения.
Есть идеи, что попробовать дальше? Я потерпел неудачу в поиске.
2 ответа
Решением этой проблемы было для меня прекратить использование s3cmd и начать использовать вместо него инструмент aws.
вместо s3cmd sync ...
Я сейчас пользуюсь aws s3 sync ...
, Это работает как шарм. Хотелось бы, чтобы я никогда не сталкивался с s3cmd.
Поскольку каталог назначения становится большим, время для получения списка md5 и размера данных увеличивается.
Для меня так же большие резервные копии выполняют этот шаг менее чем за двадцать минут. Я заметил, что у меня установлено значение socket_timeout 300.
Вы также можете избежать сканирования md5 каждого файла в целевом сегменте, используя --no-check-md5, но я не нашел в этом необходимости.