View previous topic :: View next topic |
Author |
Message |
Oxy
Joined: 05 Sep 2005 Posts: 38
|
(Separately) Posted: Sun Sep 22, 2013 13:14 Post subject: Синхронизация с FTP: как уберечь дату локальных файлов? |
|
|
Total Commander 8.01 32x (Windows XP).
Нарыл несколько багов и недо-фитч:
1) в режиме FXP, MDTM не юзается никогда (даже когда оба сервера поддерживают MLSD);
2) без MLSD (при использовании LIST), MDTM также недоступен при обычной закачке (хотя доступен при синхронизации--МАРАЗМ!);
3) ручное указание разности временных зон сервера и клиента, тоже учитывается только при синхронизации (а должно учитываться всегда);
4) самое страшное, что при upload-синхронизации, как я понял, нет возможности категорически запретить изменять время локального файла (выполнять обратную синхронизацию времени)!
Или это все-таки как-то отключается?
Last edited by Oxy on Tue Sep 24, 2013 08:57; edited 2 times in total |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Sun Sep 22, 2013 13:27 Post subject: |
|
|
Oxy
Замечание за нарушение правил форума. Про то, для чего предназначен подфорум "Секреты и советы", говорилось многократно.
Информация об используемых версиях TС и ОС для подобных сообщений обязательна. До её получения разбирать конкретику просто не имеет смысла.
Багом принято называть то, что работает не так, как следует из документации программы, а не то, чего в ней не хватает с точки зрения конкретного пользователя.
P.S. Слово "фича" пишется по-русски без буквы "т".
Тема перенесена. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Oxy
Joined: 05 Sep 2005 Posts: 38
|
(Separately) Posted: Sun Sep 22, 2013 21:24 Post subject: |
|
|
Avada
Прошу прощения, таки запостил не туда
Версию указал, хотя такое поведение характерно для всех (32-х битных) версий, где есть эти фичи.
Касательно баг-не баг--формально Вы тоже правы: прямых заявлений о том, что это должно работать, в документации я не встречал. Так что не баг, но очень грубая недоработка.
Но я, собствено, хотел выяснить: возможно ли как-то запретить изменять дату локальных файлов при аплоаде? Если нет, то хотелось бы узнать, начиная с какой версии появилась эта, ИМХО, глупая фича--обратная синхронизация времени файла? |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Sun Sep 22, 2013 23:25 Post subject: |
|
|
Oxy
Не являюсь специалистом по FTP, но по времени появления ответить могу. Сама синхронизация с FTP появилась с версии 4.02 (1999 год), и сразу же с изменением даты/времени локальных файлов.
Предлагаю сравнить соответствующие фрагменты справки до и после версии 7.55.
Справка прежних версий wrote: | После успешной пересылки функция синхронизации устанавливает метку даты/времени локального файла по дате/времени удалённого файла. |
Справка новых версий wrote: | Если сервер не поддерживает ни одной из команд MDTM, MFMT, SITE UTIME, то после успешной пересылки функция синхронизации устанавливает метку даты/времени локального файла по дате/времени удалённого файла. |
Кроме того, в справке с версии 5.0 (2002 год) в этом подразделе есть приписка:
Quote: | Новое: Total Commander НЕ изменяет дату/время локального файла, если отмечена опция "игнорировать дату". |
(Никакое оно давно уже не новое, так что тут в справке надо убрать это слово. И Гислер не заметил, и мы тоже. Исправим.)
Предыдущий подраздел, где объясняется причина такого поведения, предлагаю прочитать самостоятельно. А ещё лучше — весь этот раздел справки полностью. Там между старыми и новыми версиями ещё кое-какая разница есть.
Про ключ MDTM можно в справке посмотреть. Дополнительно в версии 8.50 добавлены значения у ключа SpecialFlags:
Quote: | 4096: Использовать команду MDTM для указания удалённой метки даты/времени.
8192: Использовать команду MFMT.
12288: Использовать SITE UTIME (сумма 4096 и 8192). |
_________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Oxy
Joined: 05 Sep 2005 Posts: 38
|
(Separately) Posted: Tue Sep 24, 2013 08:28 Post subject: |
|
|
Quote: | Если сервер не поддерживает ни одной из команд MDTM, MFMT, SITE UTIME, то после успешной пересылки функция синхронизации устанавливает метку даты/времени локального файла по дате/времени удалённого файла. |
Это не совсем так. Если используется LIST (MLSD не поддерживается сервером или отключен), обратная синхронизация даты будет выполнена в любом случае (даже после успешного вызова MDTM), что приведет к обнулению секунд или всего времени исходного файла. |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|