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
Не забудьте сделать скрипт исполняемым
Смотрите также
- Сайт проекта: http://aria2.sourceforge.net/