Как докачивать файлы по протоколу SFTP

Однажды мне потребовалось забрать бэкап с одного правильного хостинга. Архив получился большой, примерно в 4 Гб. Скачал где-то 92%, и тут бац – интернет-провайдер подвел, соединение померло.

Я качал файл с помощью утилиты sftp, и она стала показывать stalled вместо прогресса скачивания. Жалко файл было до безумия, заново качать 4 Гб очень не хотелось. Ну должен же быть способ докачивать файлы по протоколу SFTP, сам протокол докачку поддерживает

Стал курить мануалы, и выяснил – надо было качать с помощью scp, а не sftp – эта утилита 100% поддерживает докачку, в отличие от sftp. Ну как говориться, поздно пить боржоми, файл-то уже на 92% скачан. Оказалось, что докачать его все-таки можно, только вместо sftp надо использовать lftp. Выглядело это примерно так:

lftp sftp://mylogin@host.tld
cd /path/to/backup
get -c backup.tgz

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