Передача файла через нестабильное соединение SSH


23

Я пытаюсь загрузить несколько больших файлов (около 10 ГБ) с низкой скоростью загрузки (200 Кбит / с) по часто отключаемому соединению SSH (из-за плохих условий в сети).

Я пытаюсь использовать scp, но если есть лучший способ по SSH, я в порядке.

Каков наилучший способ сделать это?

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


2
rsync лучше. Он перезапускается - это означает, что вы можете продолжить с того места, где остановились, если ваше соединение разрывается. Возможно, вы захотите использовать --partialфлаг. И по умолчанию он работает через ssh. Вы можете объединиться с агрессивной программой сжатия, такой как 7z, но вам понадобится много памяти, и это все равно займет некоторое время.
Фахим Мита

Я пытался с --partial, но это просто звезды над ...
blue112

"Звезды прошли"? Вы имеете в виду, начинается все сначала? Эти флаги , которые я использую: rsync -abvz --partial. Можете показать пример сеанса?
Фахим Мита

@FaheemMitha Я пытался воспроизвести его, но, похоже, оно работает сейчас ...
blue112

Невозможно возобновить загрузку с scp. Возможно возобновить загрузку с rsync --partial. Невозможно возобновить загрузку с sftp. Для другого направления, то есть возобновление загрузки, вы можете использовать rsync --partial, sftp regetили sftp get -a.
оч

Ответы:


32

Используйте rsync с опцией --partial

rsync -av --partial sourcedir user@desthost:/destinationdir

--Partial сохранит частично переданные файлы. Когда вы возобновите передачу rsync после разорванного соединения ssh, частично переданные файлы начнут возобновляться с того места, где было разорвано соединение ssh, а также успешно перенесенные файлы не будут перенесены снова.

Также рассмотрите возможность передачи опции -z, если вы уверены, что файлы, которые вы передаете, могут быть значительно сжаты; например, файлы журнала, содержащие повторяющийся текст.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.