1

Я пытаюсь загрузить с удаленного сервера на локальный ноутбук большой файл (~ 5 ГБ), но загрузка останавливается на 40% от размера (2,4 ГБ).

Я использую эту команду rsync:

rsync --bwlimit=1200 -rh --progress -e 'ssh -p port' server:/path/to/file Downloads/

Я также попытался снизить mtu на сервере с 1500 до 1492, но безуспешно.

Какие-либо предложения? :D

2 ответа2

0

пожалуйста попробуйте следующее:

  • снизить MTU до 1492

sudo ifconfig eth0 mtu 1492

  • отключить TCP SACK

sudo sysctl -w net.ipv4.tcp_sack = 0

0

Я не верю, что это проблема сети.

Скорее всего, проблема с памятью. Имея только 2 ГБ ОЗУ сервера и работающий RSYNC для файла 5G, я бы сначала заподозрил сервер. Вы можете следить за памятью сервера, если вы ее используете.

У клиентской стороны тоже могут быть проблемы. Я отказался от RSYNC для Windows, например, потому что он всегда зависал на больших файлах, независимо от того, сколько у вас было оперативной памяти.

Мне нужно было бы спросить, был ли rsync подходящим инструментом для работы с такими большими файлами. Конечно, это зависит от файла, но если какие-либо обновления не будут доступны для механизма сравнения rsync, то, вероятно, в этом нет никакого смысла. Прямая передача может быть лучше. Вы можете даже использовать что-то вроде zip или tar, чтобы разбить файл, чтобы вы могли отправить его по частям и собрать на другом конце.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .