№ 4823 В разделе
Sysadmin
от February 6th, 2013,
В подшивках: Linux
Для некоторых людей это покажется открытием, но многопотоковые закачки могут значительно ускорить загрузку файлов. Как это многопотоковая? Допустим, что вы хотите скачать новый дистрибутив любимой Ubuntu и делаете это как обычно через браузер (Firefox, Chrome, Opera или че у вас там). Браузеры качают только в 1 поток – от начала файла и до конца. Бывает, что на серверах стоит специальная программа, которая ограничивает скорость подключения клиентов где-нибудь до 100-300 кб в сек и вы сидите в грусти, надувая пузыри из слюней. В этой ситуации может помочь вам закачка в несколько потоков. Происходит оно следующим образом: на сервер посылается запрос на размер файла и в соответствии полученому размеру на вашем диске создается файл. Далее длина файла делится на куски – количество необходимых вам потоков. Если файл большой, то кусков может быть больше потоков, но не менее того, что вы указали. Получается, что ограничивающий сервер отдает не 1 поток в 300 кб\с, а несколько потоков каждый по 300 кб\с. Т.е. если потока 4, то файл скачается на скорости не 300, а 1200 – в 4 раза быстрее.
Под Windows этих качалок как фекаляшек в свинарнике, а вот под Linux с ними всегда была проблема. Точнее проблемы не было с самими программами, а была с их известностью. Самой известной такой качалкой является Downloader for X (он же d4x). Менее известными являются MultiGet (написан кривовато и китайцами) и aria2. Вот последний наиболее функционален и имеет консольную версию, что облегчает ее использование на серверах и машинах опытных пользователей. Качает торренты, металинки, http и ftp. Подробнее вы можете прочитать в документации командой man aria2c
сразу после того, как установите программу или в гугле 🙂 Кстати, я написал замечательную графическую оболочку для этой программы.
Например, вы хотите скачать дистрибутив Ubuntu в 5 потоков (по умолчанию 1):
aria2c -x 5 ftp://mirror.yandex.ru/ubuntu-cdimage/releases/12.10/release/ubuntu-12.10-server-armhf+omap.img
Не менее полезными окажутся параметры -i
и -j
. Первый позволит вам указать текстовый файл с несколькими урлами для закачки (например, вы хотите скачать 10 фильмов за ночь), а второй параметр укажет сколько одновременно файлов из списка будет качаться. По умолчанию -j 5
, но рекомендую вам выставлять этот параметр 1 или 2, если вы используете -x
потому, что количество потоков перемножится. Это значит, что файлы из списка будут качаться одновременно и каждый в несколько потоков. Это может отрицательно сказаться на скорости. Но если у вас жирненький 40 мбитный канал, то не заморачивайтесь.
Для aria2 есть еще один графический интерфейс (уж простите, но название не помню, но гуглится оч легко), который я не пробовал, но вы всегда его можете попробовать, если он есть в репозитории вашей ОС или если умелка позволяет, то установите ручками.
Кое-что интересненькое о торрентах:
Fortune cookie: "I threw out all the bath water, and there was no baby there." [Dan Barker, referring to the Bible in a debate, 1989]
Leave a Reply