| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761 | 
							- ARIA2C(1)
 
- =========
 
- Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
 
- :man source: Aria2
 
- :man manual: Aria2 Manual
 
- NAME
 
- ----
 
- aria2c - The ultra fast download utility
 
- SYNOPSIS
 
- --------
 
- aria2c ['OPTIONS'] ['URI' | 'MAGNET' | 'TORRENT_FILE' | 'METALINK_FILE']...
 
- DESCRIPTION
 
- -----------
 
- aria2 is a utility for downloading files. The supported protocols are
 
- HTTP(S), FTP, BitTorrent, and Metalink. aria2 can download a file from
 
- multiple sources/protocols and tries to utilize your maximum download
 
- bandwidth. It supports downloading a file from HTTP(S)/FTP and
 
- BitTorrent at the same time, while the data downloaded from
 
- HTTP(S)/FTP is uploaded to the BitTorrent swarm. Using Metalink's
 
- chunk checksums, aria2 automatically validates chunks of data while
 
- downloading a file like BitTorrent.
 
- OPTIONS
 
- -------
 
- Basic Options
 
- ~~~~~~~~~~~~~
 
- *-d*, *--dir*=DIR::
 
-   The directory to store the downloaded file.
 
- *-i*, *--input-file*=FILE::
 
-   Downloads URIs found in FILE. You can specify multiple URIs for a single
 
-   entity: separate URIs on a single line using the TAB character.
 
-   Reads input from stdin when '-' is specified.
 
-   The additional *out* and *dir* options can be specified after each line of
 
-   URIs. This optional line must start with white space(s).
 
-   See *Input File* subsection for details.
 
- *-l*, *--log*=LOG::
 
-   The file name of the log file. If '-' is specified, log is written to
 
-   stdout.
 
- *-j*, *--max-concurrent-downloads*=N::
 
-   Set maximum number of parallel downloads for every static (HTTP/FTP) URL,
 
-   torrent and metalink. See also *-s* and *-C* option.
 
-   Default: '5'
 
- *-V*, *--check-integrity*[='true'|'false']::
 
-   Check file integrity by validating piece hashes.
 
-   This option has effect only in BitTorrent and Metalink downloads with
 
-   chunk checksums.
 
-   Use this option to re-download a damaged portion of a file.
 
-   Default: 'false'
 
- *-c*, *--continue*::
 
-    Continue downloading a partially downloaded file.
 
-    Use this option to resume a download started by a web browser or another
 
-    program which downloads files sequentially from the beginning.
 
-    Currently this option is only applicable to HTTP(S)/FTP downloads.
 
- *-h*, *--help*[=TAG|KEYWORD]::
 
-    The help messages are classified with tags. A tag starts with
 
-    "#". For example, type "--help=#http" to get the usage for the
 
-    options tagged with "#http". If non-tag word is given, print the
 
-    usage for the options whose name includes that word.
 
-    Available Values: '#basic', '#advanced', '#http', '#https', '#ftp',
 
-    '#metalink', '#bittorrent', '#cookie', '#hook', '#file',
 
-    '#xml-rpc', '#experimental', '#all'
 
-    Default: '#basic'
 
- HTTP/FTP Options
 
- ~~~~~~~~~~~~~~~~
 
- *--all-proxy*=PROXY::
 
-   Use this proxy server for all protocols.
 
-   You can override this setting and specify a proxy server for a particular
 
-   protocol using *--http-proxy*, *--https-proxy* and *--ftp-proxy* options.
 
-   This affects all URLs.
 
-   The format of PROXY is [\http://][USER:PASSWORD@]HOST[:PORT]
 
- *--connect-timeout*=SEC::
 
-   Set the connect timeout in seconds to establish connection to
 
-   HTTP/FTP/proxy server. After the connection is established, this
 
-   option makes no effect and *--timeout* option is used instead.
 
-   Default: '60'
 
- *--dry-run*[='true'|'false']::
 
-   If 'true' is given, aria2 just checks whether the remote file is
 
-   available and doesn't download data. This option has effect on
 
-   HTTP/FTP download.  BitTorrent downloads are canceled if 'true' is
 
-   specified.  Default: 'false'
 
- *--lowest-speed-limit*=SPEED::
 
-   Close connection if download speed is lower than or equal to this
 
-   value(bytes per sec).
 
-   '0' means aria2 does not have a lowest speed limit.
 
-   You can append 'K' or 'M'(1K = 1024, 1M = 1024K).
 
-   This option does not affect BitTorrent downloads.
 
-   Default: '0'
 
- *--max-file-not-found*=NUM::
 
-   If aria2 receives `file not found' status from the remote HTTP/FTP
 
-   servers NUM times without getting a single byte, then force the
 
-   download to fail. Specify '0' to disable this option. This options is
 
-   effective only when using HTTP/FTP servers.
 
-   Default: '0'
 
- *-m*, *--max-tries*=N::
 
-   Set number of tries. '0' means unlimited.
 
-   Default: '5'
 
- *-n*, *--no-netrc*::
 
-   Disables netrc support. netrc support is enabled by default.
 
- *--no-proxy*=DOMAINS::
 
-   Specify comma separated hostnames or domains where proxy should not be
 
-   used.
 
- *-o*, *--out*=FILE::
 
-   The file name of the downloaded file.
 
- [NOTE]
 
- In Metalink or BitTorrent download you cannot specify file name.
 
- The file name specified here is only used when the URLs fed to aria2
 
- are done by command line without *-i*, *-Z* option. For example:
 
- aria2c -o myfile.zip "http://mirror1/file.zip" "http://mirror2/file.zip"
 
- *--proxy-method*=METHOD::
 
-   Set the method to use in proxy request.  'METHOD' is either 'get' or
 
-   'tunnel'. HTTPS downloads always use 'tunnel' regardless of this
 
-   option.
 
-   Default: 'get'
 
- *-R*, *--remote-time*[='true'|'false']::
 
-   Retrieve timestamp of the remote file from the remote HTTP/FTP
 
-   server and if it is available, apply it to the local file.
 
-   Default: 'false'
 
- *--server-stat-of*=FILE::
 
-   Specify the filename to which performance profile of the servers is
 
-   saved. You can load saved data using *--server-stat-if* option. See
 
-   *Server Performance Profile* subsection below for file format.
 
- *--server-stat-if*=FILE::
 
-   Specify the filename to load performance profile of the servers. The
 
-   loaded data will be used in some URI selector such as 'feedback'.
 
-   See also *--uri-selector* option. See *Server Performance Profile*
 
-   subsection below for file format.
 
- *--server-stat-timeout*=SEC::
 
-   Specifies timeout in seconds to invalidate performance profile of
 
-   the servers since the last contact to them.
 
-   Default: '86400' (24hours)
 
- *-s*, *--split*=N::
 
-   Download a file using N connections.
 
-   If more than N URLs are given, first N URLs are used and remaining URLs are
 
-   used for backup.
 
-   If less than N URLs are given, those URLs are used more than once so that N
 
-   connections total are made simultaneously.
 
-   Please see *-j* option too.
 
-   Please note that in Metalink download, this option has no effect and use
 
-   *-C* option instead.
 
-   Default: '5'
 
- *-t*, *--timeout*=SEC::
 
-   Set timeout in seconds.
 
-   Default: '60'
 
- *--uri-selector*=SELECTOR::
 
-   Specify URI selection algorithm. The possible values are 'inorder',
 
-   'feedback' and 'adaptive'.  If 'inorder' is given, URI is tried in
 
-   the order appeared in the URI list.  If 'feedback' is given, aria2
 
-   uses download speed observed in the previous downloads and choose
 
-   fastest server in the URI list. This also effectively skips dead
 
-   mirrors. The observed download speed is a part of performance
 
-   profile of servers mentioned in *--server-stat-of* and
 
-   *--server-stat-if* options.  If 'adaptive' is given, selects one of
 
-   the best mirrors for the first and reserved connections.  For
 
-   supplementary ones, it returns mirrors which has not been tested
 
-   yet, and if each of them has already been tested, returns mirrors
 
-   which has to be tested again. Otherwise, it doesn't select anymore
 
-   mirrors. Like 'feedback', it uses a performance profile of servers.
 
-   Default: 'feedback'
 
- HTTP Specific Options
 
- ~~~~~~~~~~~~~~~~~~~~~
 
- *--ca-certificate*=FILE::
 
-   Use the certificate authorities in FILE to verify the peers.
 
-   The certificate file must be in PEM format and can contain multiple CA
 
-   certificates.
 
-   Use *--check-certificate* option to enable verification.
 
- *--certificate*=FILE::
 
-   Use the client certificate in FILE.
 
-   The certificate must be in PEM format.
 
-   You may use *--private-key* option to specify the private key.
 
- *--check-certificate*[='true'|'false']::
 
-   Verify the peer using certificates specified in *--ca-certificate* option.
 
-   Default: 'true'
 
- *--http-auth-challenge*[='true'|'false']::
 
-   Send HTTP authorization header only when it is requested by the
 
-   server. If 'false' is set, then authorization header is always sent
 
-   to the server.  There is an exception: if username and password are
 
-   embedded in URI, authorization header is always sent to the server
 
-   regardless of this option.  Default: 'false'
 
- *--http-user*=USER::
 
-   Set HTTP user. This affects all URLs.
 
- *--http-passwd*=PASSWD::
 
-   Set HTTP password. This affects all URLs.
 
- *--http-proxy*=PROXY::
 
-   Use this proxy server for HTTP. See also *--all-proxy* option.
 
-   This affects all URLs.
 
-   The format of PROXY is [\http://][USER:PASSWORD@]HOST[:PORT]
 
- *--https-proxy*=PROXY::
 
-   Use this proxy server for HTTPS. See also *--all-proxy* option.
 
-   This affects all URLs.
 
-   The format of PROXY is [\http://][USER:PASSWORD@]HOST[:PORT]
 
- *--private-key*=FILE::
 
-   Use the private key in FILE.
 
-   The private key must be decrypted and in PEM format.
 
-   The behavior when encrypted one is given is undefined.
 
-   See also *--certificate* option.
 
- *--referer*=REFERER::
 
-   Set Referer. This affects all URLs.
 
- *--enable-http-keep-alive*[='true'|'false']::
 
-   Enable HTTP/1.1 persistent connection.
 
-   Default: 'true'
 
- *--enable-http-pipelining*[='true'|'false']::
 
-   Enable HTTP/1.1 pipelining.
 
-   Default: 'false'
 
- *--header*=HEADER::
 
-   Append HEADER to HTTP request header.
 
-   You can use this option repeatedly to specify more than one header:
 
-   aria2c *--header*="X-A: b78" *--header*="X-B: 9J1" "http://host/file"
 
- *--load-cookies*=FILE::
 
-   Load Cookies from FILE using the Firefox3 format (SQLite3) and the
 
-   Mozilla/Firefox(1.x/2.x)/Netscape format.
 
- [NOTE]
 
- If aria2 is built without libsqlite3, then it doesn't support Firefox3 cookie format.
 
- *--save-cookies*=FILE::
 
-   Save Cookies to FILE in Mozilla/Firefox(1.x/2.x)/ Netscape
 
-   format. If FILE already exists, it is overwritten. Session Cookies
 
-   are also saved and their expiry values are treated as 0.  Possible
 
-   Values: '/path/to/file'
 
- *--use-head*[='true'|'false']::
 
-   Use HEAD method for the first request to the HTTP server.
 
-   Default: 'false'
 
- *-U*, *--user-agent*=USER_AGENT::
 
-   Set user agent for HTTP(S) downloads.
 
-   Default: 'aria2/$VERSION', $VERSION is replaced by package version.
 
- FTP Specific Options
 
- ~~~~~~~~~~~~~~~~~~~~
 
- *--ftp-user*=USER::
 
-   Set FTP user. This affects all URLs.
 
-   Default: 'anonymous'
 
- *--ftp-passwd*=PASSWD::
 
-   Set FTP password. This affects all URLs.
 
-   If user name is embedded but password is missing in URI, aria2 tries
 
-   to resolve password using .netrc. If password is found in .netrc,
 
-   then use it as password. If not, use the password specified in this
 
-   option.
 
-   Default: 'ARIA2USER@'
 
- *-p*, *--ftp-pasv*[='true'|'false']::
 
-   Use the passive mode in FTP.
 
-   If 'false' is given, the active mode will be used.
 
-   Default: 'true'
 
- *--ftp-proxy*=PROXY::
 
-   Use this proxy server for FTP. See also *--all-proxy* option.
 
-   This affects all URLs.
 
-   The format of PROXY is [\http://][USER:PASSWORD@]HOST[:PORT]
 
- *--ftp-type*=TYPE::
 
-   Set FTP transfer type. TYPE is either 'binary' or 'ascii'.
 
-   Default: 'binary'
 
- *--ftp-reuse-connection*[='true'|'false']::
 
-   Reuse connection in FTP.
 
-   Default: 'true'
 
- BitTorrent/Metalink Options
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- *--select-file*=INDEX...::
 
-   Set file to download by specifying its index.
 
-   You can find the file index using the *--show-files* option.
 
-   Multiple indexes can be specified by using ",", for example: '3,6'.
 
-   You can also use "-" to specify a range: '1-5'.
 
-   "," and "-" can be used together: '1-5,8,9'.
 
-   When used with the -M option, index may vary depending on the query
 
-   (see *--metalink-** options).
 
- [NOTE]
 
- In multi file torrent, the adjacent files specified by this option may
 
- also be downloaded. This is by design, not a bug.
 
- A single piece may include several files or part of files, and aria2
 
- writes the piece to the appropriate files.
 
- *-S*, *--show-files*::
 
-   Print file listing of .torrent or .metalink file and exit.
 
-   In case of .torrent file, additional information
 
-   (infohash, piece length, etc) is also printed.
 
- BitTorrent Specific Options
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- *--bt-external-ip*=IPADDRESS::
 
-   Specify the external IP address to report to a BitTorrent
 
-   tracker. Although this function is named "external", it can accept
 
-   any kind of IP addresses. IPADDRESS must be a numeric IP address.
 
- *--bt-hash-check-seed*[='true'|'false']::
 
-  If 'true' is given, after hash check using *--check-integrity* option and
 
-  file is complete, continue to seed file. If you want to check file
 
-  and download it only when it is damaged or incomplete, set this
 
-  option to 'false'.  This option has effect only on BitTorrent download.
 
-  Default: 'true'
 
- *--bt-max-open-files*=NUM::
 
-   Specify maximum number of files to open in each BitTorrent download.
 
-   Default: '100'
 
- *--bt-max-peers*=NUM::
 
-   Specify the maximum number of peers per torrent.  '0' means
 
-   unlimited.  See also *--bt-request-peer-speed-limit* option.
 
-   Default: '55'
 
- *--bt-min-crypto-level*='plain'|'arc4'::
 
-   Set minimum level of encryption method.
 
-   If several encryption methods are provided by a peer, aria2 chooses the lowest
 
-   one which satisfies the given level.
 
-   Default: 'plain'
 
- *--bt-prioritize-piece*='head'[=SIZE],'tail'[=SIZE]::
 
-   Try to download first and last pieces of each file first. This is
 
-   useful for previewing files. The argument can contain 2 keywords:
 
-   'head' and 'tail'. To include both keywords, they must be separated
 
-   by comma. These keywords can take one parameter, SIZE. For example,
 
-   if 'head'=SIZE is specified, pieces in the range of first SIZE bytes
 
-   of each file get higher priority.  'tail'=SIZE means the range of
 
-   last SIZE bytes of each file. SIZE can include 'K' or 'M'(1K = 1024,
 
-   1M = 1024K). If SIZE is omitted, SIZE=1M is used.
 
- *--bt-require-crypto*='true'|'false'::
 
-   If true is given, aria2 doesn't accept and establish connection with legacy
 
-   BitTorrent handshake(\19BitTorrent protocol).
 
-   Thus aria2 always uses Obfuscation handshake.
 
-   Default: 'false' 
 
- *--bt-request-peer-speed-limit*=SPEED::
 
-   If the whole download speed of every torrent is lower than SPEED,
 
-   aria2 temporarily increases the number of peers to try for more
 
-   download speed. Configuring this option with your preferred download
 
-   speed can increase your download speed in some cases.
 
-   You can append 'K' or 'M'(1K = 1024, 1M = 1024K).
 
-   Default: '50K'
 
- *--bt-seed-unverified*[='true'|'false']::
 
-   Seed previously downloaded files without verifying piece hashes.
 
-   Default: 'false'
 
- *--bt-stop-timeout*=SEC::
 
-   Stop BitTorrent download if download speed is 0 in consecutive SEC
 
-   seconds. If '0' is given, this feature is disabled.  Default: '0'
 
- *--bt-tracker-interval*=SEC::
 
-   Set the interval in seconds between tracker requests. This
 
-   completely overrides interval value and aria2 just uses this value
 
-   and ignores the min interval and interval value in the response of
 
-   tracker. If '0' is set, aria2 determines interval based on the
 
-   response of tracker and the download progress.  Default: '0'
 
- *--dht-entry-point*=HOST:PORT::
 
-   Set host and port as an entry point to DHT network.
 
- *--dht-file-path*=PATH::
 
-   Change the DHT routing table file to PATH.
 
-   Default: '$HOME/.aria2/dht.dat'
 
- *--dht-listen-port*=PORT...::
 
-   Set UDP listening port for DHT.
 
-   Multiple ports can be specified by using ",", for example: '6881,6885'.
 
-   You can also use "-" to specify a range: '6881-6999'. "," and "-" can be used
 
-   together.
 
-   Default: '6881-6999'
 
- [NOTE]
 
- Make sure that the specified ports are open for incoming UDP traffic.
 
- *--enable-dht*[='true'|'false']::
 
-   Enable DHT functionality. If a private flag is set in a torrent, aria2
 
-   doesn't use DHT for that download even if 'true' is given.
 
-   Default: 'true'
 
- *--enable-peer-exchange*[='true'|'false']::
 
-   Enable Peer Exchange extension. If a private flag is set in a torrent, this
 
-   feature is disabled for that download even if 'true' is given.
 
-   Default: 'true'
 
- *--follow-torrent*='true'|'false'|'mem'::
 
-   If 'true' or 'mem' is specified, when a file whose suffix is ".torrent" or content
 
-   type is "application/x-bittorrent" is downloaded, aria2 parses it as a torrent
 
-   file and downloads files mentioned in it.
 
-   If 'mem' is specified, a torrent file is not written to the disk, but is just
 
-   kept in memory.
 
-   If 'false' is specified, the action mentioned above is not taken.
 
-   Default: 'true'
 
- *-O*, *--index-out*=INDEX=PATH::
 
-   Set file path for file with index=INDEX. You can find the file index
 
-   using the *--show-files* option.  PATH is a relative path to the
 
-   path specified in *--dir* option. You can use this option multiple
 
-   times. Using this option, you can specify the output filenames of
 
-   BitTorrent downloads.
 
- *--listen-port*=PORT...::
 
-   Set TCP port number for BitTorrent downloads.
 
-   Multiple ports can be specified by using ",",  for example: '6881,6885'.
 
-   You can also use "-" to specify a range: '6881-6999'.
 
-   "," and "-" can be used together: '6881-6889,6999'.
 
-   Default: '6881-6999'
 
- [NOTE]
 
- Make sure that the specified ports are open for incoming TCP traffic.
 
- *--max-overall-upload-limit*=SPEED::
 
-   Set max overall upload speed in bytes/sec.
 
-   '0' means unrestricted.
 
-   You can append 'K' or 'M'(1K = 1024, 1M = 1024K).
 
-   To limit the upload speed per torrent, use *--max-upload-limit* option.
 
-   Default: '0'
 
- *-u*, *--max-upload-limit*=SPEED::
 
-   Set max upload speed per each torrent in bytes/sec.
 
-   '0' means unrestricted.
 
-   You can append 'K' or 'M'(1K = 1024, 1M = 1024K).
 
-   To limit the overall upload speed, use *--max-overall-upload-limit* option.
 
-   Default: '0'
 
- *--peer-id-prefix*=PEER_ID_PREFIX::
 
-   Specify the prefix of peer ID. The peer ID in
 
-   BitTorrent is 20 byte length. If more than 20
 
-   bytes are specified, only first 20 bytes are
 
-   used. If less than 20 bytes are specified, random
 
-   byte data are added to make its length 20 bytes.
 
-   Default: 'aria2/$VERSION-', $VERSION is replaced by package version.
 
- *--seed-ratio*=RATIO::
 
-   Specify share ratio. Seed completed torrents until share ratio reaches
 
-   RATIO.
 
-   You are strongly encouraged to specify equals or more than '1.0' here.
 
-   Specify '0.0' if you intend to do seeding regardless of share ratio.
 
-   If *--seed-time* option is specified along with this option, seeding ends when
 
-   at least one of the conditions is satisfied.
 
-   Default: '1.0'
 
- *--seed-time*=MINUTES::
 
-   Specify seeding time in minutes. Also see the *--seed-ratio* option.
 
- *-T*, *--torrent-file*=TORRENT_FILE::
 
-   The path to the .torrent file.  You are not required to use this
 
-   option because you can specify .torrent files without *-T*.
 
- Metalink Specific Options
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~
 
- *--follow-metalink*='true'|'false'|'mem'::
 
-   If 'true' or 'mem' is specified, when a file whose suffix is ".metalink" or content
 
-   type of "application/metalink+xml" is downloaded, aria2 parses it as a metalink
 
-   file and downloads files mentioned in it.
 
-   If 'mem' is specified, a metalink file is not written to the disk, but is just
 
-   kept in memory.
 
-   If 'false' is specified, the action mentioned above is not taken.
 
-   Default: 'true'
 
- *-M*, *--metalink-file*=METALINK_FILE::
 
-   The file path to .metalink file. Reads input from stdin when '-' is
 
-   specified.  You are not required to use this option because you can
 
-   specify .metalink files without *-M*.
 
- *-C*, *--metalink-servers*=NUM_SERVERS::
 
-   The number of servers to connect to simultaneously.
 
-   Some Metalinks regulate the number of servers to connect.
 
-   aria2 strictly respects them.
 
-   This means that if Metalink defines the maxconnections attribute lower
 
-   than NUM_SERVERS, then aria2 uses the value of maxconnections attribute
 
-   instead of NUM_SERVERS.
 
-   See also *-s* and *-j* options.
 
-   Default: '5'
 
- *--metalink-language*=LANGUAGE::
 
-   The language of the file to download.
 
- *--metalink-location*=LOCATION[,...]::
 
-   The location of the preferred server.
 
-   A comma-delimited list of locations is acceptable, for example, 'JP,US'.
 
- *--metalink-os*=OS::
 
-   The operating system of the file to download.
 
- *--metalink-version*=VERSION::
 
-   The version of the file to download.
 
- *--metalink-preferred-protocol*=PROTO::
 
-   Specify preferred protocol.
 
-   The possible values are 'http', 'https', 'ftp' and 'none'.
 
-   Specify 'none' to disable this feature.
 
-   Default: 'none'
 
-  
 
- *--metalink-enable-unique-protocol*='true'|'false'::
 
-   If 'true' is given and several protocols are available for a mirror in a
 
-   metalink file, aria2 uses one of them.
 
-   Use *--metalink-preferred-protocol* option to specify the preference of
 
-   protocol.
 
-   Default: 'true'
 
- XML-RPC Options
 
- ~~~~~~~~~~~~~~~
 
- *--enable-xml-rpc*[='true'|'false']::
 
-   Enable XML-RPC server.  It is strongly recommended to set username
 
-   and password using *--xml-rpc-user* and *--xml-rpc-passwd*
 
-   option. See also *--xml-rpc-listen-port* option.  Default: 'false'
 
- *--xml-rpc-listen-all*[='true'|'false']::
 
-   Listen incoming XML-RPC requests on all network interfaces. If false
 
-   is given, listen only on local loopback interface.  Default: 'false'
 
- *--xml-rpc-listen-port*=PORT::
 
-   Specify a port number for XML-RPC server to listen to.  Possible
 
-   Values: '1024'-'65535' Default: '6800'
 
- *--xml-rpc-max-request-size*=SIZE::
 
-   Set max size of XML-RPC request. If aria2 detects the request is
 
-   more than SIZE bytes, it drops connection. Default: '2M'
 
- *--xml-rpc-passwd*=PASSWD::
 
-   Set XML-RPC password.
 
- *--xml-rpc-user*=USER::
 
-   Set XML-RPC user.
 
- Advanced Options
 
- ~~~~~~~~~~~~~~~~
 
- *--allow-overwrite*='true'|'false'::
 
-   If 'false' is given, and a file already exists but the corresponding
 
-   control file (filename.aria2) doesn't exist, then aria2 will not
 
-   re-download the file. See also *--auto-file-renaming* option.
 
-   Default: 'false'
 
- *--allow-piece-length-change*='true'|'false'::
 
-   If false is given, aria2 aborts download when a piece length is different
 
-   from one in a control file.
 
-   If true is given, you can proceed but some download progress will be lost.
 
-   Default: 'false'
 
- *--async-dns*[='true'|'false']::
 
-   Enable asynchronous DNS.
 
-   Default: 'true'
 
- *--auto-file-renaming*[='true'|'false']::
 
-   Rename file name if the same file already exists.
 
-   This option works only in HTTP(S)/FTP download.
 
-   The new file name has a dot and a number(1..9999) appended.
 
-   Default: 'true'
 
- *--auto-save-interval*=SEC::
 
-   Save a control file(*.aria2) every SEC seconds.
 
-   If '0' is given, a control file is not saved during download. aria2 saves a
 
-   control file when it stops regardless of the value.
 
-   The possible values are between '0' to '600'.
 
-   Default: '60'
 
- *--conf-path*=PATH::
 
-   Change the configuration file path to PATH.
 
-   Default: '$HOME/.aria2/aria2.conf'
 
- *-D*, *--daemon*::
 
-   Run as daemon. The current working directory will be changed to '/'
 
-   and standard input, standard output and standard error will be
 
-   redirected to '/dev/null'. Default: 'false'
 
- *--disable-ipv6*[='true'|'false']::
 
-   Disable IPv6. This is useful if you have to use broken DNS and want
 
-   to avoid terribly slow AAAA record lookup. Default: 'false'
 
- *--enable-direct-io*[='true'|'false']::
 
-   Enable directI/O, which lowers cpu usage while allocating/checking files.
 
-   Turn off if you encounter any error.
 
-   Default: 'true'
 
- *--event-poll*=POLL::
 
-   Specify the method for polling events.  The possible Values are
 
-   'epoll' and 'select'. If you use recent Linux that has epoll, then
 
-   the default value is 'epoll'.  Otherwise, the default value is
 
-   'select'.
 
- *--file-allocation*=METHOD::
 
-   Specify file allocation method.
 
-   'none' doesn't pre-allocate file space. 'prealloc' pre-allocates file space
 
-   before download begins. This may take some time depending on the size of the
 
-   file.
 
-   If you are using newer file systems such as ext4
 
-   (with extents support), btrfs or xfs, 'falloc' is
 
-   your best choice. It allocates large(few GiB)
 
-   files almost instantly. Don't use 'falloc' with
 
-   legacy file systems such as ext3 because it takes
 
-   almost same time as 'prealloc' and it blocks aria2
 
-   entirely until allocation finishes. 'falloc' may
 
-   not be available if your system doesn't have
 
-   *posix_fallocate*() function.
 
-   Possible Values: 'none', 'prealloc', 'falloc'
 
-   Default: 'prealloc'
 
- *--interface*=INTERFACE::
 
-   Bind sockets to given interface. You can specify interface name, IP
 
-   address and hostname.
 
-   Possible Values: interface, IP address, hostname
 
- [NOTE]
 
- If an interface has multiple addresses, it is highly recommended to
 
- specify IP address explicitly. See also *--disable-ipv6*.  If your
 
- system doesn't have getifaddrs(), this option doesn't accept interface
 
- name.
 
- *--log-level*=LEVEL::
 
-   Set log level to output.
 
-   LEVEL is either 'debug', 'info', 'notice', 'warn' or 'error'.
 
-   Default: 'debug'
 
- *--on-download-complete*=COMMAND::
 
-   Set the command to be executed when download completes.  See
 
-   *--on-download-start* option for the requirement of COMMAND.  See
 
-   also *--on-download-stop* option.  Possible Values:
 
-   '/path/to/command'
 
- *--on-download-error*=COMMAND::
 
-   Set the command to be executed when download aborts due to error.
 
-   See *--on-download-start* option for the requirement of COMMAND.
 
-   See also *--on-download-stop* option.  Possible Values:
 
-   '/path/to/command'
 
- *--on-download-start*=COMMAND::
 
-   Set the command to be executed when download starts up. COMMAND must
 
-   take just one argument and GID is passed to COMMAND as a first
 
-   argument.  Possible Values: '/path/to/command'
 
- *--on-download-stop*=COMMAND::
 
-   Set the command to be executed when download stops. You can override
 
-   the command to be executed for particular download result using
 
-   *--on-download-complete* and *--on-download-error*. If they are
 
-   specified, command specified in this option is not executed.  See
 
-   *--on-download-start* option for the requirement of COMMAND.
 
-   Possible Values: '/path/to/command'
 
- *--summary-interval*=SEC::
 
-   Set interval in seconds to output download progress summary.
 
-   Setting '0' suppresses the output.
 
-   Default: '60'
 
- [NOTE]
 
- In multi file torrent downloads, the files adjacent forward to the specified files
 
- are also allocated if they share the same piece.
 
- *-Z*, *--force-sequential*[='true'|'false']::
 
-   Fetch URIs in the command-line sequentially and download each URI in a
 
-   separate session, like the usual command-line download utilities.
 
-   Default: 'false'
 
- *--max-overall-download-limit*=SPEED::
 
-   Set max overall download speed in bytes/sec.  '0' means
 
-   unrestricted.  You can append 'K' or 'M'(1K = 1024, 1M = 1024K).  To
 
-   limit the download speed per download, use *--max-download-limit*
 
-   option.  Default: '0'
 
- *--max-download-limit*=SPEED::
 
-   Set max download speed per each download in bytes/sec. '0' means
 
-   unrestricted.  You can append 'K' or 'M'(1K = 1024, 1M = 1024K).  To
 
-   limit the overall download speed, use *--max-overall-download-limit*
 
-   option.  Default: '0'
 
- *--no-conf*::
 
-   Disable loading aria2.conf file.
 
- *--no-file-allocation-limit*=SIZE::
 
-   No file allocation is made for files whose size is smaller than SIZE.
 
-   You can append 'K' or 'M'(1K = 1024, 1M = 1024K).
 
-   Default: '5M'
 
- *-P*, *--parameterized-uri*[='true'|'false']::
 
-   Enable parameterized URI support.
 
-   You can specify set of parts: 'http://{sv1,sv2,sv3}/foo.iso'.
 
-   Also you can specify numeric sequences with step counter:
 
-   '\http://host/image[000-100:2].img'.
 
-   A step counter can be omitted.
 
-   If all URIs do not point to the same file, such as the second example above,
 
-   -Z option is required.
 
-   Default: 'false'
 
- *-q*, *--quiet*[='true'|'false']::
 
-   Make aria2 quiet (no console output).
 
-   Default: 'false'
 
- *--realtime-chunk-checksum*='true'|'false'::
 
-    Validate chunk of data by calculating checksum while downloading a file if
 
-    chunk checksums are provided.
 
-    Default: 'true'
 
- *--stop*=SEC::
 
-   Stop application after SEC seconds has passed.
 
-   If '0' is given, this feature is disabled.
 
-   Default: '0'
 
-  
 
- *-v*, *--version*::
 
-   Print the version number, copyright and the configuration information and
 
-   exit.
 
- Options That Take An Optional Argument
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- The options that have its argument surrounded by square brackets([])
 
- take an optional argument. Usually omiting the argument is evaluated to 'true'.
 
- If you use short form of these options(such as '-V') and give
 
- an argument, then the option name and its argument should be concatenated(e.g.
 
- '-Vfalse'). If any spaces are inserted between the option name and the argument,
 
- the argument will be treated as URI and usually this is not what you expect.
 
- URI, MAGNET, TORRENT_FILE, METALINK_FILE
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- You can specify multiple URLs in command-line.  Unless you specify
 
- *-Z* option, all URLs must point to the same file or downloading will
 
- fail.
 
- You can specify arbitrary number of BitTorrent Magnet URI. Please note
 
- that they are always treated as a separate download.  Both hex encoded
 
- 40 characters Info Hash and Base32 encoded 32 characters Info Hash are
 
- supported. The multiple "tr" paramters are supported.  Because
 
- BitTorrent Magnet URI is likely to contain "&" character, it is highly
 
- recommended to always quote URI with single(') or double(") quotation.
 
- It is strongly recommended to enable DHT especially when "tr"
 
- parameter is missing. See http://www.bittorrent.org/beps/bep_0009.html
 
- for more details about BitTorrent Magnet URI.
 
- You can also specify arbitrary number of torrent files and metalink files
 
- stored on a local drive. Please note that they are always treated as a
 
- separate download.
 
- You can specify both torrent file with -T option and URLs. By doing
 
- this, you can download a file from both torrent swarm and HTTP(S)/FTP
 
- server at the same time, while the data from HTTP(S)/FTP are uploaded
 
- to the torrent swarm.  For single file torrents, URL can be a complete
 
- URL pointing to the resource or if URL ends with /, name in torrent
 
- file in torrent is added. For multi-file torrents, name and path are
 
- added to form a URL for each file.
 
- [NOTE]
 
- Make sure that URL is quoted with single(') or double(") quotation if it
 
- contains "&" or any characters that have special meaning in shell.
 
- Resuming Download
 
- ~~~~~~~~~~~~~~~~~
 
- Usually, you can resume transfer by just issuing same command(aria2c
 
- URL) if the previous transfer is made by aria2.
 
- If the previous transfer is made by a browser or wget like sequential
 
- download manager, then use -c option to continue the transfer(aria2c
 
- *-c* URL).
 
- EXIT STATUS
 
- -----------
 
- Because aria2 can handle multiple downloads at once, it encounters
 
- lots of errors in a session.  aria2 returns the following exit status
 
- based on the last error encountered.
 
- *0*::
 
-   If all downloads are successful.
 
- *1*::
 
-   If an unknown error occurs.
 
- *2*::
 
-   If time out occurs.
 
- *3*::
 
-   If a resource is not found.
 
- *4*::
 
-   If aria2 sees the specfied number of "resource not found" error.
 
-   See *--max-file-not-found* option).
 
- *5*::
 
-   If a download aborts because download speed is too slow.
 
-   See *--lowest-speed-limit* option)
 
- *6*::
 
-   If network problem occurs.
 
- *7*::
 
-   If there are unfinished downloads. This error is only reported if
 
-   all finished downloads are successful and there are unfinished
 
-   downloads in a queue when aria2 exits by pressing Ctrl-C by an user
 
-   or sending TERM or INT signal.
 
- [NOTE]
 
- An error occurred in a finished download will not be reported
 
- as exit status.
 
- ENVIRONMENT
 
- -----------
 
- aria2 recognizes the following environment variables.
 
- http_proxy [\http://][USER:PASSWORD@]HOST[:PORT]::
 
-   Specify proxy server for use in HTTP.
 
-   Overrides http-proxy value in configuration file.
 
-   The command-line option *--http-proxy* overrides this value.
 
- https_proxy [\http://][USER:PASSWORD@]HOST[:PORT]::
 
-   Specify proxy server for use in HTTPS.
 
-   Overrides https-proxy value in configuration file.
 
-   The command-line option *--https-proxy* overrides this value.
 
- ftp_proxy [\http://][USER:PASSWORD@]HOST[:PORT]::
 
-   Specify proxy server for use in FTP.
 
-   Overrides ftp-proxy value in configuration file.
 
-   The command-line option *--ftp-proxy* overrides this value.
 
- all_proxy [\http://][USER:PASSWORD@]HOST[:PORT]::
 
-   Specify proxy server for use if no protocol-specific proxy is specified.
 
-   Overrides all-proxy value in configuration file.
 
-   The command-line option *--all-proxy* overrides this value.
 
- no_proxy [DOMAIN,...]::
 
-   Specify comma-separated hostname or domains to which proxy should not be used.
 
-   Overrides no-proxy value in configuration file.
 
-   The command-line option *--no-proxy* overrides this value.
 
- FILES
 
- -----
 
- aria2.conf
 
- ~~~~~~~~~~
 
- By default, aria2 parses '$HOME/.aria2/aria2.conf' as a configuraiton
 
- file. You can specify the path to configuration file using
 
- *--conf-path* option.  If you don't want to use the configuraitonf
 
- file, use *--no-conf* option.
 
- The configuration file is a text file and has 1 option per each
 
- line. In each line, you can specify name-value pair in the format:
 
- NAME=VALUE, where name is the long command-line option name without
 
- "--" prefix. You can use same syntax for the command-line option. The
 
- lines beginning "#" are treated as comments.
 
- --------------------------------------
 
- # sample configuration file for aria2c
 
- listen-port=60000
 
- dht-listen-port=60000
 
- seed-ratio=1.0
 
- max-upload-limit=50K
 
- ftp-pasv=true
 
- --------------------------------------
 
- dht.dat
 
- ~~~~~~~~
 
- By default, the routing table of DHT is saved to the path $HOME/.aria2/dht.dat.
 
- Control File
 
- ~~~~~~~~~~~~
 
- aria2 uses a control file to track the progress of a download.  A
 
- control file is placed in the same directory as the downloading file
 
- and its filename is the filename of downloading file with ".aria2"
 
- appended.  For example, if you are downloading file.zip, then the
 
- control file should be file.zip.aria2.  (There is a exception for this
 
- naming convention.  If you are downloading a multi torrent, its
 
- control file is the "top directory" name of the torrent with ".aria2"
 
- appended.  The "top directory" name is a value of "name" key in "info"
 
- directory in a torrent file.)
 
- Usually a control file is deleted once download completed.  If aria2
 
- decides that download cannot be resumed(for example, when downloading
 
- a file from a HTTP server which doesn't support resume), a control
 
- file is not created.
 
- Normally if you lose a control file, you cannot resume download.  But
 
- if you have a torrent or metalink with chunk checksums for the file,
 
- you can resume the download without a control file by giving -V option
 
- to aria2c in command-line.
 
- Input File
 
- ~~~~~~~~~~
 
- The input file can contain a list of URIs for aria2 to download.  You
 
- can specify multiple URIs for a single entity: separate URIs on a
 
- single line using the TAB character.
 
- Each line is treated as if it is provided in command-line argument.
 
- Therefore they are affected by *-Z* and *-P* options.
 
- Additionally, the following options can be specified after each line
 
- of URIs. These optional lines must start with white space(s).
 
- * dir
 
- * check-integrity
 
- * continue
 
- * all-proxy
 
- * connect-timeout
 
- * dry-run
 
- * lowest-speed-limit
 
- * max-file-not-found
 
- * max-tries
 
- * no-proxy
 
- * out
 
- * proxy-method
 
- * remote-time
 
- * split
 
- * timeout
 
- * http-auth-challenge
 
- * http-user
 
- * http-passwd
 
- * http-proxy
 
- * https-proxy
 
- * referer
 
- * enable-http-keep-alive
 
- * enable-http-pipelining
 
- * header
 
- * use-head
 
- * user-agent
 
- * ftp-user
 
- * ftp-passwd
 
- * ftp-pasv
 
- * ftp-proxy
 
- * ftp-type
 
- * ftp-reuse-connection
 
- * no-netrc
 
- * select-file
 
- * bt-external-ip
 
- * bt-hash-check-seed
 
- * bt-max-open-files
 
- * bt-max-peers
 
- * bt-min-crypto-level
 
- * bt-prioritize-piece
 
- * bt-require-crypto
 
- * bt-request-peer-speed-limit
 
- * bt-seed-unverified
 
- * bt-stop-timeout
 
- * bt-tracker-interval
 
- * enable-peer-exchange
 
- * follow-torrent
 
- * index-out
 
- * max-upload-limit
 
- * seed-ratio
 
- * seed-time
 
- * follow-metalink
 
- * metalink-servers
 
- * metalink-language
 
- * metalink-location
 
- * metalink-os
 
- * metalink-version
 
- * metalink-preferred-protocol
 
- * metalink-enable-unique-protocol
 
- * allow-overwrite
 
- * allow-piece-length-change
 
- * async-dns
 
- * auto-file-renaming
 
- * file-allocation
 
- * max-download-limit
 
- * no-file-allocation-limit
 
- * parameterized-uri
 
- * realtime-chunk-checksum 
 
- These options have exactly same meaning of the ones in the
 
- command-line options, but it just applies to the URIs it belongs to.
 
- For example, the content of uri.txt is
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- http://server/file.iso http://mirror/file.iso
 
-   dir=/iso_images
 
-   out=file.img
 
- http://foo/bar
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- If aria2 is executed with *-i* uri.txt *-d* /tmp options, then
 
- 'file.iso' is saved as '/iso_images/file.img' and it is downloaded
 
- from \http://server/file.iso and \http://mirror/file.iso.  The file
 
- 'bar' is downloaded from \http://foo/bar and saved as '/tmp/bar'.
 
- In some cases, *out* parameter has no effect.  See note of *--out*
 
- option for the restrictions.
 
- Server Performance Profile
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- This section describes the format of server performance profile.  The
 
- file is plain text and each line has several NAME=VALUE pair,
 
- delimited by comma.  Currently following NAMEs are recognized:
 
- host::
 
-   Hostname of the server. Required.
 
- protocol::
 
-   Protocol for this profile, such as ftp, http. Required.
 
- dl_speed::
 
-   The average download speed observed in the previous download in
 
-   bytes per sec.  Required.
 
- sc_avg_speed::
 
-   The average download speed observed in the previous download in
 
-   bytes per sec. This value is only updated if the download is done in
 
-   single connection environment and only used by
 
-   AdaptiveURISelector. Optional.
 
- mc_avg_speed::
 
-   The average download speed observed in the previous download in
 
-   bytes per sec. This value is only updated if the download is done in
 
-   multi connection environment and only used by
 
-   AdaptiveURISelector. Optional.
 
- counter::
 
-   How many times the server is used. Currently this value is only used
 
-   by AdaptiveURISelector.  Optional.
 
- last_updated::
 
-   Last contact time in GMT with this server, specified in the seconds
 
-   from the Epoch. Required.
 
- status::
 
-   ERROR is set when server cannot be reached or out-of-service or
 
-   timeout occurred. Otherwise, OK is set.
 
- Those fields must exist in one line. The order of the fields is not
 
- significant. You can put pairs other than the above; they are simply
 
- ignored.
 
- An example follows:
 
- --------------------------------------------------------------------------------
 
- host=localhost, protocol=http, dl_speed=32000, last_updated=1222491640, status=OK
 
- host=localhost, protocol=ftp, dl_speed=0, last_updated=1222491632, status=ERROR
 
- --------------------------------------------------------------------------------
 
- XML-RPC INTERFACE
 
- -----------------
 
- Terminology
 
- ~~~~~~~~~~~
 
- GID::
 
-   GID(or gid) is the key to manage each download. Each download has an
 
-   unique GID. Currently GID looks like an integer, but don't treat it
 
-   as integer because it may be changed to another type in the future
 
-   release.
 
- Methods
 
- ~~~~~~~
 
- *aria2.addUri* 'uris[, options[, position]]'
 
- This method adds new HTTP(S)/FTP/BitTorrent Magnet URI.  'uris' is of
 
- type array and its element is URI which is of type string.  For
 
- BitTorrent Magnet URI, 'uris' must have only one element and it should
 
- be BitTorrent Magnet URI.  'options' is of type struct and its members
 
- are a pair of option name and value. See *Options* below for more
 
- details.  If 'position' is given as an integer starting from 0, the
 
- new download is inserted at 'position' in the waiting queue. If
 
- 'position' is not given or 'position' is larger than the size of the
 
- queue, it is appended at the end of the queue.  This method returns
 
- GID of registered download.
 
- *aria2.addTorrent* 'torrent[, uris[, options[, position]]]'
 
- This method adds BitTorrent download by uploading .torrent file.
 
- 'torrent' is of type base64 which contains Base64-encoded .torrent
 
- file.  'uris' is of type array and its element is URI which is of type
 
- string. 'uris' is used for Web-seeding.  For single file torrents, URI
 
- can be a complete URI pointing to the resource or if URI ends with /,
 
- name in torrent file is added. For multi-file torrents, name and path
 
- in torrent are added to form a URI for each file.  'options' is of
 
- type struct and its members are a pair of option name and value. See
 
- *Options* below for more details.  If 'position' is given as an
 
- integer starting from 0, the new download is inserted at 'position' in
 
- the waiting queue. If 'position' is not given or 'position' is larger
 
- than the size of the queue, it is appended at the end of the queue.
 
- This method returns GID of registered download.
 
- *aria2.addMetalink* 'metalink[, options[, position]]'
 
- This method adds Metalink download by uploading .metalink file.
 
- 'metalink' is of type base64 which contains Base64-encoded .metalink
 
- file.  'options' is of type struct and its members are a pair of
 
- option name and value. See *Options* below for more details.  If
 
- 'position' is given as an integer starting from 0, the new download is
 
- inserted at 'position' in the waiting queue. If 'position' is not
 
- given or 'position' is larger than the size of the queue, it is
 
- appended at the end of the queue.  This method returns array of GID of
 
- registered download.
 
- *aria2.remove* 'gid'
 
- This method removes the download denoted by 'gid'. 'gid' is of type
 
- string. If specified download is in progress, it is stopped at
 
- first. The status of removed download becomes "removed".  This method
 
- returns GID of removed download.
 
- *aria2.tellStatus* 'gid'
 
- This method returns download progress of the download denoted by
 
- 'gid'. 'gid' is of type string. The response is of type struct and it
 
- contains following keys. The value type is string.
 
- gid::
 
-   GID of this download.
 
- status::
 
-   "active" for currently downloading/seeding entry. "waiting" for the
 
-   entry in the queue; download is not started. "error" for the stopped
 
-   download because of error. "complete" for the stopped and completed
 
-   download. "removed" for the download removed by user.
 
- totalLength::
 
-   Total length of this download in bytes.
 
- completedLength::
 
-   Completed length of this download in bytes.
 
- uploadLength::
 
-   Uploaded length of this download in bytes.
 
- bitfield::
 
-   Hexadecimal representation of the download progress. The highest bit
 
-   corresponds to piece index 0. The set bits indicate the piece is
 
-   available and unset bits indicate the piece is missing. The spare
 
-   bits at the end are set to zero.
 
- downloadSpeed::
 
-   Download speed of this download measured in bytes/sec.
 
- uploadSpeed::
 
-   Upload speed of this download measured in bytes/sec.
 
- infoHash::
 
-   InfoHash. BitTorrent only.
 
- numSeeders::
 
-   The number of seeders the client has connected to. BitTorrent only.
 
- pieceLength::
 
-   Piece length in bytes.
 
- numPieces::
 
-   The number of pieces.
 
- connections::
 
-   The number of peers/servers the client has connected to.
 
- errorCode::
 
-   The last error code occurred in this download. The value is of type
 
-   string. The error codes are defined in EXIT STATUS section. This
 
-   value is only available for stopped/completed downloads.
 
- *aria2.getUris* 'gid'
 
- This method returns URIs used in the download denoted by 'gid'.  'gid'
 
- is of type string. The response is of type array and its element is of
 
- type struct and it contains following keys. The value type is string.
 
- uri::
 
-   URI
 
- *aria2.getFiles* 'gid'
 
- This method returns file list of the download denoted by 'gid'. 'gid'
 
- is of type string. The response is of type array and its element is of
 
- type struct and it contains following keys. The value type is string.
 
- index::
 
-   Index of file. Starting with 1. This is the same order with the
 
-   files in multi-file torrent.
 
- path::
 
-   File path.
 
- length::
 
-   File size in bytes.
 
- selected::
 
-   "true" if this file is selected by *--select-file* option. If
 
-   *--select-file* is not specified or this is single torrent or no
 
-   torrent download, this value is always "true". Otherwise "false".
 
- *aria2.getPeers* 'gid'
 
- This method returns peer list of the download denoted by 'gid'. 'gid'
 
- is of type string. This method is for BitTorrent only.  The response
 
- is of type array and its element is of type struct and it contains
 
- following keys. The value type is string.
 
- peerId::
 
-   Percent-encoded peer ID.
 
- ip::
 
-   IP address of the peer.
 
- port::
 
-   Port number of the peer.
 
- bitfield::
 
-   Hexadecimal representation of the download progress of the peer. The
 
-   highest bit corresponds to piece index 0. The set bits indicate the
 
-   piece is available and unset bits indicate the piece is missing. The
 
-   spare bits at the end are set to zero.
 
- amChoking::
 
-   "true" if this client is choking the peer. Otherwise "false".
 
- peerChoking::
 
-   "true" if the peer is choking this client. Otherwise "false".
 
- downloadSpeed::
 
-   Download speed (byte/sec) that this client obtains from the peer.
 
- uploadSpeed::
 
-   Upload speed(byte/sec) that this client uploads to the peer. 
 
- seeder::
 
-   "true" is this client is a seeder. Otherwise "false".
 
- *aria2.tellActive*
 
- This method returns the list of active downloads.  The respose is of
 
- type array and its element is the same struct returned by
 
- *aria2.tellStatus* method.
 
- *aria2.tellWaiting* 'offset, num'
 
- This method returns the list of waiting download in the range of
 
- ['offset', 'offset'+'num'). 'offset' is of type integer and specifies
 
- the offset from the download waiting at the front. 'num' is of type
 
- integer and specifies the number of downloads to be returned. For
 
- example, imagine that three downloads "A","B" and "C" are waiting in
 
- this order. aria2.tellWaiting(0, 1) returns "A". aria2.tellWaiting(1,
 
- 2) returns "B" and "C".  The respose is of type array and its element
 
- is the same struct returned by *aria2.tellStatus* method.
 
- *aria2.changeOption* 'gid, options'
 
- This method changes options of the download denoted by 'gid'
 
- dynamically.  'gid' is of type string.  'options' is of type struct
 
- and the available options are: *bt-max-peers*,
 
- *bt-request-peer-speed-limit*, *max-download-limit* and
 
- *max-upload-limit*.  This method returns "OK" for success.
 
- *aria2.changeGlobalOption* 'options'
 
- This method changes global options dynamically.  'options' is of type
 
- struct and the available options are *max-concurrent-downloads*,
 
- *max-overall-download-limit* and *max-overall-upload-limit*.  This
 
- method returns "OK" for success.
 
- *aria2.purgeDownloadResult*
 
- This method purges completed/error/removed downloads to free memory.
 
- This method returns "OK".
 
- *aria2.getVersion*
 
- This method returns version of the program and the list of enabled
 
- features. The response is of type struct and contains following keys.
 
- version::
 
-   Version number of the program in string.
 
- enabledFeatures::
 
-   List of enabled features. Each feature name is of type string.
 
- Error Handling
 
- ~~~~~~~~~~~~~~
 
- In case of error, aria2 returns faultCode=1 and the error message in
 
- faultString.
 
- Options
 
- ~~~~~~~
 
- Same options for *-i* list are available. See *Input File* subsection
 
- for complete list of options.
 
- In the option struct, name element is option name(without preceeding
 
- "--") and value element is argument as string.
 
- -------------------------------------------------
 
- <struct>
 
-   <member>
 
-     <name>split</name>
 
-     <value><string>1</string></value>
 
-   </member>
 
-   <member>
 
-     <name>http-proxy</name>
 
-     <value><string>http://proxy/</string></value>
 
-   </member>
 
- </struct>
 
- -------------------------------------------------
 
- *header* and *index-out* option are allowed multiple times in
 
- command-line. Since name should be unique in struct(many XML-RPC
 
- library implementation uses hash or dict for struct), single string is
 
- not enough. To overcome this situation, they can take array as value
 
- as well as string.
 
- ---------------------------------------------------------------
 
- <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>
 
- ---------------------------------------------------------------
 
- Sample XML-RPC Client Code
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- The following Ruby script adds 'http://localhost/aria2.tar.bz2' to
 
- aria2c operated on localhost with option *--dir*='/downloads' and
 
- prints its reponse.
 
- ----------------------------------------------
 
- #!/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
 
- ----------------------------------------------
 
- EXAMPLE
 
- -------
 
- HTTP/FTP Segmented Download
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- Download a file
 
- ^^^^^^^^^^^^^^^
 
- --------------------------------
 
- aria2c "http://host/file.zip"
 
- --------------------------------
 
- [NOTE]
 
- aria2 uses 5 connections to download 1 file by default.
 
- Download a file using 1 connection
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ----------------------------------
 
- aria2c -s1 "http://host/file.zip"
 
- ----------------------------------
 
- [NOTE]
 
- aria2 uses 5 connections to download 1 file by default.
 
- -s1 limits the number of connections to just 1.
 
- [NOTE]
 
- To pause a download, press Ctrl-C. You can resume the transfer by running aria2c with the same argument in the same directory. You can change URLs as long as they are pointing to the same file.
 
- Download a file from 2 different HTTP servers
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------
 
- aria2c "http://host/file.zip" "http://mirror/file.zip"
 
- ------------------------------------------------------
 
- Download a file from HTTP and FTP servers
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- -----------------------------------------------------
 
- aria2c "http://host1/file.zip" "ftp://host2/file.zip"
 
- -----------------------------------------------------
 
- Download files listed in a text file concurrently
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------
 
- aria2c -ifiles.txt -j2
 
- ------------------------
 
- [NOTE]
 
- -j option specifies the number of parallel downloads.
 
- Using proxy
 
- ^^^^^^^^^^^
 
- For HTTP:
 
- ----------------------------------------------------------
 
- aria2c --http-proxy="http://proxy:8080" "http://host/file"
 
- ----------------------------------------------------------
 
- For FTP:
 
- --------------------------------------------------------
 
- aria2c --ftp-proxy="http://proxy:8080" "ftp://host/file"
 
- --------------------------------------------------------
 
- [NOTE]
 
- See *--http-proxy*, *--https-proxy*, *--ftp-proxy* and *--all-proxy* for
 
- details.
 
- You can specify proxy in the environment variables. See *ENVIRONMENT* section.
 
- Proxy with authorization
 
- ^^^^^^^^^^^^^^^^^^^^^^^^
 
- ----------------------------------------------------------------------------
 
- aria2c --http-proxy="http://username:password@proxy:8080" "http://host/file"
 
- ----------------------------------------------------------------------------
 
- Metalink Download
 
- ~~~~~~~~~~~~~~~~~
 
- Download files with remote Metalink
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- --------------------------------------------------------
 
- aria2c --follow-metalink=mem "http://host/file.metalink"
 
- --------------------------------------------------------
 
- Download using a local metalink file
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ----------------------------------------------------------
 
- aria2c -p --lowest-speed-limit=4000 file.metalink
 
- ----------------------------------------------------------
 
- [NOTE]
 
- To pause a download, press Ctrl-C.
 
- You can resume the transfer by running aria2c with the same argument in the same
 
- directory.
 
- Download several local metalink files
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ----------------------------------------
 
- aria2c -j2 file1.metalink file2.metalink
 
- ----------------------------------------
 
- Download only selected files using index
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- -------------------------------------------
 
- aria2c --select-file=1-4,8 file.metalink
 
- -------------------------------------------
 
- [NOTE]
 
- The index is printed to the console using -S option.
 
- Download a file using a local .metalink file with user preference
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------------------------------
 
- aria2c --metalink-location=JP,US --metalink-version=1.1 --metalink-language=en-US file.metalink
 
- ------------------------------------------------------------------------------
 
- BitTorrent Download
 
- ~~~~~~~~~~~~~~~~~~~
 
- Download files from remote BitTorrent file
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------
 
- aria2c --follow-torrent=mem "http://host/file.torrent"
 
- ------------------------------------------------------
 
- Download using a local torrent file
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ---------------------------------------------
 
- aria2c --max-upload-limit=40K file.torrent
 
- ---------------------------------------------
 
- [NOTE]
 
- --max-upload-limit specifies the max of upload rate.
 
- [NOTE]
 
- To pause a download, press Ctrl-C. You can resume the transfer by running aria2c with the same argument in the same directory.
 
- Download using BitTorrent Magnet URI
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------------------------------
 
- aria2c "magnet:?xt=urn:btih:248d0a1cd08284299de78d5c1ed359bb46717d8c&dn=aria2"
 
- ------------------------------------------------------------------------------
 
- [NOTE]
 
- Don't forget to quote BitTorrent Magnet URI which includes "&"
 
- character with single(') or double(") quotation.
 
- Download 2 torrents
 
- ^^^^^^^^^^^^^^^^^^^
 
- --------------------------------------
 
- aria2c -j2 file1.torrent file2.torrent
 
- --------------------------------------
 
- Download a file using torrent and HTTP/FTP server
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------------
 
- aria2c -Ttest.torrent "http://host1/file" "ftp://host2/file"
 
- ------------------------------------------------------------
 
- [NOTE]
 
- Downloading multi file torrent with HTTP/FTP is not supported.
 
- Download only selected files using index(usually called "selectable download")
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ---------------------------------------
 
- aria2c --select-file=1-4,8 file.torrent
 
- ---------------------------------------
 
- [NOTE]
 
- The index is printed to the console using -S option.
 
- Specify output filename
 
- ^^^^^^^^^^^^^^^^^^^^^^^
 
- To specify output filename for BitTorrent downloads, you need to know
 
- the index of file in torrent file using *-S* option. For example, the
 
- output looks like this:
 
- --------------------------
 
- idx|path/length
 
- ===+======================
 
-   1|dist/base-2.6.18.iso
 
-    |99.9MiB
 
- ---+----------------------
 
-   2|dist/driver-2.6.18.iso
 
-    |169.0MiB
 
- ---+----------------------
 
- --------------------------
 
- To save 'dist/base-2.6.18.iso' in '/tmp/mydir/base.iso' and
 
- 'dist/driver-2.6.18.iso' in '/tmp/dir/driver.iso', use the following
 
- command:
 
- -----------------------------------------------------------------------------------------
 
- aria2c --dir=/tmp --index-out=1=mydir/base.iso --index-out=2=dir/driver.iso file.torrent
 
- -----------------------------------------------------------------------------------------
 
- Change the listening port for incoming peer
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ---------------------------------------------------
 
- aria2c --listen-port=7000-7001,8000 file.torrent
 
- ---------------------------------------------------
 
- [NOTE]
 
- Since aria2 doesn't configure firewall or router for port forwarding, it's up
 
- to you to do it manually.
 
- Specify the condition to stop program after torrent download finished
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- -------------------------------------------------------
 
- aria2c --seed-time=120 --seed-ratio=1.0 file.torrent
 
- -------------------------------------------------------
 
- [NOTE]
 
- In the above example, the program exits when the 120 minutes has elapsed since download completed or seed ratio reaches 1.0.
 
- Throttle upload speed
 
- ^^^^^^^^^^^^^^^^^^^^^
 
- ----------------------------------------------
 
- aria2c --max-upload-limit=100K file.torrent
 
- ---------------------------------------------- 
 
- Enable DHT
 
- ^^^^^^^^^^
 
- ---------------------------------------------------------
 
- aria2c --enable-dht --dht-listen-port=6881 file.torrent
 
- ---------------------------------------------------------
 
- [NOTE]
 
- DHT uses udp port. Since aria2 doesn't configure firewall or router for port
 
- forwarding, it's up to you to do it manually.
 
- More advanced HTTP features
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- Load cookies
 
- ^^^^^^^^^^^^
 
- --------------------------------------------------------
 
- aria2c --load-cookies=cookies.txt "http://host/file.zip"
 
- --------------------------------------------------------
 
- [NOTE]
 
- You can use Firefox/Mozilla's cookie file without modification.
 
- Resume download started by web browsers or another programs
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- -------------------------------------------------------
 
- aria2c -c -s2 "http://host/partiallydownloadedfile.zip"
 
- -------------------------------------------------------
 
- Client certificate authorization for SSL/TLS
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------------------------------------------
 
- aria2c --certificate=/path/to/mycert.pem --private-key=/path/to/mykey.pem https://host/file
 
- ------------------------------------------------------------------------------------------
 
- [NOTE]
 
- The file specified in *--private-key* must be decrypted. The behavior when
 
- encrypted one is given is undefined.
 
- Verify peer in SSL/TLS using given CA certificates
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------------------------------------------------
 
- aria2c --ca-certificate=/path/to/ca-certificates.crt --check-certificate https://host/file
 
- ------------------------------------------------------------------------------------------
 
- And more advanced features
 
- ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- Throttle download speed
 
- ^^^^^^^^^^^^^^^^^^^^^^^
 
- -------------------------------------------------
 
- aria2c --max-download-limit=100K file.metalink
 
- -------------------------------------------------
 
- Repair a damaged download
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^
 
- -----------------------
 
- aria2c -V file.metalink
 
- -----------------------
 
- [NOTE]
 
- This option is only available used with BitTorrent or metalink with chunk
 
- checksums.
 
- Drop connection if download speed is lower than specified value
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- ------------------------------------------------
 
- aria2c --lowest-speed-limit=10K file.metalink
 
- ------------------------------------------------
 
- Parameterized URI support
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^
 
- You can specify set of parts:
 
- -----------------------------------------------
 
- aria2c -P "http://{host1,host2,host3}/file.iso"
 
- -----------------------------------------------
 
- You can specify numeric sequence:
 
- ---------------------------------------------
 
- aria2c -Z -P "http://host/image[000-100].png"
 
- ---------------------------------------------
 
- [NOTE]
 
- -Z option is required if the all URIs don't point to the same file, such as the above example.
 
- You can specify step counter:
 
- -------------------------------------------
 
- aria2c -Z -P "http://host/image[A-Z:2].png"
 
- -------------------------------------------
 
- Parallel downloads of arbitrary number of URL,metalink,torrent
 
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
- --------------------------------------------------------------
 
- aria2c -j3 -Z "http://host/file1" file2.torrent file3.metalink
 
- --------------------------------------------------------------
 
- BitTorrent Encryption
 
- ^^^^^^^^^^^^^^^^^^^^^
 
- Encrypt whole payload using ARC4:
 
- -------------------------------------------------------------------------
 
- aria2c --bt-min-crypto-level=arc4 --bt-require-crypto=true file.torrent
 
- -------------------------------------------------------------------------
 
- SEE ALSO
 
- --------
 
- Project Web Site: http://aria2.sourceforge.net/
 
- aria2 Wiki: http://sourceforge.net/apps/trac/aria2/wiki
 
- Metalink Homepage: http://www.metalinker.org/
 
- COPYRIGHT
 
- ---------
 
- Copyright (C) 2006, 2009 Tatsuhiro Tsujikawa
 
- This program is free software; you can redistribute it and/or modify
 
- it under the terms of the GNU General Public License as published by
 
- the Free Software Foundation; either version 2 of the License, or
 
- (at your option) any later version.
 
- This program is distributed in the hope that it will be useful,
 
- but WITHOUT ANY WARRANTY; without even the implied warranty of
 
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
- GNU General Public License for more details.
 
- You should have received a copy of the GNU General Public License
 
- along with this program; if not, write to the Free Software
 
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 
- In addition, as a special exception, the copyright holders give
 
- permission to link the code of portions of this program with the
 
- OpenSSL library under certain conditions as described in each
 
- individual source file, and distribute linked combinations
 
- including the two.
 
- You must obey the GNU General Public License in all respects
 
- for all of the code used other than OpenSSL.  If you modify
 
- file(s) with this exception, you may extend this exception to your
 
- version of the file(s), but you are not obligated to do so.  If you
 
- do not wish to do so, delete this exception statement from your
 
- version.  If you delete this exception statement from all source
 
- files in the program, then also delete it here.
 
 
  |