aria2 - консольный даунлоадер, поддерживающий закачку по протоколам FTP, HTTP(S), BitTorrent и Metalink.
Возможности программы:

  • Многопоточная закачка;
  • Возможность закачки с нескольких зеркал;
  • Работа через прокси-сервера (FTP, HTTP, HTTPS);
  • Докачка с места обрыва;
  • Проверка контрольных сумм (для BitTorrent и Metalink);
  • Удалённое управление.

Установка

В Debian

 # apt-get install aria2

Предполагается, что источники пакетов настроены правильно и установка происходит с дисков или с репозиториев в сети Интернет.

В ArchLinux
В отличии от Debian, в ArchLinux программа обновляется гораздо чаще и в репозиториях можно найти самую последнюю версию.

 # pacman -S aria2

Предполагается, что источники пакетов настроены правильно и установка происходит с репозиториев в сети Интернет.

Опции

В составе дистрибутива Debian Lenny версия aria2 старовата - в ней отсутствуют некоторые опции и не до конца реализован механизм докачки. Ниже описаны наиболее применяемые опции последней версии программы.

--dir=[путь_до_каталога] - указывает программе, куда сохранять скачиваемые объекты. По умолчанию закачка идёт в текущий каталог;

--log=[путь_до_каталога] - указывает программе, куда сохранять лог-файл работы программы; если необходимости в логе нет, то следует указать пустой файл --log="";

--log-level=[info] - указывает уровень (подробность) протоколирования событий в лог-файл;

--max-concurrent-downloads=[число] - количество одновременных закачек из списка ссылок (не путать с потоками!). В версии программы для Debian Lenny, за это отвечает параметр --split=[количество|потоков] ;

--continue=[true\false] - включение\отключение возможности докачки файлов после обрыва;

--all-proxy=[путь_к_прокси_серверу] - адрес используемого прокси-сервера. Параметр используется как для ftp-, так и для http-закачек;

--max-connection-per-server=[число] - количество потоков для закачки;

--max-download-limit=[число] - принудительное ограничение скорости закачки; например: --max-download-limit=180К ;

--max-tries=[число] - количество неудачных попыток "зацепить" файл, после чего программа начнёт обрабатывать следующий файл;

--proxy-method=[get\put] - тип запроса прокси серверу. В большинстве случаев - get;

--input-file=[полный_путь_до_файла] - путь до файла, где указаны ссылки на скачиваемые файлы и "зеркала". Программа, последовательно, строка за строкой, обрабатывает этот файл. В каждой новой строке, через TAB перечисляются "зеркала".

Применение

Здесь будут примеры использования программы от простого к сложному.

Посегментная FTP\HTTP закачка

1. Простое скачивание файла (без использования прокси-сервера):

 $ aria2c "http://host/file.zip"

Файл сохраняется в текущую директорию. Для остановки закачки жмём Ctrl+C

2. Скачивание с применением зеркала:

 $ aria2c "http://host/file.zip" "http://mirror/file.zip"

или

 $ aria2c "http://host1/file.zip" "ftp://host2/file.zip"

3. Скачивание с применением 2-х одновременных соединений и размером блока в 1 Мегабайт:

 $ aria2c -x2 -k1M "http://host/file.zip"

4. Одновременное скачивание 2-х файлов по ссылкам в files.txt:

 $ aria2c -ifiles.txt -j2

-i - обозначает файл со списком ссылок; -j - количество одновременных закачек.

5. С использованием прокси-сервера:

 $ aria2c --http-proxy="http://proxy:8080" "http://host/file"

или

 $ aria2c --ftp-proxy="http://proxy:8080" "ftp://host/file"

Также смотрите параметры: --http-proxy, --https-proxy, --ftp-proxy, --all-proxy, --no-proxy и секцию ENVIRONMENT мануала.
Внимание! Системная переменная http_proxy, обрабатывается в первую очередь и если она установлена, то прокси-параметры, заданные при запуске aria2c почему-то не обрабатываются.

6. Если на прокси-сервере используется парольная аутентификация:

 $ aria2c --http-proxy="http://username:password@proxy:8080" "http://host/file"

или

 $ aria2c --http-proxy="http://proxy:8080" --http-proxy-user="username" --http-proxy-passwd="password" "http://host/file"

Последний пример. Скачивание файлов посредством скрипта, в котором заданы все параметры, а список ссылок вынесен в отдельный файл aria-list.

aria-dl
#!/bin/bash
# Скрипт для автоматизации скачивания файлов.
 
/usr/bin/aria2c --dir=/temp/MyDownloads/aria --log=/temp/MyDownloads/aria/aria.log \
--max-concurrent-downloads=1 --continue=true --all-proxy=http://10.0.0.1:3128 \
--max-connection-per-server=4 --max-tries=10 --proxy-method=get \
--log-level=info --input-file=/temp/MyDownloads/aria/aria-list

Не забудьте сделать скрипт исполняемым ;-)

Смотрите также

Печать/экспорт