Необходимо, чтобы все временные метки в локальных файлах совпадали с временной меткой их соответствующего размещенного на ftp файла

Я облажался и загрузил файлы ~10 ГБ из моего внешнего хранилища резервных копий (FTP-сервер), не проверив параметр "сохранить временную метку" в клиенте.

ПК с локальными файлами - это нетбук, использующий соединение WiMax (сотовая связь 4G) для доступа в Интернет, и эта операция израсходовала всю мою месячную пропускную способность, плюс 250 долл. Дополнительной пропускной способности.

У меня проблема с приложением, которое обновляет зеркальную копию на ftp-сервере, в том, что оно думает, что все теперь новое, поскольку все файлы имеют одинаковую временную метку и выглядят более новыми, чем копии на сервере. Он хочет загрузить все заново, что неприемлемо.

Помимо повторной загрузки всех ~10 ГБ, я ищу способ перенести метки времени из размещенных файлов ftp в соответствующие им локальные файлы. Кто-нибудь знает способ сделать это?

Еще одна проблема, которая меня беспокоит, заключается в том, что некоторые файлы, существующие в обоих местах, изменились, и если я изменю все временные метки, не учитывая это, я боюсь, что некоторые из них не будут отражены позже. В дополнение к изменению всех временных меток мне понадобится способ сравнить различия между файлами в каждом местоположении и обновить файлы сервера в соответствии с хэшем или чем-то еще. К счастью, FTP-сервер поддерживает хеширование. Я не знаю, какой клиент может сделать то, что мне нужно, чтобы сделать это. Может ли кто-нибудь также рекомендовать клиенту сделать это?

Заранее спасибо.

ОБНОВИТЬ:

Я разместил аналогичное сообщение на форумах FTP-клиента и получил ответ, в котором мне предлагалось перезапустить весь процесс передачи заново, а когда клиент спрашивает, что делать с файлами, которые уже существуют локально, настроить его на "возобновление" файла. перечислить.

Операция в настоящее время успешно справляется со своей задачей, и, поскольку теперь клиент настроен на сохранение временных меток, он заменяет их все на временные метки на сервере так, как мне нужно.

1 ответ

Я просто сделал ту же ошибку; скачал много файлов без сохранения метки времени. Хотя автор нашел решение, он не сообщает, какой FTP-клиент он использовал.

Следующее решение обновит временную метку для файлов (помеченных как "дата изменения" в Microsoft Windows), доступных через FTP с клиентом FileZilla. Я не нашел решения для синхронизации метки времени папки.

С помощью FileZilla 3.7.3
1. Включите сохранение временной метки: Transfer > Preserve Timestamp ...
2. Включите возобновление переводов: Transfer > Default file exists action...
3. а затем, Downloads: Resume file transfer (или установите Uploads, если ошибка метки времени в другом направлении)
4. Перезапустите загрузку. Для существующих, готовых файлов будет обновлена ​​временная метка.

Примечание. FTP является относительно простым протоколом, поэтому рекурсивный список будет переиздан в каждом каталоге на удаленном FTP-сервере. Это займет некоторое время для сервера с большим количеством файлов и каталогов.

Если ваш сервер SFTP, вы можете использовать WinSCP для синхронизации меток времени.
1. Перейдите к нужным каталогам
2. Commands > Sychronize
3. Если вы подключены к SFTP-серверу, вы увидите опцию Синхронизировать метки времени в "режиме"
См. https://winscp.net/eng/docs/task_synchronize_full.

Другие вопросы по тегам