README.rst 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663
  1. .. _README:
  2. .. meta::
  3. :description lang=pt: Manual Aria2 em português
  4. :keywords: programa para download gratuito, download android, download
  5. bittorrent, download linha de comando, download de músicas,
  6. download de ftp, download http, download https, mac OS/X,
  7. windows, linux, manual download aria2, torrent, download stream,
  8. como compilar programa no android, como executar download no
  9. android
  10. :author: tatsuhiro.t_at_gmail_dot_com english version
  11. :author: gsavix@gmail.com tradução para português do brasil
  12. aria2 - Utilitário para Download Super Ultra Rápido
  13. ===================================================
  14. :Author: Tatsuhiro Tsujikawa
  15. :Email: tatsuhiro.t_at_gmail_dot_com
  16. :translator: pt_BR Portuguese, tradutor: gsavix@gmail.com
  17. .. index:: double: author; tatsuhiro.t_at_gmail_dot_com
  18. .. index:: triple: tradutor; tradução; gsavix@gmail.com;
  19. Renúncia
  20. --------
  21. Este programa não vem com garantias. O uso deste programa é por sua
  22. conta e risco.
  23. Introdução
  24. ----------
  25. aria2 é um utilitário para download de arquivos. Os protocolos suportados são
  26. HTTP, HTTPS, FTP, BitTorrent e Metalink. aria2 pode baixar arquivos de
  27. múltiplas fontes protocolos e tenta utilizar para isso a máxima banda possível.
  28. Pode funcionar em diversas plataformas de computadores e sistemas operacionais,
  29. como por exemplo: GNU Linux, OS X, Windows, Android entre outros. Ao mesmo
  30. tempo pode executar download de HTTP, HTTPS, FTP e BitTorrent enquanto estes
  31. dados podem ser disponibilizados (uploaded) ao mesmo tempo para o BitTorrent ou
  32. para você ir assistindo um filme enquanto o download prossegue. Através da
  33. verificação (checksum) de partes dos dados dos Metalink's, aria2
  34. automaticamente valida partes (chunks) do BitTorrent.
  35. A página do projeto está em https://aria2.github.io/.
  36. Veja `aria2 Manual Online <https://aria2.github.io/manual/pt/html/>`_
  37. para aprender como a usar aria2.
  38. Funcionalidades
  39. ---------------
  40. Lista de Configurações:
  41. * Interface de linha de comando
  42. * Download arquivos protocolos HTTP, HTTPS, FTP, BitTorrent
  43. * Download Segmentado
  44. * Metalink versão 4 (RFC 5854) suporte (HTTP, FTP, BitTorrent)
  45. * Metalink versão 3 suporte (HTTP, FTP, BitTorrent)
  46. * Metalink (RFC 6249) suporte (HTTP)
  47. * Implementação HTTP/1.1
  48. * Suporte Proxy HTTP Proxy
  49. * Suporte autenticação HTTP BASIC
  50. * Suporte autenticação HTTP Proxy
  51. * Váriavéis de ambiente (conjunto abrangente) para proxy: http_proxy, https_proxy,
  52. ftp_proxy, all_proxy e no_proxy
  53. * HTTP com gzip, suporte a codificação de conteúdo (deflate)
  54. * Verificação de peer usando Certificados Acreditados informado em HTTPS
  55. * Processamento de autenticação Cliente usando Certificado Acreditado HTTPS
  56. * Suporte a transferência (Chunked) codificada
  57. * Carga de Cookies a partir de arquivos formato Firefox 3, Chromium/Google Chrome
  58. e Mozilla / Firefox / IcedWeasel / (1.x/2.x) / Netscape.
  59. * Salvar Cookies em arquivo formato Mozilla 3, Firefox (1.x/2.x), Chromium,
  60. Netscape.
  61. * Suporte a Cabeçalho HTTP modificado ou personalizado
  62. * Suporte a Conexões Persistentes
  63. * FTP através de Proxy HTTP
  64. * Controle de velocidade Download e Upload (utilização da Banda Rede)
  65. * Extensões BitTorrent: Conexão rápida, DHT, PEX, MSE/PSE, Multi-Tracker
  66. * BitTorrent `WEB-Seeding <http://getright.com/seedtorrent.html>`_. aria2
  67. faz requisições de mais de uma parte de um (chunk) para reduzir sobreposições
  68. de requisições. Também permite requisições pipeline com tamanho especificado
  69. * BitTorrent Local Peer Discovery
  70. * Atualização ou Modificação (Rename) de estrutura de diretórios de downloads
  71. BitTorrent já finalizados
  72. * Interface JSON-RPC (sobre HTTP e WebSocket) / XML-RPC
  73. * Execução em modo daemon
  74. * Download Seletivosem múltiplos arquivos torrent/Metalink
  75. * Validação e checksum de parte (Chunk) em Metalink
  76. * Desabilidar download segmentado em Metalink
  77. * Suporte a Netrc
  78. * Suporte a arquivo de Configuração
  79. * Download de URIs a partir de arquivo texto ou entrada padrão com especificação
  80. opcional de arquivo de saída
  81. * Suporte a URI parametrizadas (intervalos, etc)
  82. * Suporte a IPv6
  83. Como obter o código fonte
  84. -------------------------
  85. O código fonte é mantido no Github:
  86. https://github.com/aria2/aria2
  87. Para obter o último código fonte, execute o seguinte comando::
  88. $ git clone git://github.com/aria2/aria2.git
  89. Aria2 será criado no diretório corrente do seu computador com os arquivos fonte.
  90. Dependências
  91. ------------
  92. ======================== ========================================
  93. funcionalidade dependência
  94. ======================== ========================================
  95. HTTPS GnuTLS ou OpenSSL
  96. BitTorrent libnettle+libgmp ou libgcrypt ou OpenSSL
  97. Metalink libxml2 ou Expat.
  98. Checksum libnettle ou libgcrypt ou OpenSSL
  99. gzip, deflate em HTTP zlib
  100. Async DNS C-Ares
  101. Firefox3/Chromium cookie libsqlite3
  102. XML-RPC libxml2 ou Expat.
  103. JSON-RPC sobre WebSocket libnettle ou libgcrypt ou OpenSSL
  104. ======================== ========================================
  105. .. note::
  106. libxml2 tem precedência sobre Expat se ambas bibliotecas instaladas.
  107. Caso prefira Expat, execute o configure com ``--without-libxml2``.
  108. .. note::
  109. GnuTLS tem precedência sobre OpenSSL se ambas bibliotecas estiverem
  110. instaladas. Caso prefira OpenSSL, execute configure com
  111. ``--without-gnutls`` ``--with-openssl``.
  112. .. note::
  113. libnettle tem precedência sobre libgcrypt se ambas bibliotecas instaladas.
  114. Caso prefira libgcrypt, execute configure com
  115. ``--without-libnettle --with-libgcrypt``. Se OpenSSL é selecionada em
  116. detrimento de GnuTLS, nem libnettle nem libgcrypt poderão ser usadas.
  117. São necessárias as seguintes configurações de bibliotecas SSl e crypto:
  118. * libgcrypt
  119. * libnettle
  120. * OpenSSL
  121. * GnuTLS + libgcrypt
  122. * GnuTLS + libnettle
  123. BitTorrent e Metalink podem ser desabilitados fornecendo-se as opções
  124. ``--disable-bittorrent`` e ``--disable-metalink`` ao executar o script
  125. ./configure.
  126. Para habilitar DNS assíncrono é necessário c-ares.
  127. * projeto c-ares: http://daniel.haxx.se/projects/c-ares/
  128. Como fazer o build
  129. ------------------
  130. Para fazer o build do aria2 a partir dos fontes, instalar antes
  131. pacotes de desenvolvimento ( o nome pode variar nas distribuições):
  132. * libgnutls-dev (Requerido para suporte HTTPS, BitTorrent, Checksum)
  133. * nettle-dev (Requerido para suporte BitTorrent, Checksum)
  134. * libgmp-dev (Requerido para suporte BitTorrent)
  135. * libc-ares-dev (Requerido para suporte DNS async DNS )
  136. * libxml2-dev (Requerido para suporte Metalink)
  137. * zlib1g-dev (Requerido para suporte em HTTP decodificação gzip e deflate)
  138. * libsqlite3-dev (Requerido para suporte cookie Firefox3 / Chromium)
  139. Você pode usar libgcrypt-dev ao invés de nettle-dev e libgmp-dev:
  140. * libgpg-error-dev (Requerido para suporte BitTorrent, Checksum)
  141. * libgcrypt-dev (Requerido para suporte BitTorrent, Checksum)
  142. Pode ser usado libssl-dev ao invés de
  143. libgnutls-dev, nettle-dev, libgmp-dev, libgpg-error-dev e libgcrypt-dev:
  144. * libssl-dev (Requerido para suporte Checksum de HTTPS, BitTorrent )
  145. Pode ser usado libexpat1-dev ao invés de libxml2-dev:
  146. * libexpat1-dev (Requerido for Metalink suporte)
  147. Pode ser necessário usar pkg-config para detectar as bibliotecas
  148. acima mencionadas.
  149. Para a distribuição Fedora são necessários os seguintes pacotes:
  150. * gcc, gcc-c++, kernel-devel, libgcrypt-devel, libgcrypt-devel,
  151. libxml2-devel, openssl-devel
  152. Se foi feito o download do código fonte a partir de um repositório git,
  153. deverá ser executado o seguinte comando para criar o script de
  154. configuração (configure) e outros scripts também necessários
  155. para o build ou compilação do aria2::
  156. $ autoreconf -i
  157. Para construir a documentação é necessário instalar
  158. `Sphinx <http://sphinx.pocoo.org/>`_ que constroi página (man), html ou pdf
  159. contendo a documentação nos idiomas existentes.
  160. Para construir aria2 para Mac OS X, de uma olhada em build_osx_release.sh,
  161. o qual cria binários DMG que são padrões para OS X.
  162. A maneira mais rápida para compilar o aria2 é executar o script::
  163. $ ./configure
  164. Para compilar com link-edição estática utilize o opção da linha
  165. de comando ``ARIA2_STATIC=yes``::
  166. $ ./configure ARIA2_STATIC=yes
  167. Após a configuração feita, execute ``make`` para compilar o programa::
  168. $ make
  169. Ver `Compilação Cross Windows binário`_ para Criar Binário para
  170. Windows. Ver `Compilação Cross Android binário`_ para criar
  171. Binário para Android.
  172. O script configure verifica as bibliotecas
  173. disponíveis e habilita
  174. ou desabilita as funcionalidades na maior abrangência possivel, pois
  175. por padrão todas as funcionalidades são habilitadas. Desde a versão
  176. 1.1.0, aria2 verifica o certificado do servidor HTTPS como padrão.
  177. Se a compilação usou OpenSSL ou a recente versão de GnuTLS na qual há
  178. função ``gnutls_certificate_set_x509_system_trust()`` e a biblioteca
  179. foi adequadamente configurada para localizar o certificado CA
  180. armazenado, aria2 carrega automaticamente estes certificados no início.
  181. Se este não ocorrer, recomenda-se fornecer o caminho para o arquivo que
  182. contém o certificado. Por Exemplo, no Debian o caminho para o arquivo CA
  183. é "/etc/ssl/certs/ca-certificates.crt" (no pacote ca-certificates).
  184. Isto varia de acordo com sua distribuição Linux. Pode ser informada a opção
  185. ``--with-ca-bundle`` para configurar o script usado pelo make::
  186. $ ./configure --with-ca-bundle='/etc/ssl/certs/ca-certificates.crt'
  187. $ make
  188. Sem a opção ``--with-ca-bundle``, haverá um erro ao acessar servidores
  189. HTTPS pois o certificado não pode ser verificado sem possuir um pacote CA
  190. (entidade certificadora). Nesse caso, pode ser especificado um arquivo de
  191. certificado usando opção aria2's ``--ca-certificate``. Caso não haja um
  192. certificado instalado, então o último recurso é desabilitar a validação
  193. do certificado usando a opção ``--check-certificate=false``.
  194. Por padrão, arquivo chamado (bash_completion) ``aria2c`` é instalado no
  195. diretório ``$prefix/share/doc/aria2/bash_completion``. Para mudar o
  196. diretório de instalação do arquivo utilize a opção
  197. ``--with-bashcompletiondir``.
  198. O executavel é 'aria2c' no diretório src.
  199. aria2 usa CppUnit para (test unit) automatizado. Para executar o
  200. test unit emita o comando::
  201. $ make check
  202. Compilação Cross Windows binário
  203. --------------------------------
  204. Nessa seção, está descrito como fazer o build do binário para Windows
  205. usando o compilador cross mingw-w64 no Debian Linux.
  206. Basicamente, após compilar e instalar as bibliotecas dependentes, que
  207. são pré-requisitos pode ser feita a compilação cross apenas passando
  208. através da opção ``--host`` e especificando-se as variáveis
  209. ``CPPFLAGS``, ``LDFLAGS`` e ``PKG_CONFIG_LIBDIR`` que serão usadas
  210. no procedimento (configure). Para maior conveniência e menor custo
  211. de desenvolvimento, é fornecida uma maneira fácil de configurar as
  212. características do build / compilação.
  213. O script ``mingw-config`` é um ``(wrapper)`` para mingw-w64.
  214. Sua utilização é para gerar uma compilação oficial para Windows. Esse
  215. script assume que as seguintes bibliotecas tenham sido compiladas
  216. e/ou instaladas para a compilação cross:
  217. * c-ares
  218. * openssl
  219. * expat
  220. * sqlite3
  221. * zlib
  222. * cppunit
  223. Algumas variáveis de ambiente precisam ser ajustadas para compilar:
  224. ``HOST``
  225. compilação-cross para compilar programas que serão executados em
  226. um computador ``HOST``. Padrão para ``i686-w64-mingw32``.
  227. Para compilar binário para 64bits, especificar ``x86_64-w64-mingw32``.
  228. ``PREFIX``
  229. Prefixo do diretório onde as bibliotecas dependentes estão instaladas.
  230. Padrão para ``/usr/local/$HOST``. ``-I$PREFIX/include`` será adicionado
  231. às opções ``CPPFLAGS``. ``-L$PREFIX/lib`` será adicionado em
  232. ``LDFLAGS``. ``$PREFIX/lib/pkgconfig`` será configurado para
  233. ``PKG_CONFIG_LIBDIR``.
  234. Por exemplo, para construir um binário para 64bits utilize::
  235. $ HOST=x86_64-w64-mingw32 ./mingw-config
  236. .. index:: triple: compilação cross; android; aria2c;
  237. pair: configuração; compilação android
  238. Compilação Cross Android binário
  239. --------------------------------
  240. Nessa seção, descrevemos como construir um binário usando o compilador-cross
  241. NDD no Linux Debian.
  242. ``android-config`` é um script para configurar compilação para Android, o qual
  243. assume que as seguintes bibliotecas também foram construídas para
  244. compilador-cross:
  245. * c-ares
  246. * openssl
  247. * expat
  248. Quando compilando as bibliotecas, certifique-se que o compartilhamento (share)
  249. esteja desabilitado e confirme que somente biblioteca estática está habilitado.
  250. A compilação será feita somente com bibliotecas estáticas.
  251. A bibliteca zlib que vem com o Android NDK, portanto não é necessário
  252. compilar uma zlib nova.
  253. ``android-config`` assume os seguintes pontos:
  254. * Android NDK está instalado no local definido pela variável de ambiente
  255. ``$ANDROID_HOME``. Consultar seção "3/ Chamando o compilador (jeito fácil):"
  256. no Android NDK
  257. ``docs/STANDALONE-TOOLCHAIN.html`` para instalar (toolchain) personalizada.
  258. * Bibliotecas dependentes devem estar instaladas em
  259. ``$ANDROID_HOME/usr/local``.
  260. Antes executar ``android-config`` e ``android-make``, a variável de ambiente
  261. ``$ANDOIRD_HOME`` deve apontar para o caminho correto.
  262. Após ``android-config``, executar ``android-make`` para compilar os fontes.
  263. .. index:: triple: instalação; aria2; android;
  264. triple: execução; aria2; android;
  265. triple: aria2; emulador terminal; android;
  266. triple: jackpal; emulador terminal; android;
  267. triple: script; execução aria2; android;
  268. aria2 para dispositivos Android
  269. ===============================
  270. aria2 é utilitário para download leve e multi-protocolo bem como
  271. multi-fontes operado através da linha de comando de um emulador de terminal
  272. que é executado no android. Há Suporte para downloads do tipo HTTP, HTTPS, FTP,
  273. BitTorrent e Metalink.
  274. Instalando aria2 no Android
  275. ---------------------------
  276. aria2 não é uma aplicação Android Java. aria2 é uma aplicação escrita
  277. em C++ nativo e opera em modo linha de comando. Não é necessário ter
  278. acesso ao usuário 'root' para usar aria2. Como já dito, aria2 é um
  279. programa de linha de comando e por isso é necessário um emulador
  280. de terminal, portanto antes instale um emulador de Terminal Android a
  281. partir do Android Market (ou compile a partir da fonte e instale). Veja
  282. `Github jackpal <https://github.com/jackpal/Android-Terminal-Emulator/>`_.
  283. 1. Copiar o executável do aria2c para ``/mnt/sdcard`` do seu dispositivo.
  284. 2. Executar Emulador Terminal Android.
  285. 3. Criar diretório ``mkdir /data/data/jackpal.androidterm/aria2``
  286. 4. Anexar aplicação
  287. ``cat /mnt/sdcard/aria2c > /data/data/jackpal.androidterm/aria2/aria2c``
  288. 5. Habilitar modo execução
  289. ``chmod 744 /data/data/jackpal.androidterm/aria2/aria2c``
  290. 6. Adicionar o seguintes comandos ao Emulador de Terminal Android
  291. Terminal Emulator::
  292. export HOME=/data/data/jackpal.androidterm/aria2; cd $HOME
  293. 7. Sair do Emulador de Terminal Android.
  294. 8. Executar novamente o Emulador de Terminal Android.
  295. 9. Execute aria2c chamando o comando ``./aria2c -v``
  296. Como usar comandos do aria2 no Android
  297. --------------------------------------
  298. Ver o manual do aria2 online nos seguintes idiomas:
  299. `Tradução em Português <https://aria2.github.io/manual/pt/html/>`_.
  300. `Original em Inglês <https://aria2.github.io/manual/en/html/>`_.
  301. `Tradução em Russo <https://aria2.github.io/manual/ru/html/>`_.
  302. Notas sobre uso do aria2 no Android
  303. -----------------------------------
  304. O executável aria2c foi gerado usando android-ndk-r8d.
  305. As seguintes bibliotecas foram ligadas estaticamente.
  306. * openssl 1.0.1e
  307. * expat 2.1.0
  308. * c-ares 1.9.1
  309. Como o Android não possuem ``/etc/resolv.conf``, c-ares (resolvedor
  310. assíncrono de DNS) é desabilitado por padrão. Muitas vezes a resolução
  311. de nomes é lenta, recomenda-se habilitar c-ares. Para desabilitar use
  312. :option:``--async-dns`` e especifique os servidores DNS usando
  313. opção :option:``--async-dns-server``, como abaixo::
  314. --async-dns --async-dns-server=`getprop meu.dns1`,`getprop meu.dns2`
  315. .. index:: double; servidor dns; android;
  316. Para não se entediar digitando estes parâmetros, toda vez que usar aria2c,
  317. o seguinte script shell pode ser útil::
  318. #!/system/bin/sh
  319. /data/data/jackpal.androidterm/aria2c \
  320. --async-dns \
  321. --async-dns-server=`getprop meu.dns1`,`getprop meu.dns2` \
  322. "$@"
  323. Lembrar de tornar este script executável, através do comando chmod.
  324. Também substitua meu.dns1 e meu.dns2 pelos DNS reais que você quer.
  325. Exemplo: (``chmod 744 /path-para-o/scriptSCRIPT``)
  326. Problemas Conhecidos com o aria2c no Android
  327. --------------------------------------------
  328. * Como Android não tem ``/dev/stdout``, ``-l-`` não funciona.
  329. * Em alguns casos o Emulador de Terminal Android, para de atualizar a console.
  330. É como se o aria2c congelasse, mas o aria2c continua executando normalmente.
  331. Para Gerar a documentação
  332. =========================
  333. `Sphinx <http://sphinx.pocoo.org/>`_ é usado para construir a
  334. documentação. As páginas (man) da documentação também são criadas
  335. através do comando ``make man`` caso estas páginas estejam desatualizadas.
  336. Também podem ser construídas a documentação em diversos formatos como
  337. html, latexpdf, epub, devhelp, latex, htmlhelp. Exemplo: Para construir
  338. a documentação aria2 em HTML use o comando ``make html``.
  339. O resultado será criado na subpasta _build dentro da pasta onde baixou
  340. o fonte do aria2. Ex: se baixou e descompactou o aria2 no local
  341. /home/usuario/aria2/ então a documentação gerada está em::
  342. /home/usuario/aria2/doc/manual-src/pt/_build/
  343. A pasta ``pt`` indica o idioma que atualmente pode ser
  344. (en,pt,ru). Para gerar documento PDF use a opção ``make latexpdf``
  345. certifique-se de que os pré-requisitos de fontes usados pelo latex
  346. estejam presentes.
  347. A versão online HTML também está disponível em:
  348. `Original em Inglês <https://aria2.github.io/manual/en/html/>`_
  349. e nas traduções em:
  350. (`Português <https://aria2.github.io/manual/pt/html/>`_ e
  351. `Russo <https://aria2.github.io/manual/ru/html/>`_).
  352. BitTorrrent
  353. ===========
  354. Sobre Nome de arquivos
  355. ----------------------
  356. O nome do arquivo que será baixado é determinado da seguinte maneira:
  357. modo arquivo simples
  358. O a chave "name" está presento no arquivo .torrent, o nome do
  359. arquivo será o valor da chave "name". De outra maneira o nome
  360. do arquivo será baseado no arquivo .torrent mais o sufixo
  361. ".file". Exemplo: arquivo .torrent é "brasil.torrrent", então
  362. o nome do arquivo baixado será: "brasil.torrent.file". O
  363. diretório onde será armazenado o arquivo pode ser especificado
  364. através da opção -d.
  365. modo arquivos múltiplos
  366. A estrutura completa diretório/arquivo mencionada no arquivo .torrent será
  367. creada. O diretório base que conterá toda estrutura de diretórios e
  368. arquivos baixados, pode ser especificado através da opção -d.
  369. Antes do download iniciar a estrutura completa dos diretórios necessários
  370. ao download será criada. Por padrão aria2 abre no mínimo 100 arquivos
  371. mencionados no arquivo .torrent e diretamente executa gravação e leitura
  372. desses arquivos. O número máximo de arquivos para serem abertos
  373. simultaneamente pode ser controlado através da opção
  374. :option:``--bt-max-open-files``.
  375. DHT
  376. ---
  377. aria2 suporte DHT. Por padrão, a tabela de roteamento
  378. para IPv4 DHT é salva em ``$HOME/.aria2/dht.dat`` e a tabela de
  379. roteamento para IPv6 DHT é salva em ``$HOME/.aria2/dht6.dat``.
  380. aria2 utiliza o mesmo número de porta para ouvir ambos
  381. IPv4 e IPv6 DHT.
  382. Rastreador UDP
  383. --------------
  384. Rastreador UDP é habilitado quando DHT IPv4 é habilitado. O número
  385. da porta do rastreador UDP é compartilhado com DHT. Usar opção
  386. :option:``--dht-listen-port`` para modificar o número da porta.
  387. Outras informações importantes
  388. ------------------------------
  389. * Se a opção -o é usada para mudar o nome do arquivo de saida
  390. .torrent não o nome do arquivo dentro do arquivo .torrent.
  391. Para esta finalidade utilizar opção :option:``--index-out``.
  392. * Os números de portas padrões que o aria2 utiliza para TCP e UDP
  393. estão no intervalo de 6881 até 6999 (6881-6999).
  394. * aria2 não configura automaticamente port-forwarding.
  395. Por favor configurar manualmente seu roteador ou firewall.
  396. * O número máximo de é 55. Este limite pode ser excedido quando
  397. a taxa de download é muito baixa. Esta taxa de download pode ser
  398. ajustada com a opção :option:``--bt-request-peer-speed-limit``.
  399. * Desde a versão 0.10.0, aria2 parou de enviar mensagem de
  400. requisição após o download seletivo completar-se.
  401. Metalink
  402. ========
  403. A implementação atual suporte HTTP, HTTPS, FTP e BitTorrent. Outros
  404. protocolos P2P são ignorados. São suportados documentos das versões
  405. Metalink4 e Metalink 3.0.
  406. Para validação de (checksum) são suportados: md5, sha-1, sha-224,
  407. sha-256, sha-384 e sha-512. Se múltiplos algoritmos de hast
  408. são fornecidos aria2 utiliza o mais robusto. Se a validação do
  409. checksum falhar totalmente aria2 não tentará mais fazer download e
  410. terminará o processamento com código de retorno diferente de zero.
  411. As preferências de usuário suportadas são versão, idioma, local,
  412. protocolo e sistema operacional.
  413. Se verificação (checksum) de (chunk) são fornecidas em um arquivo
  414. Metalink, aria2 automaticamente valida (chunk) partes dos dados
  415. durante o download. Esse comportamente pode ser desligado através
  416. de opção da linha de comando.
  417. Se uma assinatura (certificado) é incluida em um arquivo Metalink,
  418. aria2 salva a assinatura como um arquivo após a conclusão do download.
  419. O nome do arquivo terá o sufixo ".sig". Caso já exista não será salvo.
  420. Em torrent de múltiplos arquivos Metalink4, podem aparecer no elemento
  421. metalink:metaurl. Uma vez que aria2 não faz download de 2 Torrents
  422. iguais ao mesmo tempo, aria2 agrupa arquivos em elementos metalink:file
  423. os quais tem o mesmo metaurl BitTorrent e serão baixados de um
  424. simples BitTorrent (swarm).
  425. Isto basicamente ocorre para download de multiplos arquivos Torrent quando
  426. há seleção de arquivo(s), portanto arquivos adjacentes que não estão
  427. no documento Metalink mas que compartilham a mesma (peça ou pedaço)
  428. do arquivo selecionado também serão baixados e criados.
  429. Se uma URI relativa é especificada em um elemento metalink:url ou
  430. metalink:metaurl, aria2 usa a URI do arquivo Metalink como URI base
  431. para resolver a URI relativa. Se a URI relativa encontra-se em um
  432. arquivo Metalink que é lido do disco local, aria2 usa o valor da
  433. opção ``--metalink-base-uri`` como URI base. Se essa opção não é
  434. especificada a URI relativa será ignorada.
  435. Metalink / HTTP
  436. ===============
  437. Esta versão utiliza links rel=duplicate. aria2 interpreta
  438. os campos do cabeçalho do Digest e verifica onde o valor do digest
  439. confere com outras fontes. Se houver diferença, derruba a conexão.
  440. aria2 também utiliza esse valor do digest para executar verificação do
  441. checksum após o download terminar. aria2 reconhece valor geo.
  442. Para sobrepor o valor de sua preferência utilize a opção
  443. ``--metalink-location``.
  444. netrc
  445. =====
  446. O suporte netrc é habilitado por padrão para HTTP, HTTPS e FTP. Para
  447. desabilitar especificar opção -n na linha de comando.
  448. Seu arquivo .netrc precisa possuir permissões corretas (600).
  449. WebSocket
  450. =========
  451. O servidor WebSocket intrínseco no aria2 implementa a especificação
  452. definida na RFC 6455. O protocolo suportado refere-se a versão 13.
  453. Referências
  454. ===========
  455. * `aria2 Manual Inglês
  456. <https://aria2.github.io/manual/en/html/>`_ original inglês
  457. * `aria2 Manual Russo
  458. <https://aria2.github.io/manual/ru/html/>`_ versão russo
  459. * `aria2 Manual Português
  460. <https://aria2.github.io/manual/pt/html/>`_ versão português
  461. * https://aria2.github.io/
  462. * `RFC 959 FILE TRANSFER PROTOCOL (FTP)
  463. <http://tools.ietf.org/html/rfc959>`_
  464. * `RFC 1738 Uniform Resource Locators (URL)
  465. <http://tools.ietf.org/html/rfc1738>`_
  466. * `RFC 2428 FTP Extensions for IPv6 and NATs
  467. <http://tools.ietf.org/html/rfc2428>`_
  468. * `RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1
  469. <http://tools.ietf.org/html/rfc2616>`_
  470. * `RFC 3659 Extensions to FTP <http://tools.ietf.org/html/rfc3659>`_
  471. * `RFC 3986 Uniform Resource Identifier (URI): Generic Syntax
  472. <http://tools.ietf.org/html/rfc3986>`_
  473. * `RFC 4038 Application Aspects of IPv6 Transition
  474. <http://tools.ietf.org/html/rfc4038>`_
  475. * `RFC 5854 The Metalink Download Description Format
  476. <http://tools.ietf.org/html/rfc5854>`_
  477. * `RFC 6249 Metalink/HTTP: Mirrors and Hashes
  478. <http://tools.ietf.org/html/rfc6249>`_
  479. * `RFC 6265 HTTP State Management Mechanism
  480. <http://tools.ietf.org/html/rfc6265>`_
  481. * `RFC 6455 The WebSocket Protocol <http://tools.ietf.org/html/rfc6455>`_
  482. * `The BitTorrent Protocol Specification
  483. <http://www.bittorrent.org/beps/bep_0003.html>`_
  484. * `BitTorrent: DHT Protocol
  485. <http://www.bittorrent.org/beps/bep_0005.html>`_
  486. * `BitTorrent: Fast Extension
  487. <http://www.bittorrent.org/beps/bep_0006.html>`_
  488. * `BitTorrent: IPv6 Tracker Extension
  489. <http://www.bittorrent.org/beps/bep_0007.html>`_
  490. * `BitTorrent: Extension for Peers to Send Metadata Files
  491. <http://www.bittorrent.org/beps/bep_0009.html>`_
  492. * `BitTorrent: Extension Protocol
  493. <http://www.bittorrent.org/beps/bep_0010.html>`_
  494. * `BitTorrent: Multitracker Metadata Extension
  495. <http://www.bittorrent.org/beps/bep_0012.html>`_
  496. * `BitTorrent: WebSeed - HTTP/FTP Seeding (GetRight style)
  497. <http://www.bittorrent.org/beps/bep_0019.html>`_
  498. * `BitTorrent: Private Torrents
  499. <http://www.bittorrent.org/beps/bep_0027.html>`_
  500. * `BitTorrent: BitTorrent DHT Extensions for IPv6
  501. <http://www.bittorrent.org/beps/bep_0032.html>`_
  502. * `BitTorrent: Message Stream Encryption
  503. <http://wiki.vuze.com/w/Message_Stream_Encryption>`_
  504. * `Kademlia: A Peer-to-peer Information System Based on the XOR Metric
  505. <http://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf>`_
  506. versão revisada em 30.março.2013 por gsavix@gmail.com
  507. Anotação sobre divergência entre Manual e o aria2:
  508. Esta página de manual pode não necessariamente conter a última informação.
  509. Caso haja discrepância entre alguma informação do manual e o aria2, por
  510. favor refira-se a versão em inglês resultante do comando ``man aria2c``