mirror of https://github.com/aria2/aria2
4012 lines
202 KiB
ReStructuredText
4012 lines
202 KiB
ReStructuredText
aria2c(1)
|
||
=========
|
||
|
||
ОБЗОР
|
||
-----
|
||
**aria2c** [<ПАРАМЕТРЫ>] [<URI>|<MAGNET-ССЫЛКА>|<TORRENT-ФАЙЛ>|<METALINK-ФАЙЛ>] ...
|
||
|
||
ОПИСАНИЕ
|
||
--------
|
||
|
||
aria2 - это утилита для загрузки файлов. Поддерживаемые протоколы: HTTP(S),
|
||
FTP, BitTorrent и Metalink. Для загрузки файла, aria2 может использовать
|
||
разные источники/протоколы и пытается максимально использовать пропускную
|
||
способность канала. Есть поддержка загрузки файла по протоколам HTTP(S)/FTP
|
||
и BitTorrent одновременно, пока данные загружаются по HTTP(S)/FTP, они тут
|
||
же могут выгружаться в BitTorrent-рой. Используя контрольные суммы блока
|
||
данных для Metalink, aria2 автоматически проверяет части данных, которые
|
||
загружаются по BitTorrent.
|
||
|
||
ПАРАМЕТРЫ
|
||
---------
|
||
|
||
Основные параметры
|
||
~~~~~~~~~~~~~~~~~~
|
||
.. option:: -d, --dir=<DIR>
|
||
|
||
Каталог для сохранения загруженных файлов.
|
||
|
||
.. option:: -i, --input-file=<FILE>
|
||
|
||
Загрузить URI, найденные в файле FILE. Вы можете указать несколько URI для одного
|
||
объекта: разделяйте URI в строке, используя символ TAB (табуляция). Когда
|
||
указано ``-``, ввод считывается из stdin (стандартный поток ввода). Дополнительные
|
||
параметры можно указывать после каждой строки с URI. Эта необязательная строка
|
||
должна начинаться с одного или нескольких пробелов и содержать один параметр.
|
||
Входной файл может использовать gzip-сжатие.
|
||
Смотрите подраздел `Входной файл`_ для детальных пояснений.
|
||
Также смотрите параметр :option:`--deferred-input`.
|
||
|
||
.. option:: -l, --log=<LOG>
|
||
|
||
Имя файла для журнала событий. Если указан ``-``, то журнал событий будет
|
||
записан в stdout (стандартный поток вывода). Если указана пустая
|
||
строка (""), то журнал событий не будет записан в файл.
|
||
|
||
.. option:: -j, --max-concurrent-downloads=<N>
|
||
|
||
Задать максимальное количество параллельных загрузок для каждого
|
||
статического (HTTP/FTP) URI, torrent и metalink. Смотрите также
|
||
параметр :option:`--split <-s>`.
|
||
По умолчанию: ``5``
|
||
|
||
.. option:: -V, --check-integrity[=true|false]
|
||
|
||
Проверить целостность файла путем подтверждения хэшей блоков или хэша
|
||
полного файла. Этот параметр влияет лишь на BitTorrent, Metalink
|
||
или HTTP(S)/FTP загрузки с параметром :option:`--checksum`.
|
||
Параметр может обнаружить поврежденные части файла и перезагрузить их.
|
||
Если есть хэш полного файла, то проверка выполняется только, когда файл
|
||
уже полностью загружен. Момент полной загрузки определяется по размеру файла. Если
|
||
проверка хэша завершилась неудачно, то файл будет перезагружен с
|
||
нуля. Если есть хэши блоков и хэш полного файла, то будут
|
||
использоваться только хэши блоков.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: -c, --continue[=true|false]
|
||
|
||
Продолжить загрузку частично загруженного файла.
|
||
Используйте этот параметр, чтобы возобновить загрузку,
|
||
начатую в веб-браузере или в другой программе, которая загружает
|
||
файлы последовательно сначала. Сейчас этот параметр можно
|
||
использовать только для HTTP(S)/FTP-загрузок.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: -h, --help[=<TAG>|<KEYWORD>]
|
||
|
||
Справочное сообщение определяется метками (TAG). Метки начинаются
|
||
с ``#``. Например, ``--help=#http`` даст справку по параметрам,
|
||
помеченным меткой ``#http``. Если задано слово (KEYWORD), не
|
||
являющееся меткой, то будет выведена справка по параметрам,
|
||
содержащих это слово. Возможные значения: ``#basic``, ``#advanced``,
|
||
``#http``, ``#https``, ``#ftp``, ``#metalink``, ``#bittorrent``, ``#cookie``,
|
||
``#hook``, ``#file``, ``#rpc``, ``#checksum``, ``#experimental``,
|
||
``#deprecated``, ``#help``, ``#all``.
|
||
По умолчанию: ``#basic``
|
||
|
||
Параметры HTTP/FTP
|
||
~~~~~~~~~~~~~~~~~~
|
||
.. option:: --all-proxy=<PROXY>
|
||
|
||
Использовать указанный прокси-сервер для всех протоколов. Для стирания
|
||
ранее определенного адреса используйте "". Вы можете отменить эту
|
||
установку и указать прокси-сервер для отдельного протокола, используя
|
||
параметры :option:`--http-proxy`,
|
||
:option:`--https-proxy` и
|
||
:option:`--ftp-proxy`. Влияет на все URI.
|
||
Формат PROXY - ``[http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``.
|
||
Смотрите также раздел `ОКРУЖЕНИЕ`_.
|
||
|
||
.. note::
|
||
|
||
Если пользователь и пароль вставлены в URI-прокси и они также указаны в
|
||
параметрах *--{http,https,ftp,all}-proxy-{user,passwd}*, то приоритетным
|
||
будет самое последнее. Например, у вас ``http-proxy-user="myname"``,
|
||
``http-proxy-passwd="mypass"`` в aria2.conf и вы указали
|
||
``--http-proxy="http://proxy"`` в командной строке, тогда запрос к HTTP-прокси
|
||
``http://proxy`` будет с пользователем ``myname`` и паролем ``mypass``.
|
||
|
||
Другой пример: если вы указали в командной строке
|
||
``--http-proxy="http://user:pass@proxy" --http-proxy-user="myname"
|
||
--http-proxy-passwd="mypass"``, тогда запрос к HTTP-прокси ``http://proxy``
|
||
будет с пользователем ``myname`` и паролем ``mypass``.
|
||
|
||
Еще один пример: если вы
|
||
указали в командной строке ``--http-proxy-user="myname"
|
||
--http-proxy-passwd="mypass" --http-proxy="http://user:pass@proxy"``, тогда
|
||
запрос к HTTP-прокси ``http://proxy`` будет с пользователем ``user`` и паролем
|
||
``pass``.
|
||
|
||
.. option:: --all-proxy-passwd=<PASSWD>
|
||
|
||
Задать пароль для параметра :option:`--all-proxy`.
|
||
|
||
.. option:: --all-proxy-user=<USER>
|
||
|
||
Задать пользователя для параметра :option:`--all-proxy`.
|
||
|
||
.. option:: --checksum=<TYPE>=<DIGEST>
|
||
|
||
Задать контрольную сумму. TYPE - тип хэша. Поддерживаемые типы хэшей
|
||
перечислены в ``Алгоритмы хэширования`` при ``aria2c -v``.
|
||
DIGEST - шестнадцатеричное значение хэша. Например, указание значения
|
||
sha-1 хэша выглядит так:
|
||
``sha-1=0192ba11326fe2298c8cb4de616f4d4140213838``
|
||
Этот параметр применим только к HTTP(S)/FTP загрузкам.
|
||
|
||
.. option:: --connect-timeout=<SEC>
|
||
|
||
Задать в соединении время ожидания в секундах для установки
|
||
подключения к HTTP/FTP/прокси-серверу. После установки
|
||
подключения этот параметр не имеет значения, и вместо него
|
||
используется параметр :option:`--timeout <-t>`.
|
||
По умолчанию: ``60``
|
||
|
||
.. option:: --dry-run[=true|false]
|
||
|
||
Если задано ``true``, aria2 только проверяет, является ли удаленный
|
||
файл доступным и не загружает данные. Этот параметр влияет на
|
||
HTTP/FTP-загрузку. BitTorrent-загрузки отменяются, если указано
|
||
``true``.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --lowest-speed-limit=<SPEED>
|
||
|
||
Закрывать соединение, если скорость загрузки меньше чем или равна
|
||
значению SPEED (байт в секунду). ``0`` означает, что aria2 не имеет
|
||
нижнего ограничения скорости. Вы можете добавить ``K`` или ``M``
|
||
(1K = 1024, 1M = 1024K). Этот параметр не влияет на
|
||
BitTorrent-загрузки.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: -x, --max-connection-per-server=<NUM>
|
||
|
||
Максимально количество соединений с одним сервером для каждой
|
||
загрузки.
|
||
По умолчанию: ``1``
|
||
|
||
.. option:: --max-file-not-found=<NUM>
|
||
|
||
Если aria2 получает статус "file not found" (файл не найден) с
|
||
удаленных HTTP/FTP-серверов NUM раз без получения, хотя бы одного байта,
|
||
тогда принудительно отказывается от загрузки. Укажите ``0``, чтобы
|
||
отключить этот параметр. Этот параметр действенен только, когда
|
||
используются HTTP/FTP-серверы.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: -m, --max-tries=<N>
|
||
|
||
Задать количество попыток. ``0`` означает неограниченно.
|
||
Смотрите также :option:`--retry-wait`.
|
||
По умолчанию: ``5``
|
||
|
||
.. option:: -k, --min-split-size=<SIZE>
|
||
|
||
aria2 не разбивает на части меньше чем 2*SIZE байт. Например,
|
||
нужно загрузить файл размером 20МиБ. Если SIZE задать 10M, то
|
||
aria2 может разбить файл на части в 2-ух диапазонах [0-10МиБ) и
|
||
[10МиБ-20МиБ) и загрузить его, используя 2 источника
|
||
(если :option:`--split <-s>` >= 2, конечно же).
|
||
Если SIZE задать 15M, т.к. 2*15M > 20MiB, aria2 не разобьет файл
|
||
на части и загрузит его, используя 1 источник. Вы можете
|
||
добавить ``K`` или ``M`` (1K = 1024, 1M = 1024K). Возможные значения:
|
||
``1M`` -``1024M``.
|
||
По умолчанию: ``20M``
|
||
|
||
.. option:: -n, --no-netrc[=true|false]
|
||
|
||
Отключить поддержку netrc. Поддержка netrc по умолчанию
|
||
включена.
|
||
|
||
.. note::
|
||
|
||
Файл netrc считывается только при запуске, если :option:`--no-netrc <-n>` задан
|
||
как ``false``. Так что если :option:`--no-netrc <-n>` задан как ``true`` при
|
||
загрузке, то netrc недоступен на протяжении всей сессии. Вы не сможете получить
|
||
доступ к netrc, даже если отправите :option:`--no-netrc=false, <-n>` используя
|
||
:func:`aria2.changeGlobalOption`.
|
||
|
||
.. option:: --no-proxy=<DOMAINS>
|
||
|
||
Укажите через запятую имена хостов, домены и сетевые адреса
|
||
с CIDR-блоком, или без него, для которых не будет использоваться прокси.
|
||
|
||
.. note::
|
||
|
||
CIDR-блок (метод IP-адресации, например 192.168.0.20/24) работает с IPv4- и
|
||
IPv6-адресами. Текущая реализация не разрешает имена хостов в URI для
|
||
сравнения сетевых адресов указанных в
|
||
:option:`--no-proxy`. Таким образом, это эффективно, только если в URI есть
|
||
IP-адреса.
|
||
|
||
.. option:: -o, --out=<FILE>
|
||
|
||
Сохранить загруженный файл под указанным именем. Если используется
|
||
параметр :option:`--force-sequential <-Z>`, то данный параметр
|
||
игнорируется.
|
||
|
||
.. note::
|
||
|
||
В Metalink или BitTorrent загрузках вы не можете указать имя файла. Имя
|
||
файла указывается здесь, только когда используются URI и aria2 с командной
|
||
строкой без параметров :option:`--input-file <-i>`,
|
||
:option:`--force-sequential <-Z>`. Например:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c -o myfile.zip "http://mirror1/file.zip" "http://mirror2/file.zip"
|
||
|
||
.. option:: --proxy-method=<METHOD>
|
||
|
||
Задать метод для использования в прокси-запросах. METHOD один
|
||
из двух: ``get`` или ``tunnel``. HTTPS-загрузки всегда используют ``tunnel``,
|
||
не обращая внимания на этот параметр.
|
||
По умолчанию: ``get``
|
||
|
||
.. option:: -R, --remote-time[=true|false]
|
||
|
||
Извлекать временную метку файла с удаленного HTTP/FTP-сервера и,
|
||
если это доступно, применить ее к локальному файлу.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --reuse-uri[=true|false]
|
||
|
||
Повторно использовать уже использованные URI, если
|
||
не осталось неиспользованных URI.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --retry-wait=<SEC>
|
||
|
||
Задать в секундах интервал ожидания между повторными попытками.
|
||
При SEC > 0, если HTTP-сервер возвращает ответ 503, aria2 будет
|
||
снова пытаться загрузить.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --server-stat-of=<FILE>
|
||
|
||
Указать имя файла, в который сохраняется профиль функционирования
|
||
сервера. Вы можете загрузить сохраненные данные, используя параметр
|
||
:option:`--server-stat-if`. Формат файла
|
||
смотрите ниже в подразделе
|
||
`Профиль функционирования сервера`_.
|
||
|
||
.. option:: --server-stat-if=<FILE>
|
||
|
||
Указать имя файла для загрузки профиля функционирования сервера.
|
||
Загруженные данные будут использованы в некоторых URI селекторах, таких
|
||
как ``feedback``. Смотрите также параметр
|
||
:option:`--uri-selector`. Формат файла смотрите
|
||
ниже в подразделе
|
||
`Профиль функционирования сервера`_.
|
||
|
||
.. option:: --server-stat-timeout=<SEC>
|
||
|
||
Указывает время ожидания в секундах, для того, чтобы сделать
|
||
недействительным профиль функционирования сервера, с тех пор,
|
||
как состоялся последний контакт с ним.
|
||
По умолчанию: ``86400`` (24 часа)
|
||
|
||
.. option:: -s, --split=<N>
|
||
|
||
Загружать файл, используя N соединений. Если задано более чем N URI,
|
||
будут использоваться первые N URI, а оставшиеся URI будут в резерве.
|
||
Если задано менее чем N URI, то URI будут использованы более одного раза,
|
||
так чтобы были задействованы все N соединений одновременно. Количество
|
||
соединений к одному и тому же хосту ограничивается параметром
|
||
:option:`--max-connection-per-server <-x>`.
|
||
Смотрите также параметр :option:`--min-split-size <-k>`.
|
||
По умолчанию: ``5``
|
||
|
||
.. note::
|
||
|
||
Некоторые Metalink регламентируют количество серверов для соединения. aria2
|
||
строго соблюдает это. Это значит, что если Metalink определяет атрибут
|
||
maxconnections меньше чем N, то aria2 использует значение атрибута
|
||
maxconnections вместо N.
|
||
|
||
.. option:: --stream-piece-selector=<SELECTOR>
|
||
|
||
Указать алгоритм выбора блока, который используется в HTTP/FTP-загрузке.
|
||
Блок - означает сегмент фиксированной длины, который загружается
|
||
параллельно, в разделенной на части, загрузке. Если задано ``default``,
|
||
то aria2 выберет блок так, чтобы это уменьшило количество установленных
|
||
подключений. Это разумное поведение по умолчанию, поскольку установка
|
||
подключения очень затратная операция. Если задано ``inorder``, то aria2
|
||
выберет блок, который имеет минимальный индекс. Index=0 означает первый
|
||
из файла. Это будет полезно при просмотре фильма, в то время как он
|
||
загружается. Параметр
|
||
:option:`--enable-http-pipelining` может
|
||
быть полезен для снижения накладных расходов при повторном подключении.
|
||
Обратите внимание, что aria2 принимает на обработку параметр
|
||
:option:`--min-split-size <-k>`, так что необходимо
|
||
будет указать разумное значение параметра
|
||
:option:`--min-split-size <-k>`.
|
||
Если задано ``geom``, то aria2 вначале выберет блок с минимальным
|
||
индексом, как при ``inorder``, однако она сохранит
|
||
экспоненциально большую область от ранее выбранного блока.
|
||
Это уменьшит количество установленных подключений и в то же
|
||
время это позволит в первую очередь загрузить начало файла.
|
||
Это будет полезно при просмотре фильма, в то время как он
|
||
загружается.
|
||
По умолчанию: ``default``
|
||
|
||
.. option:: -t, --timeout=<SEC>
|
||
|
||
Задать время ожидания в секундах.
|
||
По умолчанию: ``60``
|
||
|
||
.. option:: --uri-selector=<SELECTOR>
|
||
|
||
Указать алгоритм выбора URI. Возможные значения: ``inorder``, ``feedback``
|
||
и ``adaptive``. Если задано ``inorder``, то URI проверяются в порядке
|
||
представления в списке URI. Если задано ``feedback``, aria2 использует
|
||
скорость загрузки, которая наблюдалась в предыдущих загрузках, и выбирает
|
||
самый быстрый сервер в списке URI. Это также эффективно исключает мертвые
|
||
зеркала. Наблюдаемая скорость загрузки является частью профиля
|
||
функционирования сервера, упомянутой в параметрах
|
||
:option:`--server-stat-of` и
|
||
:option:`--server-stat-if`. Если задано ``adaptive``,
|
||
выбирается одно из лучших зеркал для первого и резервного соединений.
|
||
Дополнительно, возвращаются зеркала, которые пока не были проверены, и,
|
||
если каждое из них уже проверено, возвращаются зеркала, которые должны
|
||
быть проверены снова. Иначе зеркала больше не выбираются.
|
||
Подобно ``feedback``, используются профиль функционирования сервера.
|
||
По умолчанию: ``feedback``
|
||
|
||
Специфические параметры HTTP
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
.. option:: --ca-certificate=<FILE>
|
||
|
||
Использовать сертификат авторизации в FILE для проверки узлов.
|
||
Сертификат должен быть в PEM-формате и содержать многоразовые
|
||
CA-сертификаты. Используйте параметр
|
||
:option:`--check-certificate`, чтобы разрешить проверку.
|
||
|
||
.. note::
|
||
|
||
Если вы при сборке используете OpenSSL или последнею версию GnuTLS,
|
||
в которой есть функция ``gnutls_certificate_set_x509_system_trust()``,
|
||
и библиотека правильно настроена, чтобы найти хранилище общесистемных
|
||
CA-сертификатов, то aria2 автоматически загрузит эти сертификаты
|
||
при старте.
|
||
|
||
.. option:: --certificate=<FILE>
|
||
|
||
Использовать клиентский сертификат в FILE. Сертификат
|
||
должен быть в PEM-формате. Вы можете использовать
|
||
параметр :option:`--private-key`,
|
||
чтобы указать закрытый ключ.
|
||
|
||
.. option:: --check-certificate[=true|false]
|
||
|
||
Проверять каждый из используемых сертификатов, которые
|
||
указаны в параметре :option:`--ca-certificate`.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --http-accept-gzip[=true|false]
|
||
|
||
Посылать ``Accept: deflate, gzip`` в запросе-заголовке и добавлять в ответ,
|
||
если удаленный сервер ответит ``Content-Encoding: gzip`` или
|
||
``Content-Encoding: deflate``.
|
||
По умолчанию: 'false
|
||
|
||
.. note::
|
||
|
||
Некоторые серверы отвечают ``Content-Encoding: gzip`` для файлов, которые сами
|
||
по себе сжаты (gzipped). aria2 добавляет их, так или иначе, из-за заголовка
|
||
ответа.
|
||
|
||
.. option:: --http-auth-challenge[=true|false]
|
||
|
||
Отправлять заголовок HTTP-авторизации только тогда, когда он запрошен
|
||
с сервера. Если задано ``false``, тогда заголовок авторизации всегда
|
||
отправляется на сервер. Существует исключение: если имя пользователя
|
||
и пароль являются встроенными в URI, то заголовок авторизации всегда
|
||
отправляется на сервер, независимо от этого параметра.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --http-no-cache[=true|false]
|
||
|
||
Отправлять заголовок ``Cache-Control: no-cache`` и ``Pragma: no-cache``,
|
||
чтобы избежать кэширования содержимого. Если задано ``false``, то эти
|
||
заголовки не посылаются, и вы можете добавить любую директиву к
|
||
заголовку Cache-Control с помощью параметра :option:`--header`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --http-user=<USER>
|
||
|
||
Задать пользователя для HTTP. Влияет на все URI.
|
||
|
||
.. option:: --http-passwd=<PASSWD>
|
||
|
||
Задать пароль для HTTP. Влияет на все URI.
|
||
|
||
.. option:: --http-proxy=<PROXY>
|
||
|
||
Использовать указанный прокси-сервер для HTTP. Ранее указанный адрес
|
||
можно стереть, указав "". Смотрите также параметр
|
||
:option:`--all-proxy`. Влияет на все URI.
|
||
Формат PROXY - ``[http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``.
|
||
|
||
.. option:: --http-proxy-passwd=<PASSWD>
|
||
|
||
Задать пароль для параметра :option:`--http-proxy`.
|
||
|
||
.. option:: --http-proxy-user=<USER>
|
||
|
||
Задать пользователя для параметра :option:`--http-proxy`.
|
||
|
||
.. option:: --https-proxy=<PROXY>
|
||
|
||
Использовать указанный прокси-сервер для HTTPS. Ранее указанный
|
||
адрес можно стереть, указав "". Смотрите также параметр
|
||
:option:`--all-proxy`. Влияет на все URI.
|
||
Формат PROXY - ``[http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``.
|
||
|
||
.. option:: --https-proxy-passwd=<PASSWD>
|
||
|
||
Задать пароль для параметра :option:`--https-proxy`.
|
||
|
||
.. option:: --https-proxy-user=<USER>
|
||
|
||
Задать пользователя для параметра :option:`--https-proxy`.
|
||
|
||
.. option:: --private-key=<FILE>
|
||
|
||
Использовать закрытый ключ в FILE. Закрытый ключ должен
|
||
быть дешифрованным и в PEM-формате. Режим работы, с исходно
|
||
зашифрованным закрытым ключом, не определён. Смотрите также
|
||
параметр :option:`--certificate`.
|
||
|
||
.. option:: --referer=<REFERER>
|
||
|
||
Задать источник запроса. Влияет на все URI. Если задано ``*``, то каждый
|
||
URI запроса будет использован как источник запроса. Это может быть полезно
|
||
при использовании с параметром :option:`--parameterized-uri <-P>`.
|
||
|
||
.. option:: --enable-http-keep-alive[=true|false]
|
||
|
||
Включить HTTP/1.1 постоянное соединение.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --enable-http-pipelining[=true|false]
|
||
|
||
Включить конвейерную обработку HTTP/1.1.
|
||
По умолчанию: ``false``
|
||
|
||
.. note::
|
||
|
||
С точки зрения производительности, как правило, нет преимущества от
|
||
включения этого параметра.
|
||
|
||
.. option:: --header=<HEADER>
|
||
|
||
Добавлять HEADER к HTTP запросу-заголовку. Вы можете использовать
|
||
этот параметр повторно, чтоб указать более одного заголовка:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --header="X-A: b78" --header="X-B: 9J1" "http://host/file"
|
||
|
||
.. option:: --load-cookies=<FILE>
|
||
|
||
Загружать куки-файл из FILE, используя форматы Firefox3 (SQLite3),
|
||
Chromium/Google Chrome (SQLite3) и Mozilla/Firefox(1.x/2.x)/Netscape.
|
||
|
||
.. note::
|
||
|
||
Если aria2 собрана без libsqlite3, то форматы куки-файлов Firefox3 и
|
||
Chromium/Google Chrome не поддерживаются.
|
||
|
||
.. option:: --save-cookies=<FILE>
|
||
|
||
Сохранить куки в FILE формате Mozilla/Firefox(1.x/2.x)/Netscape.
|
||
Если FILE уже существует, то он будет перезаписан. Куки-сессия также
|
||
сохранится, и значение ее окончания будет трактоваться как 0.
|
||
Возможные значения: ``/путь/к/файлу``
|
||
|
||
.. option:: --use-head[=true|false]
|
||
|
||
Использовать метод HEAD для первого запроса к HTTP серверу.
|
||
По умолчанию: ``false``
|
||
|
||
|
||
.. option:: -U, --user-agent=<USER_AGENT>
|
||
|
||
Задать клиентское приложение для HTTP(S)-загрузок.
|
||
По умолчанию: ``aria2/$VERSION``, $VERSION заменяется на версию пакета.
|
||
|
||
Специфические параметры FTP
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
.. option:: --ftp-user=<USER>
|
||
|
||
Задать пользователя для FTP.
|
||
Влияет на все URI.
|
||
По умолчанию: ``anonymous``
|
||
|
||
.. option:: --ftp-passwd=<PASSWD>
|
||
|
||
Задать пароль для FTP. Влияет на все URI. Если имя пользователя
|
||
встроено, но пароль отсутствует в URI, то aria2 пытается использовать
|
||
пароль из .netrc. Если пароль найден в .netrc, то он используется.
|
||
Если нет, используется пароль, указанный в этом параметре.
|
||
По умолчанию: ``ARIA2USER@``
|
||
|
||
.. option:: -p, --ftp-pasv[=true|false]
|
||
|
||
Использовать пассивный режим FTP. Если задано ``false``,
|
||
то будет использован активный режим.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --ftp-proxy=<PROXY>
|
||
|
||
Использовать указанный прокси-сервер для FTP. Ранее указанный адрес
|
||
можно стереть, указав "". Смотрите также параметр
|
||
:option:`--all-proxy`. Влияет на все URI.
|
||
Формат PROXY - ``[http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``
|
||
|
||
.. option:: --ftp-proxy-passwd=<PASSWD>
|
||
|
||
Задать пароль для параметра :option:`--ftp-proxy`.
|
||
|
||
.. option:: --ftp-proxy-user=<USER>
|
||
|
||
Задать пользователя для параметра :option:`--ftp-proxy`.
|
||
|
||
.. option:: --ftp-type=<TYPE>
|
||
|
||
Задать тип передачи для FTP. TYPE может быть один из
|
||
двух: ``binary`` или ``ascii``.
|
||
По умолчанию: ``binary``
|
||
|
||
.. option:: --ftp-reuse-connection[=true|false]
|
||
|
||
Повторно использовать FTP соединение.
|
||
По умолчанию: ``true``
|
||
|
||
Параметры BitTorrent/Metalink
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
.. option:: --select-file=<INDEX>...
|
||
|
||
Задать файл для загрузки по заданному индексу. Вы можете найти
|
||
индекс файла, используя параметр :option:`--show-files <-S>`.
|
||
Составной индекс можно указать, используя ``,``, например: ``3,6``.
|
||
Вы можете также использовать ``-``, чтобы указать диапазон: ``1-5``.
|
||
``,`` и ``-`` могут быть использованы вместе: ``1-5,8,9``.
|
||
Когда используется с параметром -M, индекс может сильно зависеть
|
||
от запроса (смотрите параметры *--metalink-\**).
|
||
|
||
.. note::
|
||
|
||
В многофайловом торренте, смежные файлы, указанные в этом параметре также
|
||
могут быть загружены. Это не ошибка, а особенность утилиты. Одиночный блок
|
||
данных может включать несколько файлов или часть файла, и aria2 запишет блок
|
||
данных соответствующего файла.
|
||
|
||
.. option:: -S, --show-files[=true|false]
|
||
|
||
Вывести список файлов из ".torrent", ".meta4" или ".metalink" и
|
||
завершить работу. Для файла .torrent будет выведена более детальная
|
||
информация (информация по хэшу, размер блока и др.).
|
||
|
||
Специфические параметры BitTorrent
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
.. option:: --bt-enable-lpd[=true|false]
|
||
|
||
Включить поиск локальных пиров. Если в torrent-файле установлен
|
||
приватный признак, то aria2 не будет использовать эту возможность,
|
||
даже если задано ``true``.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --bt-exclude-tracker=<URI>[,...]
|
||
|
||
Разделенный запятыми список URI анонса BitTorrent-трекера,
|
||
которые будут исключены. Вы можете использовать специальное
|
||
значение ``*``, которое соответствует всем URI, таким образом,
|
||
исключаются все URI анонса. При указании ``*`` в оболочке
|
||
командной строке, не забывайте, экранировать или брать в кавычки.
|
||
Смотрите также параметр :option:`--bt-tracker`.
|
||
|
||
.. option:: --bt-external-ip=<IPADDRESS>
|
||
|
||
Указать внешний IP-адрес BitTorrent-трекера для отчета.
|
||
Несмотря на то, что эта функция названа ``external`` (``внешний``),
|
||
она может принимать любой IP-адрес. IPADDRESS должен быть числовым
|
||
IP-адресом.
|
||
|
||
.. option:: --bt-hash-check-seed[=true|false]
|
||
|
||
Если задано ``true``, то после проверки хэша с использованием параметра
|
||
:option:`--check-integrity <-V>`, и когда файл
|
||
загружен полностью, продолжается раздача файла. Если вы хотите
|
||
проверить файл и загрузить его только если он поврежден или не загружен
|
||
полностью, то задайте этот параметр как ``false``. Этот параметр влияет
|
||
лишь на BitTorrent-загрузки.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --bt-lpd-interface=<INTERFACE>
|
||
|
||
Использовать для поиска локальных пиров заданный интерфейс. Если этот
|
||
параметр не указан, используется интерфейс по умолчанию. Можно указать
|
||
имя интерфейса и IP-адрес. Возможные значения: интерфейс, IP-адрес.
|
||
|
||
.. option:: --bt-max-open-files=<NUM>
|
||
|
||
Указать максимальное количество файлов для открытия в каждой
|
||
BitTorrent-загрузке.
|
||
По умолчанию: ``100``
|
||
|
||
.. option:: --bt-max-peers=<NUM>
|
||
|
||
Указать максимальное количество узлов для каждого торрента.
|
||
``0`` означает неограниченно. Смотрите также параметр
|
||
:option:`--bt-request-peer-speed-limit`.
|
||
По умолчанию: ``55``
|
||
|
||
.. option:: --bt-metadata-only[=true|false]
|
||
|
||
Загрузить только метаданные. Файл(ы), описывающий метаданные не
|
||
должен быть загружен. Этот параметр эффективен, только если
|
||
используется BitTorrent Magnet-ссылка. Смотрите также параметр
|
||
:option:`--bt-save-metadata`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --bt-min-crypto-level=plain|arc4
|
||
|
||
Задать минимальный уровень метода шифрования. Если узел поддерживает
|
||
несколько методов шифрования, aria2 выбирает наименьший, который
|
||
удовлетворяет заданный уровень.
|
||
По умолчанию: ``plain``
|
||
|
||
.. option:: --bt-prioritize-piece=head[=<SIZE>],tail[=<SIZE>]
|
||
|
||
Пытаться загрузить сначала первую и последнюю части каждого файла.
|
||
Это бывает полезно для предварительного просмотра файлов. Аргумент
|
||
может содержать 2 ключевых слова: ``head`` и ``tail``. Для включения
|
||
обоих, необходимо разделить их запятой. Ключевые слова принимают
|
||
один параметр, SIZE. Например, если указано ``head=<SIZE>``, части, в
|
||
пределах первых SIZE байт каждого файла, получат повышенный
|
||
приоритет. ``tail=<SIZE>`` обозначает диапазон из последних SIZE байт
|
||
каждого файла. SIZE может включать букву ``K`` или ``M`` для обозначения
|
||
размера в килобайтах или мегабайтах, соответственно
|
||
(1K = 1024, 1M = 1024K). Если SIZE пропущено, то будет использовано
|
||
по умолчанию значение: SIZE=1M.
|
||
|
||
.. option:: --bt-remove-unselected-file[=true|false]
|
||
|
||
Удалить невыбранные файлы, когда завершена загрузка в
|
||
BitTorrent. Чтобы выбрать файлы, используйте параметр
|
||
:option:`--select-file`. Если не
|
||
использовался этот параметр, то предполагается, что все файлы
|
||
выбраны. Пожалуйста, используйте этот параметр внимательно,
|
||
так как это фактически удалит файлы с вашего диска.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --bt-require-crypto[=true|false]
|
||
|
||
Если задано ``true``, aria2 не принимает и не устанавливает соединение с
|
||
унаследованным BitTorrent handshake-сообщением (рукопожатие)
|
||
(BitTorrent протокол). Таким образом, aria2 всегда использует обфускацию
|
||
handshake-сообщения.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --bt-request-peer-speed-limit=<SPEED>
|
||
|
||
Если итоговая скорость загрузки каждого торрента, ниже чем SPEED,
|
||
aria2 временно увеличивает количество узлов, пытаясь увеличить
|
||
скорость загрузки. Настройка этого параметра с выбранной вами
|
||
скоростью загрузки может, в некоторых случаях, увеличить вашу
|
||
скорость загрузки. Вы можете добавить ``K`` или ``M`` (1K = 1024, 1M = 1024K).
|
||
По умолчанию: ``50K``
|
||
|
||
.. option:: --bt-save-metadata[=true|false]
|
||
|
||
Сохранить метаданные как файл ".torrent". Этот параметр
|
||
эффективен только если используется BitTorrent Magnet-ссылка.
|
||
Имя файла шестнадцатеричное представление хэша с расширением
|
||
".torrent". Файл сохранится в каталог, в тот же самый, куда
|
||
сохранится загружаемый файл. Если тот же самый файл уже
|
||
существует, метаданные не сохранятся. Смотрите также параметр
|
||
:option:`--bt-metadata-only`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --bt-seed-unverified[=true|false]
|
||
|
||
Раздавать первоначально загруженные файлы без проверки хэшей блоков.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --bt-stop-timeout=<SEC>
|
||
|
||
Остановить BitTorrent загрузку, если скорость загрузки равна 0 на
|
||
протяжении SEC секунд. Если задано ``0``, то эта возможность не будет
|
||
использоваться.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --bt-tracker=<URI>[,...]
|
||
|
||
Разделенный запятыми список дополнительных URI анонса
|
||
BitTorrent-трекеров. На эти URI не действует параметр
|
||
:option:`--bt-exclude-tracker`,
|
||
потому что они добавляются после URI, указанных в параметре
|
||
:option:`--bt-exclude-tracker`,
|
||
которые исключаются.
|
||
|
||
.. option:: --bt-tracker-connect-timeout=<SEC>
|
||
|
||
Задать время ожидания в секундах для установки соединения с трекером.
|
||
После установки соединения, это параметр станет недействительным,
|
||
а вместо него будет использован
|
||
:option:`--bt-tracker-timeout`.
|
||
По умолчанию: ``60``
|
||
|
||
.. option:: --bt-tracker-interval=<SEC>
|
||
|
||
Задать интервал в секундах между запросами трекера. Это полностью
|
||
отменяет значение интервала и aria2 использует только это значение
|
||
и игнорирует минимальный интервал и значение интервала в ответе
|
||
трекера. Если задан ``0``, aria2 определяет интервал, основываясь на
|
||
ответе трекера и прогрессе загрузки.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --bt-tracker-timeout=<SEC>
|
||
|
||
Задать время ожидания в секундах.
|
||
По умолчанию: ``60``
|
||
|
||
.. option:: --dht-entry-point=<HOST>:<PORT>
|
||
|
||
Задать хост и порт, как точку входа в IPv4 DHT сеть.
|
||
|
||
.. option:: --dht-entry-point6=<HOST>:<PORT>
|
||
|
||
Задать хост и порт, как точку входа в IPv6 DHT сеть.
|
||
|
||
.. option:: --dht-file-path=<PATH>
|
||
|
||
Заменять файл таблицы маршрутизации IPv4 DHT на PATH.
|
||
По умолчанию: ``$HOME/.aria2/dht.dat``
|
||
|
||
.. option:: --dht-file-path6=<PATH>
|
||
|
||
Заменять файл таблицы маршрутизации IPv6 DHT на PATH.
|
||
По умолчанию: ``$HOME/.aria2/dht.dat``
|
||
|
||
.. option:: --dht-listen-addr6=<ADDR>
|
||
|
||
Указать адрес привязки сокета для IPv6 DHT. Он должен быть глобальным
|
||
IPv6 unicast-адресом хоста.
|
||
|
||
.. option:: --dht-listen-port=<PORT>...
|
||
|
||
Задать прослушиваемый UDP-порт используя DHT (IPv4, IPv6) и
|
||
UDP-трекер. Несколько портов можно указать через ``,``,
|
||
например: ``6881,6885``. Вы также можете использовать ``-``
|
||
чтобы указать диапазон: ``6881-6999``. ``,`` и ``-`` могут
|
||
быть использованы вместе.
|
||
По умолчанию: ``6881-6999``
|
||
|
||
.. note::
|
||
|
||
Удостоверьтесь, что указанные порты открыты для входящего UDP-трафика.
|
||
|
||
.. option:: --dht-message-timeout=<SEC>
|
||
|
||
Задать время ожидания в секундах.
|
||
По умолчанию: ``10``
|
||
|
||
.. option:: --enable-dht[=true|false]
|
||
|
||
Включить функцию IPv4 DHT. Это также включает поддержку
|
||
UDP-трекера. Если в torrent-файле задан приватный признак,
|
||
aria2 не будет использовать DHT для загрузки, даже если
|
||
установлен ``true``.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --enable-dht6[=true|false]
|
||
|
||
Включить IPv6 DHT функциональность. Если в torrent-файле задан
|
||
приватный признак, aria2 не будет использовать DHT для загрузки,
|
||
даже если установлен ``true``. Используйте параметр
|
||
:option:`--dht-listen-port` для указания
|
||
прослушиваемого порта. Смотрите также параметр
|
||
:option:`--dht-listen-addr6`.
|
||
|
||
.. option:: --enable-peer-exchange[=true|false]
|
||
|
||
Включить расширение BitTorrent-протокола для обмена списками участников.
|
||
Если в torrent-файле задан приватный признак, то эта возможность будет
|
||
отключена, даже если установлен ``true``.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --follow-torrent=true|false|mem
|
||
|
||
Если указать ``true`` или ``mem``, тогда загруженный файл, расширение
|
||
которого - ``.torrent`` или mime-тип - ``application/x-bittorrent``,
|
||
aria2 анализирует как torrent-файл и загружает файлы, указанные в нем.
|
||
Если указано ``mem``, тогда torrent-файл не записывается на диск,
|
||
а содержится в памяти. Если указано ``false``, действия, упомянутые
|
||
выше, не совершаются.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: -O, --index-out=<INDEX>=<PATH>
|
||
|
||
Задать путь к файлу PATH с индексом INDEX. Вы можете найти индекс файла,
|
||
используя параметр :option:`--show-files <-S>`. PATH
|
||
является относительным путем к тому, который указан в параметре
|
||
:option:`--dir <-d>`. Вы можете использовать этот параметр
|
||
много раз. Используйте этот параметр, когда хотите указать имена
|
||
выходных файлов для BitTorrent-загрузок.
|
||
|
||
.. option:: --listen-port=<PORT>...
|
||
|
||
Задать номер TCP-порта для BitTorrent-загрузок. Несколько портов можно
|
||
указать, используя ``,``, например: ``6881,6885``. Вы также можете
|
||
использовать ``-``, чтобы указать диапазон: ``6881-6999``. ``,`` и ``-``
|
||
могут быть использованы вместе: ``6881-6889,6999``.
|
||
По умолчанию: ``6881-6999``
|
||
|
||
.. note::
|
||
|
||
Удостоверьтесь, что указанные порты открыты для входящего TCP-трафика.
|
||
|
||
.. option:: --max-overall-upload-limit=<SPEED>
|
||
|
||
Задать максимальную общую скорость отдачи в байтах/сек.
|
||
``0`` значит неограниченно. Вы можете добавить
|
||
``K`` или ``M`` (1K = 1024, 1M = 1024K). Чтобы ограничить скорость
|
||
отдачи для узла торрента, используйте параметр
|
||
:option:`--max-upload-limit <-u>`.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: -u, --max-upload-limit=<SPEED>
|
||
|
||
Задать максимальную скорость отдачи каждого узла торрента в байтах/сек.
|
||
``0`` значит неограниченно. Вы можете добавить
|
||
``K`` или ``M`` (1K = 1024, 1M = 1024K). Чтобы ограничить
|
||
общую скорость отдачи, используйте параметр
|
||
:option:`--max-overall-upload-limit`.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --peer-id-prefix=<PEER_ID_PREFIX>
|
||
|
||
Указать префикс для ID узла. ID узла в BitTorrent
|
||
имеет размер 20 байт. Если будет указано более 20 байт,
|
||
то только первые 20 будут использоваться, если будет
|
||
указано меньше 20, то они будут дополнены случайными
|
||
данными до 20 байт.
|
||
По умолчанию: ``aria2/$VERSION``, $VERSION заменяется на версию пакета.
|
||
|
||
.. option:: --seed-ratio=<RATIO>
|
||
|
||
Указать рейтинг. Сидировать завершенные торренты, пока рейтинг
|
||
не станет больше RATIO. Очень рекомендуется указать тут равный
|
||
или больший ``1.0``. Указать ``0.0``, если вы планируете сидировать
|
||
независимо от рейтинга. Если указан параметр
|
||
:option:`--seed-time` вместе с этим
|
||
параметром, сидирование закончится тогда, когда хотя бы одно
|
||
условие будет удовлетворено.
|
||
По умолчанию: ``1.0``
|
||
|
||
.. option:: --seed-time=<MINUTES>
|
||
|
||
Указать время сидирования (раздачи) в минутах.
|
||
Смотрите также параметр :option:`--seed-ratio`.
|
||
|
||
.. note::
|
||
|
||
Указанный :option:`--seed-time=0 <--seed-time>` отключает
|
||
сидирование после завершения загрузки.
|
||
|
||
.. option:: -T, --torrent-file=<TORRENT_FILE>
|
||
|
||
Путь к файлу ".torrent". Вы не обязаны использовать этот параметр, т.к.
|
||
файл ".torrent" можно указать без :option:`--torrent-file <-T>`.
|
||
|
||
Специфические параметры Metalink
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
.. option:: --follow-metalink=true|false|mem
|
||
|
||
Если указано ``true`` или ``mem`` и когда загруженный файл имеет расширение
|
||
``.meta4`` или ``.metalink``, или mime-тип ``application/metalink4+xml``
|
||
или ``application/metalink+xml``, aria2 считает его metalink-файлом и
|
||
загружает упомянутые в нем файлы. Если указано ``mem``, то metalink-файл
|
||
не сохраняется на диск, а просто хранится в памяти. Если указано ``false``,
|
||
то вышеприведенная операция не производится.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --metalink-base-uri=<URI>
|
||
|
||
Указать основной URI для разрешения относительных URI в элементе
|
||
metalink:url и metalink:metaurl в metalink-файле, сохраненном на
|
||
локальном диске. Если URI указывает на каталог, то URI должен
|
||
заканчиваться на ``/``.
|
||
|
||
.. option:: -M, --metalink-file=<METALINK_FILE>
|
||
|
||
Путь к файлу ".meta4" и ".metalink". Читает ввод из stdin, если в качестве
|
||
имени файла указано ``-``. Вы не обязаны использовать этот параметр,
|
||
т.к. файлы .metalink можно указать без :option:`--metalink-file <-M>`.
|
||
|
||
.. option:: --metalink-language=<LANGUAGE>
|
||
|
||
Язык файла для загрузки.
|
||
|
||
.. option:: --metalink-location=<LOCATION>[,...]
|
||
|
||
Местонахождение предпочитаемого сервера. Список, разделенный запятыми,
|
||
допустимых местонахождений, например, ``jp,us``.
|
||
|
||
.. option:: --metalink-os=<OS>
|
||
|
||
Целевая операционная система файла для загрузки.
|
||
|
||
.. option:: --metalink-version=<VERSION>
|
||
|
||
Версия файла для загрузки.
|
||
|
||
.. option:: --metalink-preferred-protocol=<PROTO>
|
||
|
||
Указать предпочитаемый протокол. Возможные значения: ``http``, ``https``, ``ftp``
|
||
и ``none``. Указать ``none`` для отключения этой возможности.
|
||
По умолчанию: ``none``
|
||
|
||
.. option:: --metalink-enable-unique-protocol[=true|false]
|
||
|
||
Если задано ``true``, а в metalink-файле доступно несколько
|
||
протоколов, то aria2 использует один из них. Используйте параметр
|
||
:option:`--metalink-preferred-protocol`,
|
||
чтобы указать предпочитаемый протокол.
|
||
По умолчанию: ``true``
|
||
|
||
Параметры RPC
|
||
~~~~~~~~~~~~~
|
||
|
||
.. option:: --enable-rpc[=true|false]
|
||
|
||
Включить JSON-RPC/XML-RPC-сервер. Настоятельно рекомендуется указать
|
||
имя пользователя и пароль, используя параметры
|
||
:option:`--rpc-user` и :option:`--rpc-passwd`.
|
||
Смотрите также параметр :option:`--rpc-listen-port`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --pause[=true|false]
|
||
|
||
Приостановка загрузки после добавления. Этот параметр действенен
|
||
только, когда задан :option:`--enable-rpc=true. <--enable-rpc>`
|
||
По умолчанию: ``false``
|
||
|
||
|
||
.. option:: --rpc-allow-origin-all[=true|false]
|
||
|
||
Добавить заголовок Access-Control-Allow-Origin со значением ``*`` в RPC-ответе.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --rpc-certificate=<FILE>
|
||
|
||
Использовать сертификат в FILE для RPC-сервера. Сертификат должен быть
|
||
в PEM-формате. Используйте параметр :option:`--rpc-private-key`,
|
||
чтобы указать закрытый ключ. Используйте параметр :option:`--rpc-secure`
|
||
для включения шифрования.
|
||
|
||
.. option:: --rpc-listen-all[=true|false]
|
||
|
||
Слушать входящие JSON-RPC/XML-RPC-запросы на всех сетевых интерфейсах.
|
||
Если указано ``false``, слушать только на локальном петлевом
|
||
интерфейсе (loopback).
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --rpc-listen-port=<PORT>
|
||
|
||
Указать номер порта, для прослушивания JSON-RPC/XML-RPC-сервером.
|
||
Возможные значения: ``1024`` -``65535``.
|
||
По умолчанию: ``6800``
|
||
|
||
.. option:: --rpc-max-request-size=<SIZE>
|
||
|
||
Задать максимальный размер JSON-RPC/XML-RPC-запроса.
|
||
Если aria2 выявит запрос с размером большим, чем SIZE байт,
|
||
тогда соединение будет отклонено.
|
||
По умолчанию: ``2M``
|
||
|
||
.. option:: --rpc-passwd=<PASSWD>
|
||
|
||
Задать JSON-RPC/XML-RPC пароль.
|
||
|
||
.. option:: --rpc-private-key=<FILE>
|
||
|
||
Использовать закрытый ключ в FILE для RPC-сервера. Закрытый ключ должен
|
||
быть дешифрованным и в PEM-формате. Используйте параметр
|
||
:option:`--rpc-secure` для включения шифрования.
|
||
Смотрите также параметр :option:`--rpc-certificate`.
|
||
|
||
.. option:: --rpc-save-upload-metadata[=true|false]
|
||
|
||
Сохранить загруженные метаданные torrent или metalink в каталоге,
|
||
заданном параметром :option:`--dir`. Имя файла содержит
|
||
шестнадцатеричную строку SHA-1-хэша метаданных плюс расширение.
|
||
Для torrent расширение '.torrent'. Для metalink - это '.meta4'.
|
||
Если параметр задан как false, то загрузки, добавленные с помощью
|
||
:func:`aria2.addTorrent` или :func:`aria2.addMetalink`, не будут
|
||
сохраняться при помощи параметра :option:`--save-session`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --rpc-secure[=true|false]
|
||
|
||
RPC-транспорт будет зашифрован с использованием SSL/TLS. RPC-клиенты должны
|
||
использовать https-схему для доступа к серверу. Для WebSocket-клиента,
|
||
использовать wss-схему. Используйте параметры :option:`--rpc-certificate` и
|
||
:option:`--rpc-private-key` для указания сертификата севера и закрытого
|
||
ключа.
|
||
|
||
.. option:: --rpc-user=<USER>
|
||
|
||
Задать JSON-RPC/XML-RPC пользователя.
|
||
|
||
Дополнительные параметры
|
||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||
.. option:: --allow-overwrite[=true|false]
|
||
|
||
Повторно запустить загрузку с нуля, если соответствующий контрольный
|
||
файл отсутствует. Смотрите также параметр
|
||
:option:`--auto-file-renaming`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --allow-piece-length-change[=true|false]
|
||
|
||
Если задано ``false``, aria2 прерывает загрузку, когда длина блока
|
||
отлична от той, которая находится в контрольном файле. Если задано
|
||
``true``, вы можете продолжать, однако некоторый прогресс загрузки
|
||
будет потерян.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --always-resume[=true|false]
|
||
|
||
Всегда возобновлять загрузку. Если задано ``true``, aria2 всегда пытается
|
||
возобновить загрузку и если это не возможно, прерывает ее.
|
||
Если задано ``false``, тогда для всех заданных URI не поддерживается
|
||
возобновление загрузки, или aria2 столкнется с невозможностью
|
||
возобновления загрузки URI ``N``-ое количество раз
|
||
(значение ``N`` указывается в параметре :option:`--max-resume-failure-tries`,
|
||
то aria2 будет загружать файл с нуля. Смотрите параметр
|
||
:option:`--max-resume-failure-tries`.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --async-dns[=true|false]
|
||
|
||
Включить асинхронный DNS.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --async-dns-server=<IPADDRESS>[,...]
|
||
|
||
Разделенный запятыми список адресов DNS-серверов, которые используют
|
||
асинхронный DNS-преобразователь. Обычно асинхронный DNS-преобразователь
|
||
читает адреса DNS-серверов из ``/etc/resolv.conf``. Когда используется
|
||
этот параметр, то используются DNS-серверы, указанные в параметре вместо
|
||
указанных в ``/etc/resolv.conf``. Вы можете указать оба IPv4 и IPv6 адреса.
|
||
Этот параметр полезен, когда в системе нет ``/etc/resolv.conf`` и у
|
||
пользователя нет прав на его создание.
|
||
|
||
.. option:: --auto-file-renaming[=true|false]
|
||
|
||
Переименовать файл, если такой уже существует.
|
||
Этот параметр работает только для HTTP(S)/FTP-загрузок.
|
||
К имени файла будет добавлена точка и число от 1 до 9999.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --auto-save-interval=<SEC>
|
||
|
||
Сохранять контрольный файл (\*.aria2) каждые SEC секунд.
|
||
Если задано ``0``, тогда контрольный файл не сохраняется на
|
||
протяжении загрузки. aria2 сохраняет контрольный файл тогда,
|
||
когда останавливается, не смотря на значение.
|
||
Возможные значения: от ``0`` до ``600``.
|
||
По умолчанию: ``60``
|
||
|
||
.. option:: --conditional-get[=true|false]
|
||
|
||
Загружать файл только когда локальный файл старше, чем удаленный.
|
||
Эта функция работает только для HTTP(S)-загрузок. Это не работает,
|
||
если размер файла указан в Metalink. Это также игнорирует заголовок
|
||
Content-Disposition. Если контрольный файл существует, то этот
|
||
параметр игнорируется. Эта функция использует заголовок
|
||
If-Modified-Since, как условие для получения только нового файла.
|
||
При получении времени модификации локального файла, используется
|
||
указанное пользователем имя файла
|
||
(см. параметр :option:`--out <-o>`) или часть имени файла в
|
||
URI, если :option:`--out <-o>` не указан. Для перезаписи
|
||
существующего файла необходим параметр
|
||
:option:`--allow-overwrite`.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --conf-path=<PATH>
|
||
|
||
Сменить путь к файлу конфигурации на PATH.
|
||
По умолчанию: ``$HOME/.aria2/aria2.conf``
|
||
|
||
.. option:: --console-log-level=<LEVEL>
|
||
|
||
Задать уровень вывода событий на консоль. LEVEL может
|
||
быть: ``debug``, ``info``, ``notice``, ``warn`` или ``error``.
|
||
По умолчанию: ``notice``
|
||
|
||
.. option:: -D, --daemon[=true|false]
|
||
|
||
Запустить как демон (фоновый процесс). Текущий рабочий каталог
|
||
будет заменен на ``/``, а стандартный ввод, стандартный вывод,
|
||
стандартный вывод ошибок будут перенаправлены на ``/dev/null``.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --deferred-input[=true|false]
|
||
|
||
Если задано ``true``, aria2 при запуске не считывает все URI и параметры
|
||
из файла, указанного в параметре :option:`--input-file <-i>`, а
|
||
считывает их позже отдельно, когда это нужно. Это может сократить
|
||
использование памяти, если во входном файле содержится много URI для
|
||
загрузки. Если задано ``false``, aria2 при запуске считывает все URI
|
||
и параметры.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --disable-ipv6[=true|false]
|
||
|
||
Отключить IPv6. Это полезно, если вы используете поврежденный DNS
|
||
и хотите избежать ужасно медленного поиска AAAA-записи.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --disk-cache=<SIZE>
|
||
|
||
Включить дисковый кэш. Если SIZE задать как ``0``, то дисковый кэш
|
||
будет отключён. Эта функция кэширует загруженных данных в памяти,
|
||
которая растет до не более чем SIZE байт. Кэш-память создаётся для
|
||
экземпляра aria2 и совместно используется всеми загрузками. Одним из
|
||
преимуществ дискового кэша - это уменьшение дискового ввода/вывода,
|
||
т.к. данные записываются большими блоками, и они распределяются через
|
||
смещение в файле. Если задействована хэш-проверка и данные кэшируются
|
||
в памяти, то мы не должны читать их с диска. SIZE может включать букву
|
||
``K`` или ``M`` (1K = 1024, 1M = 1024K). По умолчанию: ``0``
|
||
|
||
.. option:: --download-result=<OPT>
|
||
|
||
Этот параметр изменяет формат сообщения ``Результаты загрузки``. Если OPT
|
||
задан как ``default``, то отображается GID, статус, средняя скорость загрузки и
|
||
путь/URI. Если загружается множество файлов, то отобразиться путь/URI первого
|
||
запрашиваемого файла, а остальные пропускаются. Если OPT задан как ``full``,
|
||
то отображается GID, статус, средняя скорость загрузки, процент прогресса и
|
||
путь/URI. Процент прогресса и путь/URI отобразиться для каждого
|
||
запрашиваемого файла в отдельной строке.
|
||
По умолчанию: ``default``
|
||
|
||
.. option:: --enable-mmap[=true|false]
|
||
|
||
Отображение файлов в память. Этот параметр может не работать,
|
||
если место под файл предварительно не выделено.
|
||
Смотрите :option:`--file-allocation`.
|
||
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --event-poll=<POLL>
|
||
|
||
Указать метод опроса событий. Возможные значения: ``epoll``, ``kqueue``,
|
||
``port``, ``poll`` и ``select``. Каждый метод ``epoll``, ``kqueue``, ``port`` и
|
||
``poll`` доступен, если система поддерживает его. ``epoll`` доступен в
|
||
современных дистрибутивах Linux. ``kqueue`` доступен в различных
|
||
\*BSD-системах, включая Mac OS X. ``port`` доступен в Open Solaris.
|
||
Значение по умолчанию может изменяться в зависимости от системы,
|
||
которую вы используете.
|
||
|
||
.. option:: --file-allocation=<METHOD>
|
||
|
||
Указать метод резервирования места для файла. ``none`` не происходит
|
||
предварительное резервирование места для файла. ``prealloc`` - предварительное
|
||
резервирование места для файла перед началом загрузки. Это может
|
||
продолжаться некоторое время, в зависимости от размера файла. Если вы
|
||
используете новые файловые системы, наподобие ext4 (с поддержкой экстентов),
|
||
btrfs, xfs или NTFS (только MinGW-сборка) тогда лучше выбрать ``falloc``.
|
||
Так как они резервируют место под большие (на несколько Гигабайт) файлы
|
||
почти мгновенно. Не используйте ``falloc`` вместе с наследными файловыми
|
||
системами, такими как ext3 и FAT32, потому что это будет продолжаться
|
||
почти столько же времени, как и ``prealloc``, а также полностью заблокирует
|
||
aria2, пока не закончится резервирование места. ``falloc`` может быть
|
||
недоступным, если ваша система не содержит функцию :manpage:`posix_fallocate(3)`.
|
||
``trunc`` использует системный вызов :manpage:`ftruncate(2)` или
|
||
специфичный для конкретной платформы эквивалент, чтобы усечь файл до указанной
|
||
длины.
|
||
|
||
Возможные значения: ``none``, ``prealloc``, ``trunc``, ``falloc``
|
||
По умолчанию: ``prealloc``
|
||
|
||
|
||
.. option:: --force-save[=true|false]
|
||
|
||
Сохранить загрузку с параметром :option:`--save-session <--save-session>`,
|
||
даже если загрузка будет завершена или удалена. Это может быть полезно,
|
||
чтобы сохранить BitTorrent-сидирование, у которого будет распознано
|
||
состояние как завершенное.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --gid=<GID>
|
||
|
||
Задать GID вручную. aria2 идентифицирует каждую загрузку по ID,
|
||
называемому GID. GID должен быть шестнадцатеричной строкой из 16
|
||
символов, таким образом разрешены [0-9a-zA-Z], а начальные нули
|
||
не должны быть пропущены. GID равный 0 зарезервирован и не должен
|
||
быть использован. GID должен быть уникальным, иначе отобразится
|
||
сообщение об ошибке и загрузка не добавится. Этот параметр полезен
|
||
при восстановлении сохранённой сессии, используя параметр
|
||
:option:`--save-session <--save-session>`. Если этот параметр не
|
||
использован, то новый GID будет сгенерирован aria2.
|
||
|
||
.. option:: --hash-check-only[=true|false]
|
||
|
||
Если задано ``true``, то после проверки хэша, используя параметр
|
||
:option:`--check-integrity <-V>`, загрузка прервётся, в любом
|
||
случае загрузка завершится.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --human-readable[=true|false]
|
||
|
||
Выводить на консоль размеры и скорость в удобочитаемом формате
|
||
(например, 1.2Ки, 3.4Ми).
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --interface=<INTERFACE>
|
||
|
||
Привязать сокеты к заданному интерфейсу. Вы можете указать имя
|
||
интерфейса, IP-адрес и имя хоста. Возможные значения: имя
|
||
интерфейса (например, eth0), IP-адрес (например, 192.168.0.12),
|
||
имя хоста (например, myhost).
|
||
|
||
.. note::
|
||
|
||
Если интерфейс имеет несколько адресов, то настоятельно рекомендуется
|
||
указать IP-адрес явно. Смотрите также
|
||
:option:`--disable-ipv6`. Если ваша система не имеет :manpage:`getifaddrs(3)`, это
|
||
параметр не принимает имя интерфейса.
|
||
|
||
.. option:: --max-download-result=<NUM>
|
||
|
||
Задать максимальное количество результатов загрузок, которые находятся
|
||
в памяти. Результаты загрузок - завершенные/ошибка/удаленные загрузки.
|
||
Результаты загрузок хранятся FIFO очереди, в которой может хранится NUM
|
||
результатов загрузок. Когда очередь заполнена и появляется новый
|
||
результат загрузки, то старейший результат загрузки удаляется из начала
|
||
очереди, а новый добавляется в конец. Указание большого числа в этом
|
||
параметре может привести к высокому потреблению памяти после тысяч
|
||
загрузок. Значение 0 отключит сохранение результата загрузки.
|
||
По умолчанию: ``1000``
|
||
|
||
.. option:: --max-resume-failure-tries=<N>
|
||
|
||
Если параметр :option:`--always-resume=false, <--always-resume>` aria2
|
||
загрузит файл с нуля, при обнаружении ``N`` -го URI, не поддерживающего
|
||
возобновление. Если ``N`` =``0``, то aria2 загрузит файл с нуля, когда все
|
||
URI не поддерживают возобновление. Смотрите параметр
|
||
:option:`--always-resume`.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --log-level=<LEVEL>
|
||
|
||
Задать уровень вывода журнала событий. LEVEL может
|
||
быть: ``debug``, ``info``, ``notice``, ``warn`` или ``error``.
|
||
По умолчанию: ``debug``
|
||
|
||
.. option:: --on-bt-download-complete=<COMMAND>
|
||
|
||
Для BitTorrent, в :option:`--on-download-complete`
|
||
указывается команда, которая вызывается после завершение загрузки и окончания
|
||
сидирования. С другой стороны, этот параметр определяет команду, которая
|
||
будет выполнена после завершения загрузки, но до сидирования.
|
||
Смотрите раздел `Перехват сообщения`_ для более подробной
|
||
информации о COMMAND. Возможные значения: ``/путь/к/команде``
|
||
|
||
.. option:: --on-download-complete=<COMMAND>
|
||
|
||
Задать команду, которая будет выполнена после завершения загрузки.
|
||
Смотрите раздел `Перехват сообщения`_ для более
|
||
подробной информации о COMMAND. Смотрите также параметр
|
||
:option:`--on-download-stop`.
|
||
Возможные значения: ``/путь/к/команде``
|
||
|
||
.. option:: --on-download-error=<COMMAND>
|
||
|
||
Задать команду, которая будет выполнена после того, как загрузка будет
|
||
прервана из-за ошибки. Смотрите раздел `Перехват сообщения`_
|
||
для более подробной информации о COMMAND. Смотрите также параметр
|
||
:option:`--on-download-stop`. Возможные
|
||
значения: ``/путь/к/команде``
|
||
|
||
.. option:: --on-download-pause=<COMMAND>
|
||
|
||
Задать команду, которая будет выполнена после того, как
|
||
загрузка будет приостановлена. Смотрите раздел
|
||
`Перехват сообщения`_ для более подробной
|
||
информации о COMMAND. Возможные значения: ``/путь/к/команде``
|
||
|
||
.. option:: --on-download-start=<COMMAND>
|
||
|
||
Задать команду, которая будет выполнена после того, как
|
||
началась загрузка. Смотрите раздел `Перехват сообщения`_
|
||
для более подробной информации о COMMAND. Возможные
|
||
значения: ``/путь/к/команде``
|
||
|
||
.. option:: --on-download-stop=<COMMAND>
|
||
|
||
Задать команду, которая будет выполнена после того, как загрузка
|
||
остановлена. Вы можете изменить команду, которая будет выполнятся
|
||
при определенном результате загрузки, используя параметры
|
||
:option:`--on-download-complete` и :option:`--on-download-error`.
|
||
Если они указаны, то команда, определенная в этом параметре не
|
||
будет выполнятся. Смотрите раздел `Перехват сообщения`_
|
||
для более подробной информации о COMMAND. Возможные
|
||
значения: ``/путь/к/команде``
|
||
|
||
.. option:: --piece-length=<LENGTH>
|
||
|
||
Задать длину блока для HTTP/FTP-загрузок. Это является границей, когда
|
||
aria2 разделяет файл на части. Все разделения происходят многократно по
|
||
этой длине. Этот параметр будет игнорироваться при BitTorrent-загрузках.
|
||
Также будет игнорироваться, если Metalink-файл содержит хэши блоков.
|
||
По умолчанию: ``1M``
|
||
|
||
.. note::
|
||
|
||
Возможный вариант использования параметра
|
||
:option:`--piece-length` - изменение диапазона запроса в одном конвейерном
|
||
HTTP-запросе. Для включения конвейерной обработки HTTP используйте
|
||
:option:`--enable-http-pipelining`.
|
||
|
||
.. option:: --show-console-readout[=true|false]
|
||
|
||
Показывать консольный вывод.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: --summary-interval=<SEC>
|
||
|
||
Задать интервал в секундах до вывода сообщения о прогрессе
|
||
загрузки. Установка ``0`` запрещает вывод.
|
||
По умолчанию: ``60``
|
||
|
||
.. note::
|
||
|
||
В загрузках многофайлового торрента, по определенным смежным файлам также,
|
||
которые размещены в части одного блока.
|
||
|
||
.. option:: -Z, --force-sequential[=true|false]
|
||
|
||
Получить URI в последовательности командной строки и загрузить каждое
|
||
URI в отдельной сессии, как в обычных утилитах загрузки командной
|
||
строки.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --max-overall-download-limit=<SPEED>
|
||
|
||
Задать максимальную общую скорость загрузки в байтах/сек. ``0`` значит
|
||
неограниченно. Вы можете добавить ``K`` или ``M`` (1K = 1024, 1M = 1024K).
|
||
Чтобы ограничить скорость загрузки для узла, используйте параметр
|
||
:option:`--max-download-limit`.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --max-download-limit=<SPEED>
|
||
|
||
Установить максимальную скорость каждого узла загрузки в байтах/сек. ``0``
|
||
значит неограниченно. Вы можете добавить ``K`` или ``M`` (1K = 1024, 1M = 1024K).
|
||
Чтобы ограничить общую скорость загрузки, используйте параметр
|
||
:option:`--max-overall-download-limit`.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --no-conf[=true|false]
|
||
|
||
Отключить загрузку файла aria2.conf.
|
||
|
||
.. option:: --no-file-allocation-limit=<SIZE>
|
||
|
||
Не резервируется место для файлов, размер которых меньше SIZE.
|
||
Вы можете добавить ``K`` или ``M`` (1K = 1024, 1M = 1024K).
|
||
По умолчанию: ``5M``
|
||
|
||
.. option:: -P, --parameterized-uri[=true|false]
|
||
|
||
Включить поддержку параметризованных URI. Вы можете указать набор
|
||
частей: ``http://{sv1,sv2,sv3}/foo.iso``. Также вы можете указать
|
||
числовую последовательность с шагом
|
||
счетчика: ``http://host/image[000-100:2].img``. Шагом счетчика
|
||
можно пренебречь. Если все URI не указывают на такой же файл, как
|
||
во втором приведенном выше примере, то необходим параметр -Z.
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: -q, --quiet[=true|false]
|
||
|
||
Сделать aria2 молчаливой (без консольного вывода).
|
||
По умолчанию: ``false``
|
||
|
||
.. option:: --realtime-chunk-checksum[=true|false]
|
||
|
||
Подтверждать правильность блока данных путем вычисления контрольной суммы
|
||
во время загрузки файла, если предусмотрена контрольная сумма блоков.
|
||
По умолчанию: ``true``
|
||
|
||
|
||
.. option:: --remove-control-file[=true|false]
|
||
|
||
Удалять контрольный файл перед загрузкой. При использовании с
|
||
:option:`--allow-overwrite=true <--allow-overwrite>` файл
|
||
всегда загружается с нуля. Это может понадобиться пользователям
|
||
за прокси-сервером, который блокирует возобновление загрузки.
|
||
|
||
.. option:: --save-session=<FILE>
|
||
|
||
Сохранять ошибочные/незаконченные загрузки в FILE при завершении работы. Вы можете
|
||
передать этот выходной файл aria2c с параметром :option:`--input-file <-i>` при
|
||
перезапуске. Если вам нужен сжатый файл, то добавьте к имени файла расширение .gz.
|
||
Обратите внимание, что загрузки, добавленные через RPC-методы
|
||
:func:`aria2.addTorrent`, :func:`aria2.addMetalink` и чьи метаданные не могут
|
||
быть сохранены как файл, не будут сохраняться.
|
||
Загрузки, удаленные с использованием :func:`aria2.remove` и
|
||
:func:`aria2.forceRemove` не будут сохранены. GID также сохраняется параметром
|
||
:option:`gid <--gid>`, но с некоторыми ограничениями, смотрите ниже.
|
||
|
||
.. note::
|
||
|
||
Обычно, GID загрузки сам будет сохранён. Но некоторые загрузки
|
||
используют метаданные (например, BitTorrent и Metalink). В этом
|
||
случае есть некоторые ограничения.
|
||
|
||
1. magnet-ссылка, и последующая torrent-загрузка
|
||
Сохранится GID из метаданных BitTorrent-загрузки.
|
||
2. URI к torrent-файл, и последующая torrent-загрузка
|
||
Сохранится GID из torrent-файла загрузки.
|
||
3. URI к metalink-файл, и последующая загрузка файлов, описанных metalink-файле
|
||
Сохранится GID из metalink-файла загрузки.
|
||
4. Локальный torrent-файл
|
||
Сохранится GID из torrent-загрузки.
|
||
5. Локальный metalink-файл
|
||
Никакой значимый GID не сохранится.
|
||
|
||
.. option:: --save-session-interval=<SEC>
|
||
|
||
Сохранять ошибочные/незаконченные загрузки в файл, указанный в
|
||
параметре :option:`--save-session`, каждые SEC секунд.
|
||
Если указан ``0``, то файл будет сохранён только тогда, когда
|
||
aria2 завершит работу. По умолчанию: ``0``
|
||
|
||
.. option:: --stop=<SEC>
|
||
|
||
Останавливать программу после того как пройдет
|
||
SEC секунд. Если задано ``0``, эта возможность будет
|
||
отключена.
|
||
По умолчанию: ``0``
|
||
|
||
.. option:: --stop-with-process=<PID>
|
||
|
||
Остановить приложение, когда процесс с идентификационный номером PID
|
||
не работает. Это полезно, если процесс aria2 запущен из родительского
|
||
процесса. Родительский процесс может запустить aria2 со своим
|
||
идентификационным номером и когда он (процесс) завершится по какой-то
|
||
причине, aria2 может обнаружить это и самостоятельно завершить работу.
|
||
|
||
.. option:: --truncate-console-readout[=true|false]
|
||
|
||
Укорачивать консольный вывод, чтобы он поместился в
|
||
одну строку.
|
||
По умолчанию: ``true``
|
||
|
||
.. option:: -v, --version
|
||
|
||
Вывести номер версии, информацию об авторских
|
||
правах, конфигурации и завершить работу.
|
||
|
||
Примечания для параметров
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
Необязательные аргументы
|
||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
||
Параметры, которые имеют значения в квадратных скобках ([]), могут принимать
|
||
дополнительные (необязательные) аргументы. Обычно отсутствие аргумента
|
||
эквивалентно ``true``. Если вы используется короткую форму параметров
|
||
(например, ``-V``) и указываете аргумент, то имя параметра и его аргумент
|
||
должны быть объедены (например, ``-Vfalse``). Если будут вставлены пробелы
|
||
между именем параметра и аргументом, то аргумент будет обрабатываться как
|
||
URI, и это не то, что обычно вы ожидаете.
|
||
|
||
Единицы (K и M)
|
||
^^^^^^^^^^^^^^^
|
||
|
||
Некоторые параметры принимают ``K`` и ``M`` для удобства представления 1024
|
||
и 1048576 соответственно. aria2 определяет эти символы без учета
|
||
регистра. Другими словами, ``k`` и ``m`` могут быть использованы также как
|
||
``K`` и ``M`` соответственно.
|
||
|
||
URI, MAGNET-ССЫЛКА, TORRENT-ФАЙЛ, METALINK-ФАЙЛ
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
Вы можете перечислить несколько URI в командной строке. Пока вы не указали
|
||
параметр :option:`--force-sequential <-Z>`, все URI должны указывать на один
|
||
и тот же файл или загрузка завершиться не удачно.
|
||
|
||
Вы можете указать произвольное количество BitTorrent Magnet URI. Обратите
|
||
внимание, что они всегда будут обрабатываться как отдельная
|
||
загрузка. Поддерживаются оба Info Hash (Информация о хэше), как
|
||
закодированный 40 шестнадцатеричными символами, так и закодированный 32
|
||
символами Base32-кодировки. Поддерживаются составные параметры
|
||
``tr``. Т.к. в BitTorrent Magnet URI возможно присутствие символа ``&``, то
|
||
настоятельно рекомендуется всегда заключать URI в одиночные(``'``) или
|
||
двойные(``"``) кавычки. Так же настоятельно рекомендуется включить DHT,
|
||
особенно когда параметр ``tr`` не указан. Смотрите
|
||
http://www.bittorrent.org/beps/bep_0009.html для детальной информации по
|
||
BitTorrent Magnet URI.
|
||
|
||
Вы также можете указать произвольное количество torrent-файлов и
|
||
Metalink-документов, которые хранятся на локальном диске. Обратите внимание,
|
||
что они всегда будут обрабатываться как отдельная загрузка. Поддерживаются
|
||
оба формата: Metalink4 и Metalink версии 3.0.
|
||
|
||
Вы можете указать вместе, torrent-файл с параметром -T и URI. Сделав это, вы
|
||
можете загружать файл, используя torrent-рой и HTTP(S)/FTP-сервер
|
||
одновременно, пока данные из HTTP(S)/FTP выгружаются в torrent-рой. Для
|
||
однофайловых торрентов, URI может быть завершенным, который указывает на
|
||
ресурс, или же если заканчиваться символом /, тогда name (имя) в
|
||
torrent-файле будет добавлено. Для многофайловых торрентов, name (имя) и
|
||
path (путь) в torrent-файле будут добавлены из URI для каждого файла.
|
||
|
||
.. note::
|
||
|
||
Удостоверьтесь, что URI заключен в одинарные(') или двойные(``"``) кавычки, если
|
||
есть символ ``&`` или любые символы, которые имеют особое значение в командной
|
||
оболочке.
|
||
|
||
Возобновление загрузки
|
||
~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
Обычно, вы можете возобновить передачу, только запустив ту же самую команду
|
||
(aria2c URI), которая выполнялась при предыдущей передаче, созданной aria2.
|
||
|
||
Если предыдущая передача создана веб-браузером или wget-подобным менеджером
|
||
загрузки, тогда используйте параметр :option:`--continue <-c>` для
|
||
продолжения передачи.
|
||
|
||
Перехват сообщения
|
||
~~~~~~~~~~~~~~~~~~
|
||
|
||
aria2 предоставляет параметры, в которых указываются произвольные команды,
|
||
выполняемые после наступления определенного события. В настоящее время
|
||
доступны следующие параметры:
|
||
:option:`--on-bt-download-complete`,
|
||
:option:`--on-download-pause`,
|
||
:option:`--on-download-complete`,
|
||
:option:`--on-download-start`,
|
||
:option:`--on-download-error`,
|
||
:option:`--on-download-stop`.
|
||
|
||
aria2 передает 3 аргумента указанной команды, которая выполняется. Это
|
||
аргументы: GID, количество файлов и путь к файлу. Для HTTP-, FTP-загрузок,
|
||
обычно количество файлов - 1. BitTorrent загрузка может содержать множество
|
||
файлов. Если число файлов больше чем один, то путь к файлу будет для
|
||
первого. Другими словами, это значение параметра path в первой структуре,
|
||
определенный параметр которой имеет значение true (истина), в ответе
|
||
RPC-метода :func:`aria2.getFiles`. Если вы хотите получить все пути к
|
||
файлам, то рассмотрите использование JSON-RPC/XML-RPC. Обратите внимание,
|
||
что путь к файлу может меняться в процессе загрузки по HTTP из-за
|
||
перенаправления или заголовка Content-Disposition.
|
||
|
||
Посмотрите пример, как аргументы передаются команде:
|
||
|
||
.. code-block:: console
|
||
|
||
$ cat hook.sh
|
||
#!/bin/sh
|
||
echo "Called with [$1] [$2] [$3]"
|
||
$ aria2c --on-download-complete hook.sh http://example.org/file.iso
|
||
Called with [1] [1] [/path/to/file.iso]
|
||
|
||
|
||
КОДЫ ЗАВЕРШЕНИЯ
|
||
---------------
|
||
|
||
Поскольку aria2 может обрабатывать несколько загрузок одновременно, она
|
||
сталкивается с множеством ошибок в сессии. aria2 возвращает следующий код
|
||
завершения, основанный на последней встретившейся ошибке.
|
||
|
||
0
|
||
Если все загрузки завершились успешно.
|
||
|
||
1
|
||
Если произошла неизвестная ошибка.
|
||
|
||
2
|
||
Если время истекло.
|
||
|
||
3
|
||
Если ресурс не был найден.
|
||
|
||
4
|
||
Если aria2 получила определенное число ошибок "ресурс не найден". Смотрите
|
||
параметр :option:`--max-file-not-found`.
|
||
|
||
5
|
||
Если загрузка прервана, поскольку скорость загрузки была слишком
|
||
медленной. Смотрите параметр
|
||
:option:`--lowest-speed-limit`.
|
||
|
||
6
|
||
Если произошла проблема с сетью.
|
||
|
||
7
|
||
Если были незавершенные загрузки. Эта ошибка только появляется, только если
|
||
все завершенные загрузки были успешны и были незавершенные загрузки в
|
||
очереди, когда aria2 завершила работу по нажатию :kbd:`Ctrl-C` пользователем или при
|
||
отправке сигнала TERM или INT.
|
||
|
||
8
|
||
Если удаленный сервер не поддерживает возобновление, когда оно было указано
|
||
как обязательное для завершения загрузки.
|
||
|
||
9
|
||
Если было недостаточно пространства на диске.
|
||
|
||
10
|
||
Если размер блока был отличным от указанного контрольном .aria2-файле.
|
||
Смотрите параметр :option:`--allow-piece-length-change`.
|
||
|
||
11
|
||
Если aria2 был загружен один и тот же файл в тот момент.
|
||
|
||
12
|
||
Если aria2 загрузила торрент с одним и тем же хэшем в этот момент.
|
||
|
||
13
|
||
Если файл уже существует. Смотрите параметр
|
||
:option:`--allow-overwrite`.
|
||
|
||
14
|
||
Если не удалось переименование. Смотрите параметр
|
||
:option:`--auto-file-renaming`.
|
||
|
||
15
|
||
Если aria2 не смогла открыть существующий файл.
|
||
|
||
16
|
||
Если aria2 не смогла создать новый файл или обрезать существующий файл.
|
||
|
||
17
|
||
Если произошла ошибка чтения/записи файла.
|
||
|
||
18
|
||
Если aria2 не смогла создать каталог.
|
||
|
||
19
|
||
Если не удалось разрешение имен (DNS).
|
||
|
||
20
|
||
Если aria2 не смогла проанализировать Metalink-документ.
|
||
|
||
21
|
||
Если FTP-команда не удалась.
|
||
|
||
22
|
||
Если HTTP-заголовок ответа был испорчен или неожиданным.
|
||
|
||
23
|
||
Если произошло слишком много перенаправлений.
|
||
|
||
24
|
||
Если HTTP-авторизация не удалась.
|
||
|
||
25
|
||
Если aria2 не смогла проанализировать закодированный файл (обычно
|
||
файл ".torrent").
|
||
|
||
26
|
||
Если файл ".torrent" был испорчен или потеряна информация, которая необходима
|
||
aria2.
|
||
|
||
27
|
||
Если Magnet-ссылка была плохой.
|
||
|
||
28
|
||
Если был задан плохой/неопознанный параметр или неожиданный аргумент к нему.
|
||
|
||
29
|
||
Если удаленный сервер не смог обработать запрос из-за временной перегрузки
|
||
или регламентных работ.
|
||
|
||
30
|
||
Если aria2 не смогла проанализировать JSON-RPC-запрос.
|
||
|
||
.. note::
|
||
|
||
Ошибка, произошедшая в завершенной загрузке, не будет передана как код
|
||
завершения.
|
||
|
||
ОКРУЖЕНИЕ
|
||
---------
|
||
aria2 распознает следующие переменные окружения.
|
||
|
||
``http_proxy [http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``
|
||
Указать прокси-сервер для использования в HTTP. Заменяет значение http-proxy
|
||
в конфигурационном файле. Параметр
|
||
:option:`--http-proxy` в командной строке заменяет эту переменную.
|
||
|
||
``https_proxy [http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``
|
||
Указать прокси-сервер для использования в HTTPS. Заменяет значение
|
||
https-proxy в конфигурационном файле. Параметр
|
||
:option:`--https-proxy` в командной строке заменяет эту переменную.
|
||
|
||
``ftp_proxy [http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``
|
||
Указать прокси-сервер для использования в FTP. Заменяет значение ftp-proxy в
|
||
конфигурационном файле. Параметр :option:`--ftp-proxy` в
|
||
командной строке заменяет эту переменную.
|
||
|
||
``all_proxy [http://][ПОЛЬЗОВАТЕЛЬ:ПАРОЛЬ@]ХОСТ[:ПОРТ]``
|
||
Указать прокси-сервер для использования, если не указан конкретный протокол
|
||
для прокси. Заменяет значение all-proxy в конфигурационном файле. Параметр
|
||
:option:`--all-proxy` в командной строке заменяет эту
|
||
переменную.
|
||
|
||
.. note::
|
||
|
||
Несмотря на то, что aria2 допускает ``ftp://`` и ``https://`` схемы прокси в URI,
|
||
она просто предполагает, что определен ``http://`` и не меняет своего поведения,
|
||
основанного на определенной схеме.
|
||
|
||
``no_proxy [ДОМЕН,...]``
|
||
Указать, разделенные запятыми, имена хостов, доменов и сетевых адресов с
|
||
CIDR-блоком, или без него, для которых прокси использоваться не
|
||
будет. Заменяет значение no-proxy в конфигурационном файле. Параметр
|
||
:option:`--no-proxy` в командной строке заменяет эту
|
||
переменную.
|
||
|
||
ФАЙЛЫ
|
||
-----
|
||
aria2.conf
|
||
~~~~~~~~~~
|
||
|
||
По умолчанию, aria2 анализирует ``$HOME/.aria2/aria2.conf`` как
|
||
конфигурационный файл. Вы можете указать путь к конфигурационному файлу в
|
||
параметре :option:`--conf-path`. Если вы не хотите использовать
|
||
конфигурационный файл, используйте параметр :option:`--no-conf`.
|
||
|
||
Конфигурационный файл - это текстовый файл, содержащий один параметр в
|
||
строке. В каждой строке, вы можете указать пары имя-значение в формате:
|
||
ИМЯ=ЗНАЧЕНИЕ, где имя - это длинный параметр командной строки, без префикса
|
||
``--``. Вы можете использовать тот же синтаксис, что и для параметра
|
||
командной строки. Строки начинающиеся с ``#`` рассматриваются как
|
||
комментарии::
|
||
|
||
# sample configuration file for aria2c
|
||
listen-port=60000
|
||
dht-listen-port=60000
|
||
seed-ratio=1.0
|
||
max-upload-limit=50K
|
||
ftp-pasv=true
|
||
|
||
.. note::
|
||
|
||
Конфиденциальная информация такая как пользователь/пароль могут быть
|
||
включены в конфигурационный файл. Рекомендуется изменить режим доступа
|
||
к конфигурационному файлу (например, ``chmod 600 aria2.conf``), так
|
||
другие пользователи не смогут увидеть содержимое файла.
|
||
|
||
dht.dat
|
||
~~~~~~~
|
||
|
||
By default, the routing table of IPv4 DHT is saved to the path
|
||
``$HOME/.aria2/dht.dat`` and the routing table of IPv6 DHT is saved to the
|
||
path ``$HOME/.aria2/dht6.dat``.
|
||
|
||
Netrc
|
||
~~~~~
|
||
|
||
Поддержка Netrc включена по умолчанию для HTTP(S)/FTP. Для отключения
|
||
поддержки netrc, укажите параметр :option:`--no-netrc <-n>`. Ваш файл .netrc
|
||
должен иметь соответствующие права (600).
|
||
|
||
Если имя машины (machine) начинается с ``.``, то aria2 выполняет доменное
|
||
сопоставление вместо точного соответствия. Это расширение aria2. Пример
|
||
доменного сопоставления, представьте себе следующие содержимое .netrc::
|
||
|
||
machine .example.org login myid password mypasswd
|
||
|
||
|
||
Доменное имя ``aria2.example.org`` совпадает с ``.example.org`` и
|
||
используется ``myid`` и ``mypasswd``.
|
||
|
||
Примеры некоторых совпадений доменных имен: доменное имя ``example.net`` не
|
||
совпадает с ``.example.org``. Доменное имя ``example.org`` не совпадает
|
||
``.example.org`` из-за предшествующей ``.``. Если вы хотите совпадения
|
||
``example.org``, то точно укажите - ``example.org``.
|
||
|
||
Контрольный файл
|
||
~~~~~~~~~~~~~~~~
|
||
|
||
aria2 использует контрольный файл для отслеживания прогресса
|
||
загрузки. Контрольный файл размещается в том же каталоге, что и загружаемый
|
||
файл, и имеет имя, как у загружаемого файла с добавлением
|
||
``.aria2``. Например, если file.zip загружаемый файл, тогда контрольный файл
|
||
будет file.zip.aria2. (Существует исключение для этого именования. При
|
||
загрузке торрента с множеством файлов, контрольный файл будет в "корневом
|
||
каталоге" с именем торрента и добавлением ``.aria2``. Имя "корневого
|
||
каталога" - значение ключа "name" в "info" внутри torrent-файла.)
|
||
|
||
Обычно контрольный файл удаляется после завершения загрузки. Если aria2
|
||
решает, что загрузка не может быть возобновлена (например, когда загружается
|
||
файл с HTTP-сервера, который не поддерживает возобновление), контрольный
|
||
файл не создается.
|
||
|
||
Обычно, если вы потеряете контрольный файл, вы не сможете возобновить
|
||
загрузку. Но если у вас есть torrent или metalink файлы с контрольными
|
||
суммами блоков данных, вы сможете возобновить загрузку без контрольного
|
||
файла, указав параметр -V в командной строке aria2c.
|
||
|
||
Входной файл
|
||
~~~~~~~~~~~~
|
||
|
||
Входной файл может содержать список URI для загрузки aria2. Вы можете
|
||
указать несколько URI для одного объекта, разделяя URI, в одной строке,
|
||
табуляцией.
|
||
|
||
Каждая строка рассматривается, как аргумент командой строки. Следовательно,
|
||
на них влияют параметры :option:`--force-sequential <-Z>` и
|
||
:option:`--parameterized-uri <-P>`.
|
||
|
||
Так как aria2 непосредственно читает URI из входного файла, то они не должны
|
||
быть указаны с одинарными(') или двойными(") кавычками.
|
||
|
||
Строка, которая начинается с ``#`` обрабатывается как комментарий и
|
||
пропускается.
|
||
|
||
Кроме того, следующие параметры могут быть определены после каждой строки с
|
||
URI. Эти дополнительные строки должны начинаться с пробела(ов).
|
||
|
||
.. hlist::
|
||
:columns: 3
|
||
|
||
* :option:`all-proxy <--all-proxy>`
|
||
* :option:`all-proxy-passwd <--all-proxy-passwd>`
|
||
* :option:`all-proxy-user <--all-proxy-user>`
|
||
* :option:`allow-overwrite <--allow-overwrite>`
|
||
* :option:`allow-piece-length-change <--allow-piece-length-change>`
|
||
* :option:`always-resume <--always-resume>`
|
||
* :option:`async-dns <--async-dns>`
|
||
* :option:`auto-file-renaming <--auto-file-renaming>`
|
||
* :option:`bt-enable-lpd <--bt-enable-lpd>`
|
||
* :option:`bt-exclude-tracker <--bt-exclude-tracker>`
|
||
* :option:`bt-external-ip <--bt-external-ip>`
|
||
* :option:`bt-hash-check-seed <--bt-hash-check-seed>`
|
||
* :option:`bt-max-open-files <--bt-max-open-files>`
|
||
* :option:`bt-max-peers <--bt-max-peers>`
|
||
* :option:`bt-metadata-only <--bt-metadata-only>`
|
||
* :option:`bt-min-crypto-level <--bt-min-crypto-level>`
|
||
* :option:`bt-prioritize-piece <--bt-prioritize-piece>`
|
||
* :option:`bt-remove-unselected-file <--bt-remove-unselected-file>`
|
||
* :option:`bt-request-peer-speed-limit <--bt-request-peer-speed-limit>`
|
||
* :option:`bt-require-crypto <--bt-require-crypto>`
|
||
* :option:`bt-save-metadata <--bt-save-metadata>`
|
||
* :option:`bt-seed-unverified <--bt-seed-unverified>`
|
||
* :option:`bt-stop-timeout <--bt-stop-timeout>`
|
||
* :option:`bt-tracker <--bt-tracker>`
|
||
* :option:`bt-tracker-connect-timeout <--bt-tracker-connect-timeout>`
|
||
* :option:`bt-tracker-interval <--bt-tracker-interval>`
|
||
* :option:`bt-tracker-timeout <--bt-tracker-timeout>`
|
||
* :option:`check-integrity <-V>`
|
||
* :option:`checksum <--checksum>`
|
||
* :option:`conditional-get <--conditional-get>`
|
||
* :option:`connect-timeout <--connect-timeout>`
|
||
* :option:`continue <-c>`
|
||
* :option:`dir <-d>`
|
||
* :option:`dry-run <--dry-run>`
|
||
* :option:`enable-http-keep-alive <--enable-http-keep-alive>`
|
||
* :option:`enable-http-pipelining <--enable-http-pipelining>`
|
||
* :option:`enable-mmap <--enable-mmap>`
|
||
* :option:`enable-peer-exchange <--enable-peer-exchange>`
|
||
* :option:`file-allocation <--file-allocation>`
|
||
* :option:`follow-metalink <--follow-metalink>`
|
||
* :option:`follow-torrent <--follow-torrent>`
|
||
* :option:`force-save <--force-save>`
|
||
* :option:`ftp-passwd <--ftp-passwd>`
|
||
* :option:`ftp-pasv <-p>`
|
||
* :option:`ftp-proxy <--ftp-proxy>`
|
||
* :option:`ftp-proxy-passwd <--ftp-proxy-passwd>`
|
||
* :option:`ftp-proxy-user <--ftp-proxy-user>`
|
||
* :option:`ftp-reuse-connection <--ftp-reuse-connection>`
|
||
* :option:`ftp-type <--ftp-type>`
|
||
* :option:`ftp-user <--ftp-user>`
|
||
* :option:`hash-check-only <--hash-check-only>`
|
||
* :option:`header <--header>`
|
||
* :option:`http-accept-gzip <--http-accept-gzip>`
|
||
* :option:`http-auth-challenge <--http-auth-challenge>`
|
||
* :option:`http-no-cache <--http-no-cache>`
|
||
* :option:`http-passwd <--http-passwd>`
|
||
* :option:`http-proxy <--http-proxy>`
|
||
* :option:`http-proxy-passwd <--http-proxy-passwd>`
|
||
* :option:`http-proxy-user <--http-proxy-user>`
|
||
* :option:`http-user <--http-user>`
|
||
* :option:`https-proxy <--https-proxy>`
|
||
* :option:`https-proxy-passwd <--https-proxy-passwd>`
|
||
* :option:`https-proxy-user <--https-proxy-user>`
|
||
* :option:`index-out <-O>`
|
||
* :option:`lowest-speed-limit <--lowest-speed-limit>`
|
||
* :option:`max-connection-per-server <-x>`
|
||
* :option:`max-download-limit <--max-download-limit>`
|
||
* :option:`max-file-not-found <--max-file-not-found>`
|
||
* :option:`max-resume-failure-tries <--max-resume-failure-tries>`
|
||
* :option:`max-tries <-m>`
|
||
* :option:`max-upload-limit <-u>`
|
||
* :option:`metalink-base-uri <--metalink-base-uri>`
|
||
* :option:`metalink-enable-unique-protocol
|
||
<--metalink-enable-unique-protocol>`
|
||
* :option:`metalink-language <--metalink-language>`
|
||
* :option:`metalink-location <--metalink-location>`
|
||
* :option:`metalink-os <--metalink-os>`
|
||
* :option:`metalink-preferred-protocol <--metalink-preferred-protocol>`
|
||
* :option:`metalink-version <--metalink-version>`
|
||
* :option:`min-split-size <-k>`
|
||
* :option:`no-file-allocation-limit <--no-file-allocation-limit>`
|
||
* :option:`no-netrc <-n>`
|
||
* :option:`no-proxy <--no-proxy>`
|
||
* :option:`out <-o>`
|
||
* :option:`parameterized-uri <-P>`
|
||
* :option:`pause <--pause>`
|
||
* :option:`piece-length <--piece-length>`
|
||
* :option:`proxy-method <--proxy-method>`
|
||
* :option:`realtime-chunk-checksum <--realtime-chunk-checksum>`
|
||
* :option:`referer <--referer>`
|
||
* :option:`remote-time <-R>`
|
||
* :option:`remove-control-file <--remove-control-file>`
|
||
* :option:`retry-wait <--retry-wait>`
|
||
* :option:`reuse-uri <--reuse-uri>`
|
||
* :option:`rpc-save-upload-metadata <--rpc-save-upload-metadata>`
|
||
* :option:`seed-ratio <--seed-ratio>`
|
||
* :option:`seed-time <--seed-time>`
|
||
* :option:`select-file <--select-file>`
|
||
* :option:`split <-s>`
|
||
* :option:`stream-piece-selector <--stream-piece-selector>`
|
||
* :option:`timeout <-t>`
|
||
* :option:`uri-selector <--uri-selector>`
|
||
* :option:`use-head <--use-head>`
|
||
* :option:`user-agent <-U>`
|
||
|
||
Эти параметры имеют точно такой же смысл, что параметры командной строки, но
|
||
это применимо только к URI, к которым они принадлежат. Обратите внимание,
|
||
что параметры во входном файле не должны иметь префикс ``--``.
|
||
|
||
Например, такое содержимое uri.txt::
|
||
|
||
http://server/file.iso http://mirror/file.iso
|
||
dir=/iso_images
|
||
out=file.img
|
||
http://foo/bar
|
||
|
||
|
||
Если aria2 выполняется с параметрами ``-i uri.txt -d /tmp``, а загрузка
|
||
происходит с ``http://server/file.iso`` и ``http://mirror/file.iso``, то
|
||
``file.iso`` сохранится как ``/iso_images/file.img``. Файл ``bar``
|
||
загрузится с ``http://foo/bar`` и сохранится как ``/tmp/bar``.
|
||
|
||
В некоторых случаях, параметр :option:`out <-o>` не имеет никакого
|
||
эффекта. Смотрите примечание по ограничениям параметра :option:`--out <-o>`.
|
||
|
||
Профиль функционирования сервера
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
Этот раздел описывает формат профиля функционирования сервера. Это открытый
|
||
текстовый файл, каждая строка которого имеет несколько пар ИМЯ=ЗНАЧЕНИЕ,
|
||
разделенных запятыми. В настоящее время распознаются следующие ИМЕНА:
|
||
|
||
``host``
|
||
Хост-имя сервера. Обязательно.
|
||
|
||
``protocol``
|
||
Протокол для этого профиля, такие как ftp, http. Обязательно.
|
||
|
||
``dl_speed``
|
||
Средняя скорость загрузки, которая наблюдалась при предыдущей загрузке, в
|
||
байт/секунду. Обязательно.
|
||
|
||
``sc_avg_speed``
|
||
Средняя скорость загрузки, которая наблюдалась при предыдущей загрузке, в
|
||
байт/секунду. Это значение обновляется, только если загрузка произведена при
|
||
одном соединении и только с использованием
|
||
AdaptiveURISelector. Необязательно.
|
||
|
||
``mc_avg_speed``
|
||
Средняя скорость загрузки, которая наблюдалась при предыдущей загрузке, в
|
||
байт/секунду. Это значение обновляется, только если загрузка произведена при
|
||
нескольких соединениях и только с использованием
|
||
AdaptiveURISelector. Необязательно.
|
||
|
||
``counter``
|
||
Сколько раз использовался сервер. В настоящее время это значение
|
||
используется только при AdaptiveURISelector. Необязательно.
|
||
|
||
``last_updated``
|
||
Время связи, в GMT, с этим сервером, указывается в секундах, начиная с
|
||
00:00:00 1 Января, 1970, UTC. Обязательно.
|
||
|
||
``status``
|
||
ERROR, когда сервер недоступен из-за неисправности или тайм-аута. Иначе -
|
||
OK.
|
||
|
||
Эти поля должны быть в одной строке. Последовательность полей не имеет
|
||
значения. Вы можете размещать пары, отличные от перечисленных выше; они
|
||
будут просто игнорироваться.
|
||
|
||
Например, следующим образом::
|
||
|
||
host=localhost, protocol=http, dl_speed=32000, last_updated=1222491640, status=OK
|
||
host=localhost, protocol=ftp, dl_speed=0, last_updated=1222491632, status=ERROR
|
||
|
||
|
||
RPC-ИНТЕРФЕЙС
|
||
-------------
|
||
|
||
aria2 обеспечивает JSON-RPC через HTTP и XML-RPC через HTTP, они в основном
|
||
имеют одинаковые функции. aria2 также обеспечивает JSON-RPC через
|
||
WebSocket. JSON-RPC через WebSocket использует тот же самый метод сигнатур и
|
||
формат ответа как у JSON-RPC через HTTP, но дополнительно имеет сервер,
|
||
инициирующий уведомления. Смотрите подробности в разделе `JSON-RPC через
|
||
WebSocket`_.
|
||
|
||
Путь запроса к JSON-RPC-интерфейсу (для через HTTP и через WebSocket) -
|
||
``/jsonrpc``. Путь запроса к XML-RPC-интерфейсу - ``/rpc``.
|
||
|
||
WebSocket URI для JSON-RPC через WebSocket является
|
||
``ws://HOST:PORT/jsonrpc``. Если вы включили SSL/TLS-шифрование, то
|
||
используйте ``wss://HOST:PORT/jsonrpc``.
|
||
|
||
Реализованный JSON-RPC основан на спецификации JSON-RPC 2.0
|
||
<http://jsonrpc.org/specification> и поддерживает HTTP POST и GET
|
||
(JSONP). Использование WebSocket как транспорта является начальным
|
||
расширением aria2.
|
||
|
||
JSON-RPC-интерфейс не поддерживает уведомления в HTTP, но RPC-сервер будет
|
||
отправлять уведомления в WebSocket. Он также не поддерживает числа с
|
||
плавающей точкой. Символы должны быть в кодировке UTF-8.
|
||
|
||
В следующем документе о JSON-RPC, описана структура JSON-объекта.
|
||
|
||
Терминология
|
||
~~~~~~~~~~~~
|
||
|
||
GID
|
||
|
||
GID (или gid) - это ключ, для управления каждой загрузкой. Каждая
|
||
загрузка имеет уникальный GID. GID сохраниться в 64 битах двоичных
|
||
данных в aria2. Для RPC-доступа, он должен быть представлен в виде
|
||
шестнадцатеричной строки из 16 символов (например, ``2089b05ecca3d829``).
|
||
Обычно, aria2 генерирует этот GID для каждой загрузки, но пользователь
|
||
может определить GID вручную, используя параметр :option:`--gid <--gid>`.
|
||
При запросе загрузки по GID, вы можете задать префикс GID пока он
|
||
является уникальным префиксом среди других.
|
||
|
||
Методы
|
||
~~~~~~
|
||
|
||
Весь код в примерах написан на Python2.7.
|
||
|
||
|
||
.. function:: aria2.addUri(uris[, options[, position]])
|
||
|
||
Этот метод добавляет новый HTTP(S)/FTP/BitTorrent Magnet URI. Параметр
|
||
*uris* имеет тип массив, элемент которого имеет тип строка и содержит
|
||
URI. Для BitTorrent Magnet URI, *uris* должен содержать только один элемент,
|
||
и он должен быть BitTorrent Magnet URI. URI в параметре *uris* должны
|
||
указывать на один и тот же файл. Если вы смешивайте другие URI, указывающие
|
||
на другой файл, то aria2 не сообщит об этом, но и загрузка может неудачно
|
||
завершаться. Параметр *options* имеет тип структура, элементы которой
|
||
являются парой имя и значение. Смотрите ниже :ref:`rpc_options` для более
|
||
подробной информации. Если параметр *position* задан как целое число,
|
||
начиная с 0, то новая загрузка будет вставлена на позицию *position* в
|
||
очередь ожидания. Если параметр *position* не задан или больше чем размер
|
||
очереди, то загрузка будет добавлена в конец очереди. Этот метод
|
||
возвращает GID зарегистрированной загрузки.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
Следующий пример добавляет ``http://example.org/file в aria2``::
|
||
|
||
>>> import urllib2, json
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.addUri',
|
||
... 'params':[['http://example.org/file']]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> c.read()
|
||
'{"id":"qwer","jsonrpc":"2.0","result":"2089b05ecca3d829"}'
|
||
|
||
**Пример XML-RPC**
|
||
|
||
Следующий пример добавляет ``http://example.org/file в aria2``::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.addUri(['http://example.org/file'])
|
||
'2089b05ecca3d829'
|
||
|
||
Следующий пример добавляет два источника и некоторые параметры::
|
||
|
||
>>> s.aria2.addUri(['http://example.org/file', 'http://mirror/file'],
|
||
dict(dir="/tmp"))
|
||
'd2703803b52216d1'
|
||
|
||
Следующий пример добавляет загрузку и вставляет ее перед ожидающими
|
||
загрузками::
|
||
|
||
>>> s.aria2.addUri(['http://example.org/file'], {}, 0)
|
||
'ca3d829cee549a4d'
|
||
|
||
.. function:: aria2.addTorrent(torrent[, uris[, options[, position]]])
|
||
|
||
Этот метод добавляет BitTorrent-загрузку путем загрузки .torrent-файла.
|
||
Если вы хотите добавить BitTorrent Magnet URI, взамен используйте метод
|
||
:func:`aria2.addUri`. Параметр *torrent* имеет тип base64, с содержанием
|
||
Base64-кодировки в .torrent-файле. Параметр *uris* имеет тип массив,
|
||
элемент которого имеет тип строка и содержит URI.
|
||
Параметр *uris* используется для Web-сидирования. Для однофайловых
|
||
торрентов, URI может быть завершенным, который указывает на ресурс,
|
||
или же если заканчиваться символом /, тогда будет добавлено имя из
|
||
torrent-файла. Для многофайловых торрентов, имя и путь в торренте будут
|
||
добавлены из URI для каждого файла. Параметр *options* имеет тип структура,
|
||
элементы которой являются парой имя и значение. Смотрите ниже
|
||
:ref:`rpc_options` для более подробной информации. Если
|
||
параметр *position* задан как целое число, начиная с 0, то новая загрузка
|
||
будет вставлена на позицию *position* в очередь ожидания. Если параметр
|
||
*position* не задан или больше чем размер очереди, то загрузка будет
|
||
добавлена в конец очереди. Этот метод возвращает GID зарегистрированной
|
||
загрузки. Если :option:`--rpc-save-upload-metadata` задан как ``true``,
|
||
загруженные данные сохраняются в файл с именем шестнадцатеричной
|
||
строки SHA-1-хэша этих данных плюс ".torrent", в каталог указанный в
|
||
параметре :option:`--dir <-d>`. Например, имя файла
|
||
0a3893293e27ac0490424c06de4d09242215f0a6.torrent. Если этот файл существует,
|
||
то он будет перезаписан. Если файл не может быть успешно сохранен или
|
||
:option:`--rpc-save-upload-metadata` задан как ``false``, то
|
||
загрузки, добавленные этим методом, не сохраняются при помощи параметра
|
||
:option:`--save-session`.
|
||
|
||
Следующие примеры добавляют локальный файл ``file.torrent``.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json, base64
|
||
>>> torrent = base64.b64encode(open('file.torrent').read())
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'asdf',
|
||
... 'method':'aria2.addTorrent', 'params':[torrent]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> c.read()
|
||
'{"id":"asdf","jsonrpc":"2.0","result":"2089b05ecca3d829"}'
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.addTorrent(xmlrpclib.Binary(open('file.torrent').read()))
|
||
'2089b05ecca3d829'
|
||
|
||
.. function:: aria2.addMetalink(metalink[, options[, position]])
|
||
|
||
Этот метод добавляет Metalink-загрузку путем загрузки .metalink-файла.
|
||
Параметр *metalink* имеет тип base64, с содержанием
|
||
Base64-кодировки в .metalink-файле. Параметр *options* имеет тип структура,
|
||
элементы которой являются парой имя-значение. Смотрите ниже
|
||
:ref:`rpc_options` для более подробной информации. Если
|
||
параметр *position* задан как целое число, начиная с 0, то новая загрузка
|
||
будет вставлена на позицию *position* в очередь ожидания. Если параметр
|
||
*position* не задан или больше чем размер очереди, то загрузка будет
|
||
добавлена в конец очереди. Этот метод возвращает GID зарегистрированной
|
||
загрузки. Загруженные данные сохраняются в файл с именем шестнадцатеричной
|
||
строки SHA-1-хэша этих данных плюс ".metalink", в каталог указанный в
|
||
параметре :option:`--dir <-d>`. Например, имя файла
|
||
0a3893293e27ac0490424c06de4d09242215f0a6.metalink. Если этот файл
|
||
существует, то он будет перезаписан. Если файл не может быть успешно сохранен
|
||
или :option:`--rpc-save-upload-metadata` задан как ``false``, то
|
||
загрузки, добавленные этим методом, не сохраняются при помощи параметра
|
||
:option:`--save-session`.
|
||
|
||
Следующие примеры добавляют локальный файл file.meta4.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json, base64
|
||
>>> metalink = base64.b64encode(open('file.meta4').read())
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.addMetalink',
|
||
... 'params':[metalink]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> c.read()
|
||
'{"id":"qwer","jsonrpc":"2.0","result":["2089b05ecca3d829"]}'
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.addMetalink(xmlrpclib.Binary(open('file.meta4').read()))
|
||
['2089b05ecca3d829']
|
||
|
||
.. function:: aria2.remove(gid)
|
||
|
||
Этот метод удаляет загрузку, которая обозначена *gid*. Параметр *gid* имеет
|
||
тип строка. Если указана загрузка, которая загружается в данный момент, то
|
||
сначала она остановится. Статус удаления станет ``removed`` (удаленно). Этот
|
||
метод возвращает GID удаленной загрузки.
|
||
|
||
Следующие примеры удаляют загрузку GID#2089b05ecca3d829.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.remove',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> c.read()
|
||
'{"id":"qwer","jsonrpc":"2.0","result":"2089b05ecca3d829"}'
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.remove('2089b05ecca3d829')
|
||
'2089b05ecca3d829'
|
||
|
||
.. function:: aria2.forceRemove(gid)
|
||
|
||
Этот метод удаляет загрузку, которая обозначена *gid*. Метод действует
|
||
подобно :func:`aria2.remove`, за исключением того, что
|
||
метод удаляет загрузку без каких-либо действий, которые требует времени,
|
||
например связь с BitTorrent-трекером.
|
||
|
||
.. function:: aria2.pause(gid)
|
||
|
||
Этот метод приостанавливает загрузку, которая обозначена *gid*. Параметр
|
||
*gid* имеет тип строки. Статус приостановки станет ``paused``
|
||
(приостановлено). Если загрузка активна, то загрузка переместится на первую
|
||
позицию в очередь ожидания. Пока статус ``paused``, загрузка не начнется. Для
|
||
смены статуса на ``waiting``, используйте метод :func:`aria2.unpause`.
|
||
Этот метод возвращает GID приостановленной загрузки.
|
||
|
||
.. function:: aria2.pauseAll()
|
||
|
||
Этот метод эквивалентен по вызову :func:`aria2.pause`, для каждой
|
||
активной/ожидающей закачки. Этот метод возвращает ``OK``, в случае
|
||
успеха.
|
||
|
||
.. function:: aria2.forcePause(pid)
|
||
|
||
Этот метод приостанавливает загрузку, которая обозначена *gid*. Метод
|
||
действует подобно :func:`aria2.pause`, за исключением
|
||
того, что метод приостанавливает загрузку без каких-либо действий, которые
|
||
требует времени, например связь с BitTorrent-трекером.
|
||
|
||
.. function:: aria2.forcePauseAll()
|
||
|
||
Этот метод эквивалентен по вызову :func:`aria2.forcePause`, для каждой
|
||
активной/ожидающей закачки. Этот метод возвращает ``OK``, в случае успеха.
|
||
|
||
.. function:: aria2.unpause(gid)
|
||
|
||
Этот метод изменяет статус загрузки, которая обозначена 'gid', с ``paused`` на
|
||
``waiting``. Это позволяет перезапускать загрузку. Значение ключа *gid* имеет
|
||
тип строки. Этот метод возвращает GID, снятой с паузы, загрузки.
|
||
|
||
.. function:: aria2.unpauseAll()
|
||
|
||
Этот метод эквивалентен по вызову :func:`aria2.unpause`, для каждой
|
||
активной/ожидающей закачки. Этот метод возвращает ``OK``, в случае успеха.
|
||
|
||
.. function:: aria2.tellStatus(gid[, keys])
|
||
|
||
Этот метод возвращает состояние загрузки, которая обозначена *gid*. Параметр
|
||
*gid* имеет тип строка. Параметр *keys* имеет тип массив строк. Если *keys*
|
||
указан, то ответ содержит определенные значения в массиве *keys*. Если
|
||
*keys* пустой или не указан, то ответ содержит все значения. Это полезно,
|
||
если вы хотите использовать определенные параметры, чтобы исключить
|
||
множество пересылок. Например,
|
||
``aria2.tellStatus("2089b05ecca3d829", ["gid", "status"])`` возвратит *gid* и
|
||
'status'. Ответ имеет тип структура и содержит следующие поля. Поле имеет
|
||
тип строка.
|
||
|
||
``gid``
|
||
GID этой загрузки.
|
||
|
||
``status``
|
||
``active`` - загружаемая/сидируемая в данный момент. ``waiting`` - ожидающая в
|
||
очереди; загрузка не началась. ``paused`` - приостановленная. ``error`` -
|
||
остановленная, т.к. произошла ошибка. ``complete`` - остановленная и
|
||
завершенная загрузка. ``removed`` - удаленная пользователем загрузка.
|
||
|
||
``totalLength``
|
||
Общий объем загрузки в байтах.
|
||
|
||
``completedLength``
|
||
Загруженный объем загрузки в байтах.
|
||
|
||
``uploadLength``
|
||
Выгруженный объем загрузки в байтах.
|
||
|
||
``bitfield``
|
||
Шестнадцатеричное представление процесса загрузки. Старший бит соответствует
|
||
блоку с индексом 0. Бит устанавливается, если блок доступен и не
|
||
устанавливается, если блок отсутствует. Запасные биты в конце
|
||
устанавливаются в 0. Если загрузка еще не начался, этот значение не будет
|
||
включено в ответ.
|
||
|
||
``downloadSpeed``
|
||
Скорость загрузки в байт/сек.
|
||
|
||
``uploadSpeed``
|
||
Скорость выгрузки в байт/сек.
|
||
|
||
``infoHash``
|
||
Информация о хэше (InfoHash). Только для BitTorrent.
|
||
|
||
``numSeeders``
|
||
Количество сидов, к которым подключен клиент. Только для BitTorrent.
|
||
|
||
``pieceLength``
|
||
Размер блока в байтах.
|
||
|
||
``numPieces``
|
||
Количество блоков.
|
||
|
||
``connections``
|
||
Количество пиров/серверов, к которым подключен клиент.
|
||
|
||
``errorCode``
|
||
Последний код ошибки, которая произошла при загрузке. Значение имеет тип
|
||
строки. Коды ошибок определены в разделе `КОДЫ ЗАВЕРШЕНИЯ`_. Это значение доступно
|
||
только для остановленных/завершенных загрузок.
|
||
|
||
``followedBy``
|
||
Список с GID, которые сгенерированы в результате запуска этой
|
||
загрузки. Например, когда aria2 загружает Metalink-файл, то это генерирует
|
||
загрузки, описанные в нем (см. параметр
|
||
:option:`--follow-metalink`). Это значение полезно для отслеживания автоматически
|
||
сгенерированных загрузок. Если таких загрузок нет, то значение не будет
|
||
включено в ответ.
|
||
|
||
``belongsTo``
|
||
GID родительской загрузки. Некоторые загрузки являются частью другой
|
||
загрузки. Например, если файл в Metalink содержит BitTorrent-ответ, загрузка
|
||
".torrent" будет частью этого файла. Если эта загрузка не имеет родительской
|
||
загрузки, то значение не будет включено в ответ.
|
||
|
||
``dir``
|
||
Каталог для сохранения файлов. Этот параметр недоступен для остановленных
|
||
загрузок.
|
||
|
||
``files``
|
||
Возвращает список файлов. Элемент списка - это структура, такая же, что и в
|
||
методе :func:`aria2.getFiles`.
|
||
|
||
``bittorrent``
|
||
Структура, в которой содержится информация, извлеченная из .torrent-файла.
|
||
Только для BitTorrent. Содержит следующие поля.
|
||
|
||
``announceList``
|
||
Список списков URI анонса. Если .torrent-файл содержит анонс, а не
|
||
список-анонс, то анонс конвертируется в формат списка-анонса.
|
||
|
||
``comment``
|
||
Комментарий по торренту. Используется ``comment.utf-8``, если доступно.
|
||
|
||
``creationDate``
|
||
Время создания торрента. Значение является целым числом, с начала века,
|
||
измеряется в секундах.
|
||
|
||
``mode``
|
||
Файловый режим торрента. Значение одно из двух: ``single`` (одиночный) или
|
||
``multi`` (множественный).
|
||
|
||
``info``
|
||
Структура, которая содержит данные из раздела Info. Она содержит следующие
|
||
поля.
|
||
|
||
``name``
|
||
имя в разделе info. Используется ``name.utf-8``, если доступно.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
Следующий пример получает информацию о загрузке GID#2089b05ecca3d829::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.tellStatus',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': {u'bitfield': u'0000000000',
|
||
u'completedLength': u'901120',
|
||
u'connections': u'1',
|
||
u'dir': u'/downloads',
|
||
u'downloadSpeed': u'15158',
|
||
u'files': [{u'index': u'1',
|
||
u'length': u'34896138',
|
||
u'completedLength': u'34896138',
|
||
u'path': u'/downloads/file',
|
||
u'selected': u'true',
|
||
u'uris': [{u'status': u'used',
|
||
u'uri': u'http://example.org/file'}]}],
|
||
u'gid': u'2089b05ecca3d829',
|
||
u'numPieces': u'34',
|
||
u'pieceLength': u'1048576',
|
||
u'status': u'active',
|
||
u'totalLength': u'34896138',
|
||
u'uploadLength': u'0',
|
||
u'uploadSpeed': u'0'}}
|
||
|
||
Следующий пример получает информацию об определенных полях, который вас
|
||
интересуют::
|
||
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.tellStatus',
|
||
... 'params':['2089b05ecca3d829',
|
||
... ['gid',
|
||
... 'totalLength',
|
||
... 'completedLength']]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': {u'completedLength': u'5701632',
|
||
u'gid': u'2089b05ecca3d829',
|
||
u'totalLength': u'34896138'}}
|
||
|
||
**Пример XML-RPC**
|
||
|
||
Следующий пример получает информацию о загрузке GID#2089b05ecca3d829::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.tellStatus('2089b05ecca3d829')
|
||
>>> pprint(r)
|
||
{'bitfield': 'ffff80',
|
||
'completedLength': '34896138',
|
||
'connections': '0',
|
||
'dir': '/downloads',
|
||
'downloadSpeed': '0',
|
||
'errorCode': '0',
|
||
'files': [{'index': '1',
|
||
'length': '34896138',
|
||
'completedLength': '34896138',
|
||
'path': '/downloads/file',
|
||
'selected': 'true',
|
||
'uris': [{'status': 'used',
|
||
'uri': 'http://example.org/file'}]}],
|
||
'gid': '2089b05ecca3d829',
|
||
'numPieces': '17',
|
||
'pieceLength': '2097152',
|
||
'status': 'complete',
|
||
'totalLength': '34896138',
|
||
'uploadLength': '0',
|
||
'uploadSpeed': '0'}
|
||
|
||
Следующий пример получает информацию об определенных полях, который вас
|
||
интересуют::
|
||
|
||
>>> r = s.aria2.tellStatus('2089b05ecca3d829', ['gid', 'totalLength', 'completedLength'])
|
||
>>> pprint(r)
|
||
{'completedLength': '34896138', 'gid': '2089b05ecca3d829', 'totalLength': '34896138'}
|
||
|
||
.. function:: aria2.getUris(gid)
|
||
|
||
Этот метод возвращает URI, используемые в загрузке, которая обозначена
|
||
*gid*. Параметр *gid* имеет тип строка. Ответ имеет тип массив, а элемент -
|
||
тип структура и содержит следующие поля. Поле имеет тип строка.
|
||
|
||
``uri``
|
||
URI
|
||
|
||
``status``
|
||
'used', если URI уже использован. 'waiting', если URI ожидает в очереди.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getUris',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': [{u'status': u'used',
|
||
u'uri': u'http://example.org/file'}]}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getUris('2089b05ecca3d829')
|
||
>>> pprint(r)
|
||
[{'status': 'used', 'uri': 'http://example.org/file'}]
|
||
|
||
.. function:: aria2.getFiles(gid)
|
||
|
||
Этот метод возвращает список файлов загрузки, которая обозначена
|
||
*gid*. Параметр *gid* имеет тип строка. Ответ имеет тип массив, а элемент -
|
||
тип структура и содержит следующие поля. Поле имеет тип строка.
|
||
|
||
``index``
|
||
Индекс файла. Начинается с 1. Последовательность файлов такая же, что и в
|
||
многофайловом торренте.
|
||
|
||
``path``
|
||
Путь к файлу.
|
||
|
||
``length``
|
||
Размер файла в байта.
|
||
|
||
``completedLength``
|
||
Загруженный объем файла в байтах. Обратите внимание, что вполне возможно,
|
||
что сумма completedLength меньше чем в методе
|
||
:func:`aria2.tellStatus`. Это потому, что completedLength в
|
||
:func:`aria2.getFiles` считаются только завершенные
|
||
блоки. С другой стороны, completedLength в
|
||
:func:`aria2.tellStatus` учитывает частично завершенные блоки.
|
||
|
||
``selected``
|
||
``true`` - если этот файл выбран параметром :option:`--select-file`. Если
|
||
параметр :option:`--select-file` не указан или это однофайловый торрент
|
||
или загрузка не торрент, то это значение всегда будет ``true``.
|
||
Иначе ``false``.
|
||
|
||
``uris``
|
||
Возвращает список URI для этого файла. Элемент списка такая же структура,
|
||
что используется в методе :func:`aria2.getUris`.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getFiles',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': [{u'index': u'1',
|
||
u'length': u'34896138',
|
||
u'completedLength': u'34896138',
|
||
u'path': u'/downloads/file',
|
||
u'selected': u'true',
|
||
u'uris': [{u'status': u'used',
|
||
u'uri': u'http://example.org/file'}]}]}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getFiles('2089b05ecca3d829')
|
||
>>> pprint(r)
|
||
[{'index': '1',
|
||
'length': '34896138',
|
||
'completedLength': '34896138',
|
||
'path': '/downloads/file',
|
||
'selected': 'true',
|
||
'uris': [{'status': 'used',
|
||
'uri': 'http://example.org/file'}]}]
|
||
|
||
.. function:: aria2.getPeers(gid)
|
||
|
||
Этот метод возвращает список пиров загрузки, которая обозначена
|
||
*gid*. Параметр *gid* имеет тип строка. Этот метод только для
|
||
BitTorrent. Ответ имеет тип массив, а элемент - тип структура и содержит
|
||
следующие поля. Поле имеет тип строка.
|
||
|
||
``peerId``
|
||
Закодированное ID пира.
|
||
|
||
``ip``
|
||
IP-адрес пира.
|
||
|
||
``port``
|
||
Номер порта пира.
|
||
|
||
``bitfield``
|
||
Шестнадцатеричное представление процесса загрузки. Старший бит соответствует
|
||
блоку с индексом 0. Бит устанавливается, если блок доступен и не
|
||
устанавливается, если блок отсутствует. Запасные биты в конце
|
||
устанавливаются в 0.
|
||
|
||
``amChoking``
|
||
``true`` - если этот клиент блокирует пира. Иначе ``false``.
|
||
|
||
``peerChoking``
|
||
``true`` - если пир блокирует этого клиента. Иначе ``false``.
|
||
|
||
``downloadSpeed``
|
||
Скорость загрузки (байт/сек), с которой этот клиент получает от пира.
|
||
|
||
``uploadSpeed``
|
||
Скорость выгрузки (байт/сек), с которой этот клиент отдает пиру.
|
||
|
||
``seeder``
|
||
``true`` - если этот клиент является сидом. Иначе ``false``.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getPeers',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': [{u'amChoking': u'true',
|
||
u'bitfield': u'ffffffffffffffffffffffffffffffffffffffff',
|
||
u'downloadSpeed': u'10602',
|
||
u'ip': u'10.0.0.9',
|
||
u'peerChoking': u'false',
|
||
u'peerId': u'aria2%2F1%2E10%2E5%2D%87%2A%EDz%2F%F7%E6',
|
||
u'port': u'6881',
|
||
u'seeder': u'true',
|
||
u'uploadSpeed': u'0'},
|
||
{u'amChoking': u'false',
|
||
u'bitfield': u'ffffeff0fffffffbfffffff9fffffcfff7f4ffff',
|
||
u'downloadSpeed': u'8654',
|
||
u'ip': u'10.0.0.30',
|
||
u'peerChoking': u'false',
|
||
u'peerId': u'bittorrent client758',
|
||
u'port': u'37842',
|
||
u'seeder': u'false',
|
||
u'uploadSpeed': u'6890'}]}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getPeers('2089b05ecca3d829')
|
||
>>> pprint(r)
|
||
[{'amChoking': 'true',
|
||
'bitfield': 'ffffffffffffffffffffffffffffffffffffffff',
|
||
'downloadSpeed': '10602',
|
||
'ip': '10.0.0.9',
|
||
'peerChoking': 'false',
|
||
'peerId': 'aria2%2F1%2E10%2E5%2D%87%2A%EDz%2F%F7%E6',
|
||
'port': '6881',
|
||
'seeder': 'true',
|
||
'uploadSpeed': '0'},
|
||
{'amChoking': 'false',
|
||
'bitfield': 'ffffeff0fffffffbfffffff9fffffcfff7f4ffff',
|
||
'downloadSpeed': '8654',
|
||
'ip': '10.0.0.30',
|
||
'peerChoking': 'false',
|
||
'peerId': 'bittorrent client758',
|
||
'port': '37842',
|
||
'seeder': 'false,
|
||
'uploadSpeed': '6890'}]
|
||
|
||
.. function:: aria2.getServers(gid)
|
||
|
||
Этот метод возвращает текущие подключенные HTTP(S)/FTP-серверы загрузки,
|
||
которая обозначена *gid*. Параметр *gid* имеет тип строка. Ответ имеет тип
|
||
массив, а элемент - тип структура и содержит следующие поля. Поле имеет тип
|
||
строка.
|
||
|
||
``index``
|
||
Индекс файла. Начинается с 1. Последовательность файлов такая же, что и в
|
||
многофайловом торренте.
|
||
|
||
``servers``
|
||
Список структур, которые содержат следующие поля.
|
||
|
||
``uri``
|
||
Первоначально добавленный URI.
|
||
|
||
``currentUri``
|
||
Это URI в настоящее время используется для загрузки. Если происходит
|
||
перенаправление, currentUri и uri могут отличаться.
|
||
|
||
``downloadSpeed``
|
||
Скорость загрузки (байт/сек)
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getServers',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': [{u'index': u'1',
|
||
u'servers': [{u'currentUri': u'http://example.org/file',
|
||
u'downloadSpeed': u'10467',
|
||
u'uri': u'http://example.org/file'}]}]}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getServers('2089b05ecca3d829')
|
||
>>> pprint(r)
|
||
[{'index': '1',
|
||
'servers': [{'currentUri': 'http://example.org/dl/file',
|
||
'downloadSpeed': '20285',
|
||
'uri': 'http://example.org/file'}]}]
|
||
|
||
.. function:: aria2.tellActive([keys])
|
||
|
||
Этот метод возвращает список активных загрузок. Ответ имеет тип массив и его
|
||
элемент такая же структура, которая возвращается методом
|
||
:func:`aria2.tellStatus`. За разъяснениями о
|
||
параметре 'keys', обратитесь к методу
|
||
:func:`aria2.tellStatus`.
|
||
|
||
.. function:: aria2.tellWaiting(offset, num, [keys])
|
||
|
||
Этот метод возвращает список ожидающих загрузок, включая приостановленные
|
||
загрузки. *offset* имеет целочисленный тип и указывает смещение, начиная от
|
||
ожидающей загрузки. *num* имеет целочисленный тип и указывает число
|
||
возвращаемых загрузок. За разъяснениями о параметре 'keys', обратитесь к
|
||
методу :func:`aria2.tellStatus`.
|
||
|
||
Если смещение положительное целое число, то этот метод возвращает загрузки в
|
||
диапазоне [*offset*, *offset*+*num*).
|
||
|
||
*offset* может быть отрицательным целым числом. *offset* == -1 указывает на
|
||
последнею загрузку, которая ожидает в очереди, а *offset* == -2 указывает на
|
||
загрузку перед последней, и так далее. Загрузки в ответе находятся в
|
||
обратном порядке.
|
||
|
||
Например, допустим, что есть три загрузки "A","B" и "C", в этом порядке,
|
||
которые ожидают. ``aria2.tellWaiting(0, 1)`` возвратит ``["A"]``.
|
||
``aria2.tellWaiting(1, 2)`` возвратит ``["B", "C"]``.
|
||
``aria2.tellWaiting(-1, 2)`` возвратит ``["C", "B"]``.
|
||
|
||
Ответ имеет тип массив и его элемент такая же структура, которая
|
||
возвращается методом :func:`aria2.tellStatus`.
|
||
|
||
.. function:: aria2.tellStopped(offset, num, [keys])
|
||
|
||
Этот метод возвращает список остановленных загрузок. *offset* имеет
|
||
целочисленный тип и указывает смещение, начиная с самой старой
|
||
загрузки. *num* имеет целочисленный тип и указывает число возвращаемых
|
||
загрузок. За разъяснениями о параметре 'keys', обратитесь к методу
|
||
:func:`aria2.tellStatus`.
|
||
|
||
*offset* и *num* имеют такую же семантику, как и в методе
|
||
:func:`aria2.tellWaiting`.
|
||
|
||
Ответ имеет тип массив и его элемент такая же структура, которая
|
||
возвращается методом :func:`aria2.tellStatus`.
|
||
|
||
.. function:: aria2.changePosition(gid, pos, how)
|
||
|
||
Этот метод меняет позицию загрузки, которая обозначена *gid*. *pos* имеет
|
||
целочисленный тип. *how* имеет тип строка. Если *how* - ``POS_SET``, то это
|
||
переместит загрузку на позицию, относительно начала очереди. Если *how* -
|
||
``POS_CUR``, это переместит загрузку на позицию, относительно текущей
|
||
позиции. Если *how* - ``POS_END``, это переместит загрузку на позицию,
|
||
относительно конца очереди. Если целевая позиция меньше чем 0 или за
|
||
пределами конца очереди, это переместит загрузку в начало или конец очереди
|
||
соответственно. Ответ имеет целочисленный тип и является целевой позицией.
|
||
|
||
Например, если GID#2089b05ecca3d829 размещается на позиции 3,
|
||
``aria2.changePosition('2089b05ecca3d829', -1, 'POS_CUR')``
|
||
изменит его позицию на 2. Дополнительно
|
||
``aria2.changePosition('2089b05ecca3d829', 0, 'POS_SET')``
|
||
изменит его позицию на 0 (начало очереди).
|
||
|
||
Следующие примеры перемещают загрузку GID#2089b05ecca3d829 в начало
|
||
очереди ожидания.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.changePosition',
|
||
... 'params':['2089b05ecca3d829', 0, 'POS_SET']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer', u'jsonrpc': u'2.0', u'result': 0}
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.changePosition('2089b05ecca3d829', 0, 'POS_SET')
|
||
0
|
||
|
||
.. function:: aria2.changeUri(gid, fileIndex, delUris, addUris[, position])
|
||
|
||
Этот метод удаляет URI в *delUris* из загрузки и добавляет URI в *addUris* к
|
||
загрузке, которая обозначена *gid*. *delUris* и *addUris* являются списком
|
||
строк. Загрузка может содержать несколько файлов и URI прилагаются к каждому
|
||
файлу. *fileIndex* используется, чтобы выбрать файл для удаления/подключения
|
||
заданных URI. *fileIndex* начинается с 1. *position* используется для
|
||
указания, куда будут вставлены URI в существующем списке ожидающих
|
||
URI. *position* начинается с 0. Когда *position* пропущено, URI добавляются
|
||
в конец списка. Этот метод сначала выполняет удаление, а потом
|
||
добавление. *position* это позиция после URI, которые будут удалены, а не
|
||
позиция, когда метод вызывается. При удалении URI, если одинаковые URI
|
||
существуют в загрузке, только один из них будет удален, для каждого URI в
|
||
*delUris*. Другими словами, есть три URI ``http://example.org/aria2`` и вы
|
||
хотите удалить их все, вы должны указать (по крайней мере) 3
|
||
``http://example.org/aria2`` в *delUris*. Этот метод возвращает список,
|
||
который содержит 2 целых числа. Первое - количество удаленных URI. Второе -
|
||
количество добавленных URI.
|
||
|
||
Следующие примеры добавляют 1 URI ``http://example.org/file`` к файлу
|
||
с индексом ``1``, принадлежащий загрузке GID#2089b05ecca3d829.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.changeUri',
|
||
... 'params':['2089b05ecca3d829', 1, [],
|
||
['http://example.org/file']]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer', u'jsonrpc': u'2.0', u'result': [0, 1]}
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.changeUri('2089b05ecca3d829', 1, [],
|
||
['http://example.org/file'])
|
||
[0, 1]
|
||
|
||
.. function:: aria2.getOption(gid)
|
||
|
||
Этот метод возвращает параметры загрузки, которая обозначена *gid*. Ответ
|
||
имеет тип структура. Ее поля - это название параметра. Поле имеет тип
|
||
строка. Обратите внимание, что этот метод не возвращает параметры, которые
|
||
не имеют значение по умолчанию и не были заданы параметрами командной
|
||
строки, конфигурационными файлами или RPC-методами.
|
||
|
||
Следующие примеры получают параметры загрузки GID#2089b05ecca3d829.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getOption',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': {u'allow-overwrite': u'false',
|
||
u'allow-piece-length-change': u'false',
|
||
u'always-resume': u'true',
|
||
u'async-dns': u'true',
|
||
...
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getOption('2089b05ecca3d829')
|
||
>>> pprint(r)
|
||
{'allow-overwrite': 'false',
|
||
'allow-piece-length-change': 'false',
|
||
'always-resume': 'true',
|
||
'async-dns': 'true',
|
||
....
|
||
|
||
.. function:: aria2.changeOption(gid, options)
|
||
|
||
Этот метод изменяет динамически параметры загрузки, которая обозначена
|
||
*gid*. *gid* имеет тип строка. *options* имеет тип структура. Доступны
|
||
следующие параметры для активных загрузок:
|
||
|
||
* :option:`bt-max-peers <--bt-max-peers>`
|
||
* :option:`bt-request-peer-speed-limit <--bt-request-peer-speed-limit>`
|
||
* :option:`bt-remove-unselected-file <--bt-remove-unselected-file>`
|
||
* :option:`force-save <--force-save>`
|
||
* :option:`max-download-limit <--max-download-limit>`
|
||
* :option:`max-upload-limit <-u>`
|
||
|
||
Для ожидающих или приостановленных загрузок, в дополнение к выше
|
||
перечисленным параметрам, доступны параметры, перечисленные в подразделе
|
||
`Входной файл`_, исключая следующие параметры:
|
||
:option:`dry-run <--dry-run>`,
|
||
:option:`metalink-base-uri <--metalink-base-uri>`,
|
||
:option:`parameterized-uri <-P>`, :option:`pause <--pause>`, :option:`piece-length <--piece-length>` и
|
||
:option:`rpc-save-upload-metadata <--rpc-save-upload-metadata>`.
|
||
Этот метод возвращает ``OK``, в случае успеха.
|
||
|
||
Следующие примеры устанавливают параметр
|
||
:option:`max-download-limit <--max-download-limit>`
|
||
в ``20K`` для загрузки GID#2089b05ecca3d829.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.changeOption',
|
||
... 'params':['2089b05ecca3d829',
|
||
... {'max-download-limit':'10K'}]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer', u'jsonrpc': u'2.0', u'result': u'OK'}
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.changeOption('2089b05ecca3d829', {'max-download-limit':'20K'})
|
||
'OK'
|
||
|
||
.. function:: aria2.getGlobalOption()
|
||
|
||
Этот метод возвращает глобальные параметры. Ответ имеет тип структура. Ее
|
||
поля - это название параметра. Поле имеет тип строка. Обратите внимание, что
|
||
этот метод не возвращает параметры, которые не имеют значение по умолчанию и
|
||
не были заданы параметрами командной строки, конфигурационными файлами или
|
||
RPC-методами. Так как глобальные параметры используются в качестве шаблона
|
||
для вновь добавляемой загрузки, ответ содержит поля возвращаемые методом
|
||
:func:`aria2.getOption`.
|
||
|
||
.. function:: aria2.changeGlobalOption(options)
|
||
|
||
Этот метод изменяет динамически глобальные параметры. *options* имеет тип
|
||
структура. Доступны следующие параметры:
|
||
|
||
* :option:`download-result <--download-result>`
|
||
* :option:`log <-l>`
|
||
* :option:`log-level <--log-level>`
|
||
* :option:`max-concurrent-downloads <-j>`
|
||
* :option:`max-download-result <--max-download-result>`
|
||
* :option:`max-overall-download-limit <--max-overall-download-limit>`
|
||
* :option:`max-overall-upload-limit <--max-overall-upload-limit>`
|
||
* :option:`save-cookies <--save-cookies>`
|
||
* :option:`save-session <--save-session>`
|
||
* :option:`server-stat-of <--server-stat-of>`
|
||
|
||
В дополнение к ним, параметры перечисленные в подразделе `Входной файл`_, исключая следующие параметры:
|
||
:option:`checksum <--checksum>`, :option:`index-out <-O>`,
|
||
:option:`out <-o>`, :option:`pause <--pause>` и
|
||
:option:`select-file <--select-file>`.
|
||
|
||
Используя параметр :option:`log <-l>`, вы можете динамически
|
||
начинать вести журнал событий или изменять файл журнала событий. Чтобы
|
||
остановить ведение журнала событий, задайте пустую строку ("") в качестве
|
||
значения параметра. Обратите внимание, что файл журнала событий всегда
|
||
открыт в режиме добавления. Этот метод возвращает ``OK``, в случае успеха.
|
||
|
||
.. function:: aria2.getGlobalStat()
|
||
|
||
Этот метод возвращает глобальную статистику по скорости загрузки и скорости
|
||
отдачи. Ответ имеет тип структура и содержит следующие поля. Поле имеет тип
|
||
строка.
|
||
|
||
``downloadSpeed``
|
||
Общая скорость загрузки (байт/сек).
|
||
|
||
``uploadSpeed``
|
||
Общая скорость отдачи (байт/сек).
|
||
|
||
``numActive``
|
||
Количество активных загрузок.
|
||
|
||
``numWaiting``
|
||
Количество ожидающих загрузок.
|
||
|
||
``numStopped``
|
||
Количество остановленных загрузок.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getGlobalStat'})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': {u'downloadSpeed': u'21846',
|
||
u'numActive': u'2',
|
||
u'numStopped': u'0',
|
||
u'numWaiting': u'0',
|
||
u'uploadSpeed': u'0'}}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getGlobalStat()
|
||
>>> pprint(r)
|
||
{'downloadSpeed': '23136',
|
||
'numActive': '2',
|
||
'numStopped': '0',
|
||
'numWaiting': '0',
|
||
'uploadSpeed': '0'}
|
||
|
||
.. function:: aria2.purgeDownloadResult()
|
||
|
||
Этот метод очищает, для освобождения памяти, завершенные/ошибка/удаленные
|
||
загрузки. Метод возвращает ``OK``.
|
||
|
||
.. function:: aria2.removeDownloadResult(gid)
|
||
|
||
Этот метод удаляет из памяти завершенную/ошибка/удаленную загрузку, которая
|
||
обозначена *gid*. Метод возвращает ``OK``, в случае успеха.
|
||
|
||
Следующие примеры удаляют результат загрузки GID#2089b05ecca3d829.
|
||
|
||
**Пример JSON-RPC**
|
||
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.removeDownloadResult',
|
||
... 'params':['2089b05ecca3d829']})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer', u'jsonrpc': u'2.0', u'result': u'OK'}
|
||
|
||
**Пример XML-RPC**
|
||
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.removeDownloadResult('2089b05ecca3d829')
|
||
'OK'
|
||
|
||
.. function:: aria2.getVersion()
|
||
|
||
Этот метод возвращает версию программы и список включенных
|
||
возможностей. Ответ имеет тип структура и содержит следующие поля.
|
||
|
||
``version``
|
||
Номер версии программы в строке.
|
||
|
||
``enabledFeatures``
|
||
Список включенных возможностей. Каждое имя возможности имеет тип строка.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getVersion'})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': {u'enabledFeatures': [u'Async DNS',
|
||
u'BitTorrent',
|
||
u'Firefox3 Cookie',
|
||
u'GZip',
|
||
u'HTTPS',
|
||
u'Message Digest',
|
||
u'Metalink',
|
||
u'XML-RPC'],
|
||
u'version': u'1.11.0'}}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> from pprint import pprint
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> r = s.aria2.getVersion()
|
||
>>> pprint(r)
|
||
{'enabledFeatures': ['Async DNS',
|
||
'BitTorrent',
|
||
'Firefox3 Cookie',
|
||
'GZip',
|
||
'HTTPS',
|
||
'Message Digest',
|
||
'Metalink',
|
||
'XML-RPC'],
|
||
'version': '1.11.0'}
|
||
|
||
.. function:: aria2.getSessionInfo()
|
||
|
||
Этот метод возвращает информацию о сессии. Ответ имеет тип структура и
|
||
содержит следующие поля.
|
||
|
||
``sessionId``
|
||
ID сессии, которое генерируется каждый раз, при запуске aria2.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.getSessionInfo'})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer',
|
||
u'jsonrpc': u'2.0',
|
||
u'result': {u'sessionId': u'cd6a3bc6a1de28eb5bfa181e5f6b916d44af31a9'}}
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> s.aria2.getSessionInfo()
|
||
{'sessionId': 'cd6a3bc6a1de28eb5bfa181e5f6b916d44af31a9'}
|
||
|
||
.. function:: aria2.shutdown()
|
||
|
||
Этот метод закрывает aria2. Метод возвращает ``OK``.
|
||
|
||
.. function:: aria2.forceShutdown()
|
||
|
||
Этот метод закрывает aria2. Метод действует подобно
|
||
:func:`aria2.shutdown`, за исключением того, что
|
||
метод выполняется без каких-либо действий, которые требует времени, связь с
|
||
BitTorrent-трекером пропускается. Метод возвращает ``OK``.
|
||
|
||
.. function:: system.multicall(methods)
|
||
|
||
Этот метод объединяет несколько вызовов методов в один запрос. *methods*
|
||
имеет тип массив, а элемент является структурой. Структура содержит два
|
||
поля: ``methodName`` и ``params``. ``methodName`` - это имя вызываемого метода, а
|
||
``params`` - содержит параметры к методу. Метод возвращает массив
|
||
ответов. Элемент массива будет одним из двух: массивом из одного элемента,
|
||
который содержит возвращаемое значение, для каждого вызываемого метода или
|
||
структурой с ошибками в полях, если вызов объединенного метода завершился
|
||
неудачно.
|
||
|
||
В следующих примерах мы добавляем 2 загрузки. Первая -
|
||
``http://example.org/file`` и вторая - один файл ``file.torrent``.
|
||
|
||
**Пример JSON-RPC**
|
||
::
|
||
|
||
>>> import urllib2, json, base64
|
||
>>> from pprint import pprint
|
||
>>> jsonreq = json.dumps({'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'system.multicall',
|
||
... 'params':[[{'methodName':'aria2.addUri',
|
||
... 'params':[['http://example.org']]},
|
||
... {'methodName':'aria2.addTorrent',
|
||
... 'params':[base64.b64encode(open('file.torrent').read())]}]]})
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
{u'id': u'qwer', u'jsonrpc': u'2.0', u'result': [[u'2089b05ecca3d829'], [u'd2703803b52216d1']]}
|
||
|
||
JSON-RPC также поддерживает пакетный запрос, который описывается в
|
||
спецификации JSON-RPC 2.0::
|
||
|
||
>>> jsonreq = json.dumps([{'jsonrpc':'2.0', 'id':'qwer',
|
||
... 'method':'aria2.addUri',
|
||
... 'params':[['http://example.org']]},
|
||
... {'jsonrpc':'2.0', 'id':'asdf',
|
||
... 'method':'aria2.addTorrent',
|
||
... 'params':[base64.b64encode(open('file.torrent').read())]}])
|
||
>>> c = urllib2.urlopen('http://localhost:6800/jsonrpc', jsonreq)
|
||
>>> pprint(json.loads(c.read()))
|
||
[{u'id': u'qwer', u'jsonrpc': u'2.0', u'result': u'2089b05ecca3d829'},
|
||
{u'id': u'asdf', u'jsonrpc': u'2.0', u'result': u'd2703803b52216d1'}]
|
||
|
||
**Пример XML-RPC**
|
||
::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> mc = xmlrpclib.MultiCall(s)
|
||
>>> mc.aria2.addUri(['http://example.org/file'])
|
||
>>> mc.aria2.addTorrent(xmlrpclib.Binary(open('file.torrent').read()))
|
||
>>> r = mc()
|
||
>>> tuple(r)
|
||
('2089b05ecca3d829', 'd2703803b52216d1')
|
||
|
||
Обработка ошибок
|
||
~~~~~~~~~~~~~~~~
|
||
|
||
В JSON-RPC, aria2 возвращает JSON-объект, который содержит код ошибки в коде
|
||
и сообщение об ошибке в сообщении.
|
||
|
||
В XML-RPC, aria2 возвращает faultCode=1 и сообщение об ошибке в faultString.
|
||
|
||
.. _rpc_options:
|
||
|
||
Параметры
|
||
~~~~~~~~~
|
||
|
||
Такие же параметры, что доступны для :option:`--input-file <-i>`. Смотрите
|
||
подраздел `Входной файл`_ для полного списка параметров.
|
||
|
||
В структуре, имя элемента - это имя параметра (без ``--``), а значение
|
||
элемента - аргумент в виде строки.
|
||
|
||
Пример JSON-RPC
|
||
^^^^^^^^^^^^^^^
|
||
::
|
||
|
||
{'split':'1', 'http-proxy':'http://proxy/'}
|
||
|
||
|
||
Пример XML-RPC
|
||
^^^^^^^^^^^^^^
|
||
.. code-block:: xml
|
||
|
||
<struct>
|
||
<member>
|
||
<name>split</name>
|
||
<value><string>1</string></value>
|
||
</member>
|
||
<member>
|
||
<name>http-proxy</name>
|
||
<value><string>http://proxy/</string></value>
|
||
</member>
|
||
</struct>
|
||
|
||
|
||
Параметры :option:`header <--header>` и :option:`index-out <-O>` допускают
|
||
нескольких определений в командной строке. Поскольку имя должно быть
|
||
уникальным в структуре (многие реализации библиотеки XML-RPC использует хэш
|
||
или словарь для структуры), одной строки недостаточно. Для преодоления этой
|
||
ситуации, они могут взять массив в качестве значения, а также строку.
|
||
|
||
Пример JSON-RPC
|
||
^^^^^^^^^^^^^^^
|
||
::
|
||
|
||
{'header':['Accept-Language: ja', 'Accept-Charset: utf-8']}
|
||
|
||
|
||
Пример XML-RPC
|
||
^^^^^^^^^^^^^^
|
||
.. code-block:: xml
|
||
|
||
<struct>
|
||
<member>
|
||
<name>header</name>
|
||
<value>
|
||
<array>
|
||
<data>
|
||
<value><string>Accept-Language: ja</string></value>
|
||
<value><string>Accept-Charset: utf-8</string></value>
|
||
</data>
|
||
</array>
|
||
</value>
|
||
</member>
|
||
</struct>
|
||
|
||
|
||
Следующий пример добавляет загрузку с двумя параметрами: dir и
|
||
header. Параметр header имеет 2 значения, поэтому используется список::
|
||
|
||
>>> import xmlrpclib
|
||
>>> s = xmlrpclib.ServerProxy('http://localhost:6800/rpc')
|
||
>>> opts = dict(dir='/tmp',
|
||
... header=['Accept-Language: ja',
|
||
... 'Accept-Charset: utf-8'])
|
||
>>> s.aria2.addUri(['http://example.org/file'], opts)
|
||
'1'
|
||
|
||
|
||
JSON-RPC используя HTTP GET
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
JSON-RPC-интерфейс также поддерживает запрос через HTTP GET. Схема
|
||
кодирования в GET параметров основанных на JSON-RPC через HTTP Спецификация
|
||
[2008-1-15(RC1)]. Кодирование параметров через GET следующие::
|
||
|
||
/jsonrpc?method=METHOD_NAME&id=ID¶ms=BASE64_ENCODED_PARAMS
|
||
|
||
|
||
``method`` и ``id`` всегда обрабатывается как JSON-строка и они должны быть
|
||
в кодировке UTF-8.
|
||
|
||
Например, закодированная строка ``aria2.tellStatus('2089b05ecca3d829')`` с
|
||
``id='foo'`` выглядит так::
|
||
|
||
/jsonrpc?method=aria2.tellStatus&id=foo¶ms=WyIyMDg5YjA1ZWNjYTNkODI5Il0%3D
|
||
|
||
|
||
Параметр ``params`` - это JSON-массив в Base64-кодировке, который обычно
|
||
появляется в атрибуте ``params`` в JSON-RPC-запросе объекта. В примере выше,
|
||
params - ``["2089b05ecca3d829"]``, следовательно::
|
||
|
||
["2089b05ecca3d829"] --(Base64)--> WyIyMDg5YjA1ZWNjYTNkODI5Il0=
|
||
--(Кодирование процентом)--> WyIyMDg5YjA1ZWNjYTNkODI5Il0%3D
|
||
|
||
|
||
JSON-RPC-интерфейс поддерживает JSONP. Вы можете определить функцию
|
||
обратного вызова в параметре ``jsoncallback``::
|
||
|
||
/jsonrpc?method=aria2.tellStatus&id=foo¶ms=WyIyMDg5YjA1ZWNjYTNkODI5Il0%3D&jsoncallback=cb
|
||
|
||
Для пакетного запроса, параметры ``method`` и ``id`` не должны быть
|
||
указаны. Полный запрос должен быть определен в параметре
|
||
``params``. Например, пакетный запрос::
|
||
|
||
[{'jsonrpc':'2.0', 'id':'qwer', 'method':'aria2.getVersion'},
|
||
{'jsonrpc':'2.0', 'id':'asdf', 'method':'aria2.tellActive'}]
|
||
|
||
|
||
должен кодироваться так::
|
||
|
||
/jsonrpc?params=W3sianNvbnJwYyI6ICIyLjAiLCAiaWQiOiAicXdlciIsICJtZXRob2QiOiAiYXJpYTIuZ2V0VmVyc2lvbiJ9LCB7Impzb25ycGMiOiAiMi4wIiwgImlkIjogImFzZGYiLCAibWV0aG9kIjogImFyaWEyLnRlbGxBY3RpdmUifV0%3D
|
||
|
||
|
||
JSON-RPC через WebSocket
|
||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
JSON-RPC через WebSocket использует тот же самый метод сигнатур и формат
|
||
ответа как у JSON-RPC через HTTP. Поддерживаемый WebSocket, версия 13,
|
||
детально описан в :rfc:`6455`.
|
||
|
||
Для отправки RPC-запроса на RPC-сервер, надо отправлять преобразованную в
|
||
последовательную форму JSON-строку в текстовом фрейме. Ответ от RPC-сервера
|
||
также доставляется в текстовом фрейме.
|
||
|
||
RPC-сервер отправит уведомление клиенту. Уведомление является
|
||
однонаправленным, поэтому клиент, который получил уведомление, не должен
|
||
отвечать на него. Метод сигнатуры уведомления такой же, как нормальный метод
|
||
запроса, но отсутствует идентификатор ключа. Значение, связанное с ключом
|
||
params, является данными, которые переносит это уведомление. Формат этого
|
||
значения варьируется в зависимости от метода уведомления. Определены
|
||
следующие методы уведомления.
|
||
|
||
|
||
.. function:: aria2.onDownloadStart(event)
|
||
|
||
|
||
Это уведомление будет оправлено, если загрузка запущена. Параметр *event*
|
||
имеет тип структура и содержит следующие поля. Поле имеет тип строка.
|
||
|
||
``gid``
|
||
GID загрузки.
|
||
|
||
|
||
.. function:: aria2.onDownloadPause(event)
|
||
|
||
|
||
Это уведомление будет оправлено, если загрузка приостановлена. *event* -
|
||
такая же структура, как параметр *event* в методе
|
||
:func:`aria2.onDownloadStart`.
|
||
|
||
|
||
.. function:: aria2.onDownloadStop(event)
|
||
|
||
|
||
Это уведомление будет оправлено, если загрузка остановлена
|
||
пользователем. *event* - такая же структура, как параметр *event* в методе
|
||
:func:`aria2.onDownloadStart`.
|
||
|
||
|
||
.. function:: aria2.onDownloadComplete(event)
|
||
|
||
|
||
Это уведомление будет оправлено, если загрузка завершена. В
|
||
BitTorrent-загрузках, это уведомление отправляется, когда загрузка завершена
|
||
и сидирование окончено. *event* - такая же структура, как параметр *event* в
|
||
методе :func:`aria2.onDownloadStart`.
|
||
|
||
|
||
.. function:: aria2.onDownloadError(event)
|
||
|
||
|
||
Это уведомление будет оправлено, если загрузка остановлена из-за
|
||
ошибки. *event* - такая же структура, как параметр *event* в методе
|
||
:func:`aria2.onDownloadStart`.
|
||
|
||
|
||
.. function:: aria2.onBtDownloadComplete(event)
|
||
|
||
|
||
Это уведомление будет оправлено, если загрузка в BitTorrent завершена (но
|
||
сидирование может быть не закончено). *event* - такая же структура, как
|
||
параметр *event* в методе
|
||
:func:`aria2.onDownloadStart`.
|
||
|
||
Пример кода XML-RPC-клиента
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
||
Следующий Ruby-скрипт добавляет ``http://localhost/aria2.tar.bz2``, с
|
||
параметром :option:`--dir=/downloads, <-d>` в aria2c, которая работает на
|
||
localhost и отображает ответ:
|
||
|
||
.. code-block:: ruby
|
||
|
||
#!/usr/bin/env ruby
|
||
|
||
require 'xmlrpc/client'
|
||
require 'pp'
|
||
|
||
client=XMLRPC::Client.new2("http://localhost:6800/rpc")
|
||
|
||
options={ "dir" => "/downloads" }
|
||
result=client.call("aria2.addUri", [ "http://localhost/aria2.tar.bz2" ], options)
|
||
|
||
pp result
|
||
|
||
|
||
Если вы любитель Python, то можете использовать xmlrpclib(для Python3.x,
|
||
используйте взамен xmlrpc.client) для взаимодействия с aria2::
|
||
|
||
import xmlrpclib
|
||
from pprint import pprint
|
||
|
||
s = xmlrpclib.ServerProxy("http://localhost:6800/rpc")
|
||
r = s.aria2.addUri(["http://localhost/aria2.tar.bz2"], {"dir":"/downloads"})
|
||
pprint(r)
|
||
|
||
РАЗНОЕ
|
||
------
|
||
|
||
Консольный индикатор
|
||
~~~~~~~~~~~~~~~~~~~~
|
||
|
||
При загрузке файлов, aria2 отображает консольный индикатор, сообщающий о
|
||
прогрессе загрузок. Консольный индикатор имеет вид::
|
||
|
||
[#2089b0 400.0KiB/33.2MiB(1%) CN:1 DL:115.7KiB ETA:4m51s]
|
||
|
||
Этот раздел описывает значение чисел и строк.
|
||
|
||
``#NNNNNN``
|
||
Первые 6 символов GID в виде шестнадцатеричной строки. GID является
|
||
уникальным ID для каждой загрузки.
|
||
|
||
``X/Y(Z%)``
|
||
Загруженный размер, общий размер и загруженный размер
|
||
в процентах. Если используется :option:`--select-file`, то
|
||
значение является суммой выбранных файлов.
|
||
|
||
``SEED``
|
||
Рейтинг. Клиент сейчас сидирует(раздает). После завершения
|
||
BitTorrent-загрузки, этим заменяется информация о размере.
|
||
|
||
``CN``
|
||
Количество соединений, установленных клиентом.
|
||
|
||
``SD``
|
||
Количество сидов, к которым сейчас подключен клиент.
|
||
|
||
``DL``
|
||
Скорость загрузки (байт/сек).
|
||
|
||
``UL``
|
||
Скорость выгрузки (байт/сек) и количество выгруженных байт.
|
||
|
||
``ETA``
|
||
Ожидаемое время завершения.
|
||
|
||
При больше чем 1-ой загрузке, часть информации, описанной выше, будет
|
||
опущена, чтобы показать информации о нескольких загрузках. А общая скорость
|
||
загрузки и выгрузки будет показана в начале строки.
|
||
|
||
Когда aria2 выделяет место под файл или проверяет контрольную сумму, то при
|
||
этом дополнительно отображается их прогресс:
|
||
|
||
FileAlloc
|
||
GID, выделенный размер и общий размер в байтах.
|
||
|
||
Checksum
|
||
GID, проверенный размер и общий размер в байтах.
|
||
|
||
ПРИМЕРЫ
|
||
-------
|
||
|
||
Загрузка по HTTP/FTP
|
||
~~~~~~~~~~~~~~~~~~~~
|
||
Загрузка файла
|
||
^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c "http://host/file.zip"
|
||
|
||
|
||
.. note::
|
||
|
||
Для остановки загрузки, нажмите :kbd:`Ctrl-C`. Вы можете возобновить передачу,
|
||
запустив aria2c с теми же аргументами в том же каталоге. Вы можете изменить
|
||
URI, если они указывают на тот же самый файл.
|
||
|
||
Загрузка файла с 2-ух разных HTTP-серверов
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c "http://host/file.zip" "http://mirror/file.zip"
|
||
|
||
|
||
Загрузка файла с одно хоста, используя 2 соединения
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -x2 -k1M "http://host/file.zip"
|
||
|
||
|
||
Загрузка файла с HTTP- и FTP-серверов
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c "http://host1/file.zip" "ftp://host2/file.zip"
|
||
|
||
|
||
Одновременная загрузка файлов, перечисленных в текстовом файле
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -ifiles.txt -j2
|
||
|
||
.. note::
|
||
|
||
Параметр -j указывает количество параллельных загрузок.
|
||
|
||
Использование прокси-сервера
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
Для HTTP:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --http-proxy="http://proxy:8080" "http://host/file"
|
||
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --http-proxy="http://proxy:8080" --no-proxy="localhost,127.0.0.1,192.168.0.0/16" "http://host/file"
|
||
|
||
|
||
Для FTP:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --ftp-proxy="http://proxy:8080" "ftp://host/file"
|
||
|
||
|
||
.. note::
|
||
|
||
Смотрите для подробностей :option:`--http-proxy`,
|
||
:option:`--https-proxy`,
|
||
:option:`--ftp-proxy`, :option:`--all-proxy` и
|
||
:option:`--no-proxy`. Вы можете указать прокси в
|
||
переменных окружения. Смотрите раздел `ОКРУЖЕНИЕ`_.
|
||
|
||
Прокси-сервер с авторизацией
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --http-proxy="http://username:password@proxy:8080" "http://host/file"
|
||
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --http-proxy="http://proxy:8080" --http-proxy-user="username" --http-proxy-passwd="password" "http://host/file"
|
||
|
||
|
||
Загрузка Metalink
|
||
~~~~~~~~~~~~~~~~~
|
||
Загрузка файлов с удаленного Metalink
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --follow-metalink=mem "http://host/file.metalink"
|
||
|
||
|
||
Загрузка, используя локальный metalink-файл
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -p --lowest-speed-limit=4000 file.metalink
|
||
|
||
.. note::
|
||
|
||
Для остановки загрузки, нажмите :kbd:`Ctrl-C`. Вы можете возобновить передачу,
|
||
запустив aria2c с теми же аргументами в том же каталоге.
|
||
|
||
Загрузка нескольких локальных metalink-файлов
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -j2 file1.metalink file2.metalink
|
||
|
||
|
||
Загрузка только выбранных файлов, используя индекс
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --select-file=1-4,8 file.metalink
|
||
|
||
.. note::
|
||
|
||
Индекс выводится на консоль при использовании параметра -S.
|
||
|
||
Загрузка файла, используя локальный .metalink-файл с пользовательскими настройками
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --metalink-location=jp,us --metalink-version=1.1 --metalink-language=en-US file.metalink
|
||
|
||
|
||
Загрузка BitTorrent
|
||
~~~~~~~~~~~~~~~~~~~
|
||
Загрузка файлов из удаленного BitTorrent-файла
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --follow-torrent=mem "http://host/file.torrent"
|
||
|
||
|
||
Загрузка, используя локальный torrent-файл
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --max-upload-limit=40K file.torrent
|
||
|
||
.. note::
|
||
|
||
--max-upload-limit определяет максимальную скорость отдачи.
|
||
|
||
.. note::
|
||
|
||
Для остановки загрузки, нажмите :kbd:`Ctrl-C`. Вы можете возобновить передачу,
|
||
запустив aria2c с теми же аргументами в том же каталоге.
|
||
|
||
Загрузка, используя BitTorrent Magnet URI
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c "magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C&dn=aria2"
|
||
|
||
|
||
.. note::
|
||
|
||
Не забывайте заключать BitTorrent Magnet URI, в которой есть символ ``&``, в
|
||
одиночные(``'``) или двойные(``"``) кавычки.
|
||
|
||
Загрузка 2-х торрентов
|
||
^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -j2 file1.torrent file2.torrent
|
||
|
||
|
||
Загрузка файла, используя торрент и HTTP/FTP-сервер
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -Ttest.torrent "http://host1/file" "ftp://host2/file"
|
||
|
||
.. note::
|
||
|
||
Загрузка многофайлового торрента через HTTP/FTP не поддерживается.
|
||
|
||
Загрузка только выбранных файлов, используя индекс (обычно называют "выборочная загрузка")
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --select-file=1-4,8 file.torrent
|
||
|
||
.. note::
|
||
|
||
Индекс выводится на консоль при использовании параметра -S.
|
||
|
||
Указание имени выходного файла
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
||
Для указания выходного имени файла в BitTorrent-загрузках, вам нужно узнать
|
||
индекс файла в torrent-файле, используя параметр :option:`--show-files
|
||
<-S>`. Например, результат выглядит следующим образом::
|
||
|
||
idx|path/length
|
||
===+======================
|
||
1|dist/base-2.6.18.iso
|
||
|99.9MiB
|
||
---+----------------------
|
||
2|dist/driver-2.6.18.iso
|
||
|169.0MiB
|
||
---+----------------------
|
||
|
||
|
||
Сохраняет 'dist/base-2.6.18.iso' в '/tmp/mydir/base.iso' и
|
||
'dist/driver-2.6.18.iso' в '/tmp/dir/driver.iso', при использовании
|
||
следующей команды:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --dir=/tmp --index-out=1=mydir/base.iso --index-out=2=dir/driver.iso file.torrent
|
||
|
||
|
||
Изменение прослушиваемого порта для входящих соединений от пиров
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --listen-port=7000-7001,8000 file.torrent
|
||
|
||
.. note::
|
||
|
||
Т.к. aria2 не настраивает брандмауэр или маршрутизатор для перенаправления
|
||
портов, вам решать, как это сделать вручную.
|
||
|
||
Указать условие остановки программы после завершения загрузки торрента
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --seed-time=120 --seed-ratio=1.0 file.torrent
|
||
|
||
|
||
.. note::
|
||
|
||
В приведенном выше примере, программа завершается через 120 минут после
|
||
завершения загрузки или при достижении рейтинга сидирования 1.0.
|
||
|
||
Регулировка скорости отдачи
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --max-upload-limit=100K file.torrent
|
||
|
||
|
||
Включить IPv4 DHT
|
||
^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --enable-dht --dht-listen-port=6881 file.torrent
|
||
|
||
.. note::
|
||
|
||
DHT использует udp-порт. Так как aria2 не настраивает брандмауэр или
|
||
маршрутизатор для перенаправления портов, вам решать как это сделать
|
||
вручную.
|
||
|
||
Включить IPv6 DHT
|
||
^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --enable-dht6 --dht-listen-port=6881 --dht-listen-addr6=YOUR_GLOBAL_UNICAST_IPV6_ADDR
|
||
|
||
.. note::
|
||
|
||
aria2 совместно использует один и тот же порт между IPv4 и IPv6 DHT.
|
||
|
||
Добавить и удалить URI трекера
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
||
Удалить все URI анонса трекеров, описанных в file.torrent и взамен
|
||
использовать ``http://tracker1/announce`` и ``http://tracker2/announce``:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --bt-exclude-tracker="*"
|
||
--bt-tracker="http://tracker1/announce,http://tracker2/announce"
|
||
file.torrent
|
||
|
||
|
||
Больше расширенных возможностей для HTTP
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
Загрузить куки
|
||
^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --load-cookies=cookies.txt "http://host/file.zip"
|
||
|
||
.. note::
|
||
|
||
Вы можете использовать без изменения cookie-файл Firefox/Mozilla/Chromium.
|
||
|
||
Возобновление загрузки, которая начата в браузере или другой программе
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -c -s2 "http://host/partiallydownloadedfile.zip"
|
||
|
||
|
||
Клиентский сертификат авторизации для SSL/TLS
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --certificate=/path/to/mycert.pem --private-key=/path/to/mykey.pem https://host/file
|
||
|
||
.. note::
|
||
|
||
Указанный в :option:`--private-key` файл должен быть
|
||
расшифрован. Режим работы с исходно зашифрованным закрытым ключом не
|
||
определен.
|
||
|
||
Проверить узел при SSL/TLS, используя исходные CA-сертификаты
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --ca-certificate=/path/to/ca-certificates.crt --check-certificate https://host/file
|
||
|
||
RPC
|
||
~~~
|
||
|
||
Шифрование RPC-транспорта с использованием SSL/TLS
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
||
Указать файл с сертификатом сервера и файл с закрытым ключом следующим
|
||
образом:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --enable-rpc --rpc-certificate=/path/to/server.crt --rpc-private-key=/path/to/server.key --rpc-secure
|
||
|
||
И еще больше расширенных возможностей
|
||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
Регулировка скорости загрузки
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --max-download-limit=100K file.metalink
|
||
|
||
|
||
Исправить поврежденную загрузку
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -V file.metalink
|
||
|
||
.. note::
|
||
|
||
При использовании BitTorrent или Metalink с контрольными суммами блоков
|
||
данных можно эффективно исправлять поврежденные загрузки.
|
||
|
||
Отклонить соединение, если скорость загрузки меньше чем определенное значение
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --lowest-speed-limit=10K file.metalink
|
||
|
||
|
||
Поддержка параметризованных URI
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
Вы можете определить набор частей:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c -P "http://{host1,host2,host3}/file.iso"
|
||
|
||
|
||
Вы можете определить числовую последовательность:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c -Z -P "http://host/image[000-100].png"
|
||
|
||
|
||
.. note::
|
||
|
||
Параметр -Z необходим, если все URI не указывают на один и тот же файл, как
|
||
в примере указанном выше.
|
||
|
||
Вы можете определить шаг счетчика:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c -Z -P "http://host/image[A-Z:2].png"
|
||
|
||
|
||
Проверка контрольной суммы
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c --checksum=sha-1=0192ba11326fe2298c8cb4de616f4d4140213837 http://example.org/file
|
||
|
||
|
||
Параллельные загрузки с произвольным числом URI, metalink, torrent
|
||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
.. code-block:: console
|
||
|
||
$ aria2c -j3 -Z "http://host/file1" file2.torrent file3.metalink
|
||
|
||
|
||
Шифрование BitTorrent
|
||
^^^^^^^^^^^^^^^^^^^^^
|
||
Шифровать всю полезную нагрузку используя ARC4:
|
||
|
||
.. code-block:: console
|
||
|
||
$ aria2c --bt-min-crypto-level=arc4 --bt-require-crypto=true file.torrent
|
||
|
||
|
||
СМОТРИТЕ ТАКЖЕ
|
||
--------------
|
||
Веб-сайт проекта: http://aria2.sourceforge.net/
|
||
|
||
Вики aria2: http://sourceforge.net/apps/trac/aria2/wiki
|
||
|
||
Домашняя страница Metalink: http://www.metalinker.org/
|
||
|
||
Описание формата Metalink: :rfc:`5854`
|
||
|
||
АВТОРСКОЕ ПРАВО
|
||
---------------
|
||
Авторское право (C) 2006, 2012 Tatsuhiro Tsujikawa
|
||
|
||
Эта программа является свободным программным обеспечением; вы можете
|
||
распространять его и/или изменять его в соответствии с условиями лицензии
|
||
GNU General Public License, опубликованной Free Software Foundation; либо
|
||
License версии 2, либо (по вашему выбору) любой более поздней версии.
|
||
|
||
Эта программа распространяется в надежде, что она будет полезной, но БЕЗ
|
||
КАКИХ-ЛИБО ГАРАНТИЙ, даже без подразумеваемых гарантий КОММЕРЧЕСКОЙ ЦЕННОСТИ
|
||
или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См. GNU General Public License для
|
||
более подробной информации.
|
||
|
||
Вы должны получить копию GNU General Public License вместе с этой
|
||
программой; если нет, напишите в Free Software Foundation, Inc., 51 Franklin
|
||
Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||
|
||
Кроме того, в качестве особого исключения, владельцы авторских прав дают
|
||
разрешение на ссылку части кода этой программы с библиотекой OpenSSL при
|
||
определенных условиях, как описано в каждом отдельном исходном файле, а
|
||
также распространять эту комбинацию вместе. Вы должны подчиняться GNU
|
||
General Public License во всех отношениях для всего используемого кода,
|
||
кроме OpenSSL. Если вы измените файл(ы) с этим исключением, вы можете
|
||
расширить это исключение для вашей версии файла(ов), но вы не обязаны делать
|
||
это. Если вы не хотите сделать это, удалите это заявление об исключении из
|
||
вашей версии. Если вы удалите это заявление об исключении из всех исходных
|
||
файлов в программе, то удалить его и здесь.
|
||
|
||
АВТОР ПЕРЕВОДА
|
||
--------------
|
||
ITriskTI <ITriskTI@gmail.com>
|
||
|
||
Если вы нашли ошибку, неточность в переводе или считаете, что переведено
|
||
неправильно, тогда, пожалуйста, сообщите мне на e-mail.
|
||
|
||
ПРИМЕЧАНИЕ
|
||
----------
|
||
Эта страница руководства может содержать не обязательно самую последнюю информацию.
|
||
Если есть некоторые противоречия между этой страницей руководства и фактическим
|
||
программным обеспечением, пожалуйста, обращайтесь к английской версии страницы
|
||
руководства.
|