Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Синхронизация с FTP: как уберечь дату локальных файлов?

 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
Oxy



Joined: 05 Sep 2005
Posts: 38

Post (Separately) Posted: Sun Sep 22, 2013 13:14    Post subject: Синхронизация с FTP: как уберечь дату локальных файлов? Reply with quote

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
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10415
Location: Россия, Саратов

Post (Separately) Posted: Sun Sep 22, 2013 13:27    Post subject: Reply with quote

Oxy
Замечание за нарушение правил форума. Про то, для чего предназначен подфорум "Секреты и советы", говорилось многократно.
Информация об используемых версиях TС и ОС для подобных сообщений обязательна. До её получения разбирать конкретику просто не имеет смысла.
Багом принято называть то, что работает не так, как следует из документации программы, а не то, чего в ней не хватает с точки зрения конкретного пользователя.

P.S. Слово "фича" пишется по-русски без буквы "т".

Тема перенесена.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Oxy



Joined: 05 Sep 2005
Posts: 38

Post (Separately) Posted: Sun Sep 22, 2013 21:24    Post subject: Reply with quote

Avada
Прошу прощения, таки запостил не туда Embarassed
Версию указал, хотя такое поведение характерно для всех (32-х битных) версий, где есть эти фичи.
Касательно баг-не баг--формально Вы тоже правы: прямых заявлений о том, что это должно работать, в документации я не встречал. Так что не баг, но очень грубая недоработка.
Но я, собствено, хотел выяснить: возможно ли как-то запретить изменять дату локальных файлов при аплоаде? Если нет, то хотелось бы узнать, начиная с какой версии появилась эта, ИМХО, глупая фича--обратная синхронизация времени файла?
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10415
Location: Россия, Саратов

Post (Separately) Posted: Sun Sep 22, 2013 23:25    Post subject: Reply with quote

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
View user's profile Send private message
Oxy



Joined: 05 Sep 2005
Posts: 38

Post (Separately) Posted: Tue Sep 24, 2013 08:28    Post subject: Reply with quote

Quote:
Если сервер не поддерживает ни одной из команд MDTM, MFMT, SITE UTIME, то после успешной пересылки функция синхронизации устанавливает метку даты/времени локального файла по дате/времени удалённого файла.

Это не совсем так. Если используется LIST (MLSD не поддерживается сервером или отключен), обратная синхронизация даты будет выполнена в любом случае (даже после успешного вызова MDTM), что приведет к обнулению секунд или всего времени исходного файла.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
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