Гарантирует ли «226 Передача завершена» согласованность между локальными и удаленными файлами при использовании FTP?

Гарантирует ли «226 Передача завершена» согласованность между локальными и удаленными файлами при использовании FTP?

У меня есть несколько автоматизированных скриптов, которые выполняют загрузку FTP среди прочего. Мне интересно, какой уровень проверки ошибок мне следует проводить после завершения выполнения этих загрузок.

Может ли что-то пойти не так при загрузке файла, когда он сообщает об ошибке "226 Transfer complete", требующей дополнительных тестов, помимо проверки этой строки в журнале, чтобы проверить, был ли файл успешно загружен?

решение1

Нет, это не так. 226 может также возникнуть при различных условиях, когда это не будет верно ( ABORTнапример). СмотритеRFC959.

решение2

MD5SUM или SHA1SUM могут подойти.

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

решение3

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

Связанный контент