mirror of https://github.com/aria2/aria2
				
				
				
			
		
			
				
	
	
		
			664 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
			
		
		
	
	
			664 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
.. _README:
 | 
						|
 | 
						|
.. meta::
 | 
						|
   :description lang=pt: Manual Aria2 em português
 | 
						|
   :keywords: programa para download gratuito, download android, download
 | 
						|
              bittorrent, download linha de comando, download de músicas,
 | 
						|
              download de ftp, download http, download https, mac OS/X,
 | 
						|
              windows, linux, manual download aria2, torrent, download stream,
 | 
						|
              como compilar programa no android, como executar download no
 | 
						|
              android
 | 
						|
   :author: tatsuhiro.t_at_gmail_dot_com english version
 | 
						|
   :author: gsavix@gmail.com tradução para português do brasil
 | 
						|
 | 
						|
 | 
						|
aria2 - Utilitário para Download Super Ultra Rápido
 | 
						|
===================================================
 | 
						|
:Author:     Tatsuhiro Tsujikawa
 | 
						|
:Email:      tatsuhiro.t_at_gmail_dot_com
 | 
						|
:translator: pt_BR Portuguese, tradutor: gsavix@gmail.com
 | 
						|
 | 
						|
.. index:: double: author; tatsuhiro.t_at_gmail_dot_com
 | 
						|
.. index:: triple: tradutor; tradução; gsavix@gmail.com;
 | 
						|
 | 
						|
Renúncia
 | 
						|
--------
 | 
						|
Este programa não vem com garantias. O uso deste programa é por sua
 | 
						|
conta e risco.
 | 
						|
 | 
						|
Introdução
 | 
						|
----------
 | 
						|
aria2 é um utilitário para download de arquivos. Os protocolos suportados são
 | 
						|
HTTP, HTTPS, FTP, BitTorrent e Metalink. aria2 pode baixar arquivos de
 | 
						|
múltiplas fontes protocolos e tenta utilizar para isso a máxima banda possível.
 | 
						|
Pode funcionar em diversas plataformas de computadores e sistemas operacionais,
 | 
						|
como por exemplo: GNU Linux, OS X, Windows, Android entre outros. Ao mesmo
 | 
						|
tempo pode executar download de HTTP, HTTPS, FTP e BitTorrent enquanto estes
 | 
						|
dados podem ser disponibilizados (uploaded) ao mesmo tempo para o BitTorrent ou
 | 
						|
para você ir assistindo um filme enquanto o download prossegue.  Através da
 | 
						|
verificação (checksum) de partes dos dados dos Metalink's, aria2
 | 
						|
automaticamente valida partes (chunks) do BitTorrent.
 | 
						|
 | 
						|
A página do projeto está em https://aria2.github.io/.
 | 
						|
 | 
						|
Veja `aria2 Manual Online <https://aria2.github.io/manual/pt/html/>`_
 | 
						|
para aprender como a usar aria2.
 | 
						|
 | 
						|
Funcionalidades
 | 
						|
---------------
 | 
						|
 | 
						|
Lista de Configurações:
 | 
						|
 | 
						|
* Interface de linha de comando
 | 
						|
* Download arquivos protocolos HTTP, HTTPS, FTP, BitTorrent
 | 
						|
* Download Segmentado
 | 
						|
* Metalink versão 4 (RFC 5854) suporte (HTTP, FTP, BitTorrent)
 | 
						|
* Metalink versão 3 suporte (HTTP, FTP, BitTorrent)
 | 
						|
* Metalink (RFC 6249) suporte (HTTP)
 | 
						|
* Implementação HTTP/1.1
 | 
						|
* Suporte Proxy HTTP Proxy
 | 
						|
* Suporte autenticação HTTP BASIC
 | 
						|
* Suporte autenticação HTTP Proxy
 | 
						|
* Váriavéis de ambiente (conjunto abrangente) para proxy: http_proxy, https_proxy,
 | 
						|
  ftp_proxy, all_proxy e no_proxy
 | 
						|
 
 | 
						|
* HTTP com gzip, suporte a codificação de conteúdo (deflate)
 | 
						|
* Verificação de peer usando Certificados Acreditados informado em HTTPS
 | 
						|
* Processamento de autenticação Cliente usando Certificado Acreditado HTTPS
 | 
						|
* Suporte a transferência (Chunked) codificada
 | 
						|
* Carga de Cookies a partir de arquivos formato Firefox 3, Chromium/Google Chrome
 | 
						|
  e Mozilla / Firefox / IcedWeasel / (1.x/2.x) / Netscape.
 | 
						|
  
 | 
						|
* Salvar Cookies em arquivo formato Mozilla 3, Firefox (1.x/2.x), Chromium,
 | 
						|
  Netscape.
 | 
						|
 
 | 
						|
* Suporte a Cabeçalho HTTP modificado ou personalizado
 | 
						|
* Suporte a Conexões Persistentes
 | 
						|
* FTP através de Proxy HTTP
 | 
						|
* Controle de velocidade Download e Upload (utilização da Banda Rede)
 | 
						|
* Extensões BitTorrent: Conexão rápida, DHT, PEX, MSE/PSE, Multi-Tracker
 | 
						|
* BitTorrent `WEB-Seeding <http://getright.com/seedtorrent.html>`_. aria2
 | 
						|
  faz requisições de mais de uma parte de um (chunk) para reduzir sobreposições
 | 
						|
  de requisições. Também permite requisições pipeline com tamanho especificado
 | 
						|
 
 | 
						|
* BitTorrent Local Peer Discovery
 | 
						|
* Atualização ou Modificação (Rename) de estrutura de diretórios de downloads
 | 
						|
  BitTorrent já finalizados
 | 
						|
 
 | 
						|
* Interface JSON-RPC (sobre HTTP e WebSocket) / XML-RPC
 | 
						|
* Execução em modo daemon
 | 
						|
* Download Seletivosem múltiplos arquivos torrent/Metalink
 | 
						|
* Validação e checksum de parte (Chunk) em Metalink
 | 
						|
* Desabilidar download segmentado em Metalink
 | 
						|
* Suporte a Netrc
 | 
						|
* Suporte a arquivo de Configuração
 | 
						|
* Download de URIs a partir de arquivo texto ou entrada padrão com especificação
 | 
						|
  opcional de arquivo de saída
 | 
						|
 
 | 
						|
* Suporte a URI parametrizadas (intervalos, etc)
 | 
						|
* Suporte a IPv6
 | 
						|
 
 | 
						|
Como obter o código fonte
 | 
						|
-------------------------
 | 
						|
 | 
						|
O código fonte é mantido no Github:
 | 
						|
https://github.com/aria2/aria2
 | 
						|
 | 
						|
Para obter o último código fonte, execute o seguinte comando::
 | 
						|
 | 
						|
    $ git clone git://github.com/aria2/aria2.git
 | 
						|
 | 
						|
Aria2 será criado no diretório corrente do seu computador com os arquivos fonte.
 | 
						|
 | 
						|
 | 
						|
Dependências
 | 
						|
------------
 | 
						|
 | 
						|
 | 
						|
======================== ========================================
 | 
						|
funcionalidade           dependência
 | 
						|
======================== ========================================
 | 
						|
HTTPS                    GnuTLS ou OpenSSL
 | 
						|
BitTorrent               libnettle+libgmp ou libgcrypt ou OpenSSL
 | 
						|
Metalink                 libxml2 ou Expat.
 | 
						|
Checksum                 libnettle ou libgcrypt ou OpenSSL
 | 
						|
gzip, deflate em HTTP    zlib
 | 
						|
Async DNS                C-Ares
 | 
						|
Firefox3/Chromium cookie libsqlite3
 | 
						|
XML-RPC                  libxml2 ou Expat.
 | 
						|
JSON-RPC sobre WebSocket libnettle ou libgcrypt ou OpenSSL
 | 
						|
======================== ========================================
 | 
						|
 | 
						|
 | 
						|
.. note::
 | 
						|
 | 
						|
  libxml2 tem precedência sobre Expat se ambas bibliotecas instaladas.
 | 
						|
  Caso prefira Expat, execute o configure com ``--without-libxml2``.
 | 
						|
 | 
						|
.. note::
 | 
						|
 | 
						|
  GnuTLS tem precedência sobre OpenSSL se ambas bibliotecas estiverem
 | 
						|
  instaladas. Caso prefira OpenSSL, execute configure com 
 | 
						|
  ``--without-gnutls`` ``--with-openssl``.
 | 
						|
 | 
						|
.. note::
 | 
						|
 | 
						|
  libnettle tem precedência sobre libgcrypt se ambas bibliotecas instaladas.
 | 
						|
  Caso prefira libgcrypt, execute configure com 
 | 
						|
  ``--without-libnettle --with-libgcrypt``. Se OpenSSL é selecionada em
 | 
						|
  detrimento de GnuTLS, nem libnettle nem libgcrypt poderão ser usadas.
 | 
						|
 | 
						|
São necessárias as seguintes configurações de bibliotecas SSl e crypto:
 | 
						|
 | 
						|
* libgcrypt
 | 
						|
* libnettle
 | 
						|
* OpenSSL
 | 
						|
* GnuTLS + libgcrypt
 | 
						|
* GnuTLS + libnettle
 | 
						|
 | 
						|
BitTorrent e Metalink podem ser desabilitados fornecendo-se as opções
 | 
						|
``--disable-bittorrent`` e ``--disable-metalink`` ao executar o script 
 | 
						|
./configure.
 | 
						|
 | 
						|
 | 
						|
Para habilitar DNS assíncrono é necessário c-ares.
 | 
						|
 | 
						|
* projeto c-ares: http://daniel.haxx.se/projects/c-ares/
 | 
						|
 | 
						|
Como fazer o build
 | 
						|
------------------
 | 
						|
Para fazer o build do aria2 a partir dos fontes, instalar antes
 | 
						|
pacotes de desenvolvimento ( o nome pode variar nas distribuições):
 | 
						|
 | 
						|
* libgnutls-dev    (Requerido para suporte HTTPS, BitTorrent, Checksum)
 | 
						|
* nettle-dev       (Requerido para suporte BitTorrent, Checksum)
 | 
						|
* libgmp-dev       (Requerido para suporte BitTorrent)
 | 
						|
* libc-ares-dev    (Requerido para suporte DNS async DNS )
 | 
						|
* libxml2-dev      (Requerido para suporte Metalink)
 | 
						|
* zlib1g-dev       (Requerido para suporte em HTTP decodificação gzip e deflate)
 | 
						|
* libsqlite3-dev   (Requerido para suporte cookie Firefox3 / Chromium)
 | 
						|
 | 
						|
Você pode usar libgcrypt-dev ao invés de nettle-dev e libgmp-dev:
 | 
						|
 | 
						|
* libgpg-error-dev (Requerido para suporte BitTorrent, Checksum)
 | 
						|
* libgcrypt-dev    (Requerido para suporte BitTorrent, Checksum)
 | 
						|
 | 
						|
Pode ser usado libssl-dev ao invés de
 | 
						|
libgnutls-dev, nettle-dev, libgmp-dev, libgpg-error-dev e libgcrypt-dev:
 | 
						|
 | 
						|
* libssl-dev       (Requerido para suporte Checksum de HTTPS, BitTorrent )
 | 
						|
 | 
						|
Pode ser usado libexpat1-dev ao invés de libxml2-dev:
 | 
						|
 | 
						|
* libexpat1-dev    (Requerido for Metalink suporte)
 | 
						|
 | 
						|
Pode ser necessário usar pkg-config para detectar as bibliotecas
 | 
						|
acima mencionadas.
 | 
						|
 | 
						|
Para a distribuição Fedora são necessários os seguintes pacotes:
 | 
						|
 | 
						|
* gcc, gcc-c++, kernel-devel, libgcrypt-devel, libgcrypt-devel, 
 | 
						|
  libxml2-devel, openssl-devel
 | 
						|
 | 
						|
Se foi feito o download do código fonte a partir de um repositório git,
 | 
						|
deverá ser executado o seguinte comando para criar o script de
 | 
						|
configuração (configure) e outros scripts também necessários
 | 
						|
para o build ou compilação do aria2::
 | 
						|
 | 
						|
    $ autoreconf -i
 | 
						|
 | 
						|
Para construir a documentação é necessário instalar
 | 
						|
`Sphinx <http://sphinx.pocoo.org/>`_ que constroi página (man), html ou pdf
 | 
						|
contendo a documentação nos idiomas existentes.
 | 
						|
 | 
						|
Para construir aria2 para Mac OS X, de uma olhada em build_osx_release.sh,
 | 
						|
o qual cria binários DMG que são padrões para OS X.
 | 
						|
 | 
						|
A maneira mais rápida para compilar o aria2 é executar o script::
 | 
						|
 | 
						|
    $ ./configure
 | 
						|
 | 
						|
Para compilar com link-edição estática utilize o opção da linha
 | 
						|
de comando ``ARIA2_STATIC=yes``::
 | 
						|
 | 
						|
    $ ./configure ARIA2_STATIC=yes
 | 
						|
 | 
						|
Após a configuração feita, execute ``make`` para compilar o programa::
 | 
						|
 | 
						|
    $ make
 | 
						|
 | 
						|
Ver `Compilação Cross Windows binário`_ para Criar Binário para
 | 
						|
Windows.  Ver `Compilação Cross Android binário`_ para criar
 | 
						|
Binário para Android.
 | 
						|
O script configure verifica as bibliotecas
 | 
						|
disponíveis e habilita
 | 
						|
ou desabilita as funcionalidades na maior abrangência possivel, pois
 | 
						|
por padrão todas as funcionalidades são habilitadas.  Desde a versão
 | 
						|
1.1.0, aria2 verifica o certificado do servidor HTTPS como padrão.
 | 
						|
Se a compilação usou OpenSSL ou a recente versão de GnuTLS na qual há
 | 
						|
função ``gnutls_certificate_set_x509_system_trust()`` e a biblioteca
 | 
						|
foi adequadamente configurada para localizar o certificado CA
 | 
						|
armazenado, aria2 carrega automaticamente estes certificados no início.
 | 
						|
Se este não ocorrer, recomenda-se fornecer o caminho para o arquivo que
 | 
						|
contém o certificado. Por Exemplo, no Debian o caminho para o arquivo CA
 | 
						|
é "/etc/ssl/certs/ca-certificates.crt" (no pacote ca-certificates).
 | 
						|
Isto varia de acordo com sua distribuição Linux. Pode ser informada a opção
 | 
						|
``--with-ca-bundle`` para configurar o script usado pelo make:: 
 | 
						|
 | 
						|
    $ ./configure --with-ca-bundle='/etc/ssl/certs/ca-certificates.crt'
 | 
						|
    $ make
 | 
						|
 | 
						|
Sem a opção ``--with-ca-bundle``, haverá um erro ao acessar servidores
 | 
						|
HTTPS pois o certificado não pode ser verificado sem possuir um pacote CA
 | 
						|
(entidade certificadora). Nesse caso, pode ser especificado um arquivo de
 | 
						|
certificado usando opção aria2's ``--ca-certificate``.  Caso não haja um
 | 
						|
certificado instalado, então o último recurso é desabilitar a validação
 | 
						|
do certificado usando a opção ``--check-certificate=false``.
 | 
						|
 | 
						|
Por padrão, arquivo chamado (bash_completion) ``aria2c`` é instalado no
 | 
						|
diretório ``$prefix/share/doc/aria2/bash_completion``.  Para mudar o
 | 
						|
diretório de instalação do arquivo utilize a opção
 | 
						|
``--with-bashcompletiondir``.
 | 
						|
 | 
						|
O executavel é 'aria2c' no diretório src.
 | 
						|
 | 
						|
aria2 usa CppUnit para (test unit) automatizado. Para executar o
 | 
						|
test unit emita o comando::
 | 
						|
 | 
						|
    $ make check
 | 
						|
 | 
						|
Compilação Cross Windows binário
 | 
						|
--------------------------------
 | 
						|
 | 
						|
Nessa seção, está descrito como fazer o build do binário para Windows
 | 
						|
usando o compilador cross mingw-w64 no Debian Linux.
 | 
						|
 | 
						|
Basicamente, após compilar e instalar as bibliotecas dependentes, que
 | 
						|
são pré-requisitos pode ser feita a compilação cross apenas passando 
 | 
						|
através da opção ``--host`` e especificando-se as variáveis
 | 
						|
``CPPFLAGS``, ``LDFLAGS`` e ``PKG_CONFIG_LIBDIR`` que serão usadas
 | 
						|
no procedimento (configure). Para maior conveniência e menor custo
 | 
						|
de desenvolvimento, é fornecida uma maneira fácil de configurar as
 | 
						|
características do build / compilação.
 | 
						|
 | 
						|
O script ``mingw-config`` é um ``(wrapper)`` para mingw-w64.
 | 
						|
Sua utilização é para gerar uma compilação oficial para Windows.  Esse
 | 
						|
script assume que as seguintes bibliotecas tenham sido compiladas
 | 
						|
e/ou instaladas para a compilação cross:
 | 
						|
 | 
						|
* c-ares
 | 
						|
* openssl
 | 
						|
* expat
 | 
						|
* sqlite3
 | 
						|
* zlib
 | 
						|
* cppunit
 | 
						|
 | 
						|
Algumas variáveis de ambiente precisam ser ajustadas para compilar:
 | 
						|
 | 
						|
``HOST``
 | 
						|
  compilação-cross para compilar programas que serão executados em
 | 
						|
  um computador ``HOST``. Padrão para ``i686-w64-mingw32``.
 | 
						|
  Para compilar binário para 64bits, especificar ``x86_64-w64-mingw32``.
 | 
						|
 | 
						|
``PREFIX``
 | 
						|
  Prefixo do diretório onde as bibliotecas dependentes estão instaladas.
 | 
						|
  Padrão para ``/usr/local/$HOST``. ``-I$PREFIX/include`` será adicionado
 | 
						|
  às opções ``CPPFLAGS``. ``-L$PREFIX/lib`` será adicionado em 
 | 
						|
  ``LDFLAGS``. ``$PREFIX/lib/pkgconfig`` será configurado para 
 | 
						|
  ``PKG_CONFIG_LIBDIR``.
 | 
						|
 | 
						|
Por exemplo, para construir um binário para 64bits utilize:: 
 | 
						|
 | 
						|
    $ HOST=x86_64-w64-mingw32 ./mingw-config
 | 
						|
 | 
						|
.. index:: triple:  compilação cross; android; aria2c;
 | 
						|
           pair:    configuração; compilação android
 | 
						|
 | 
						|
Compilação Cross Android binário
 | 
						|
--------------------------------
 | 
						|
 | 
						|
Nessa seção, descrevemos como construir um binário usando o compilador-cross
 | 
						|
NDD no Linux Debian.
 | 
						|
 | 
						|
``android-config`` é um script para configurar compilação para Android, o qual
 | 
						|
assume que as seguintes bibliotecas também foram construídas para
 | 
						|
compilador-cross:
 | 
						|
 | 
						|
* c-ares
 | 
						|
* openssl
 | 
						|
* expat
 | 
						|
 | 
						|
Quando compilando as bibliotecas, certifique-se que o compartilhamento (share)
 | 
						|
esteja desabilitado e confirme que somente biblioteca estática está habilitado.
 | 
						|
A compilação será feita somente com bibliotecas estáticas.
 | 
						|
 | 
						|
A bibliteca zlib que vem com o Android NDK, portanto não é necessário
 | 
						|
compilar uma zlib nova.
 | 
						|
 | 
						|
``android-config`` assume os seguintes pontos:
 | 
						|
 | 
						|
* Android NDK está instalado no local definido pela variável de ambiente
 | 
						|
  ``$ANDROID_HOME``.  Consultar seção "3/ Chamando o compilador (jeito fácil):"
 | 
						|
  no Android NDK
 | 
						|
  ``docs/STANDALONE-TOOLCHAIN.html`` para instalar (toolchain) personalizada.
 | 
						|
* Bibliotecas dependentes devem estar instaladas em 
 | 
						|
  ``$ANDROID_HOME/usr/local``.
 | 
						|
 | 
						|
Antes executar ``android-config`` e ``android-make``, a variável de ambiente
 | 
						|
``$ANDOIRD_HOME`` deve apontar para o caminho correto.
 | 
						|
 | 
						|
Após ``android-config``, executar ``android-make`` para compilar os fontes.
 | 
						|
 | 
						|
.. index::	triple:    instalação; aria2; android;
 | 
						|
                triple:    execução; aria2; android;
 | 
						|
                triple:    aria2; emulador terminal; android;
 | 
						|
                triple:    jackpal; emulador terminal; android;
 | 
						|
                triple:    script; execução aria2; android;
 | 
						|
 | 
						|
 | 
						|
aria2 para dispositivos Android
 | 
						|
===============================
 | 
						|
 | 
						|
aria2 é utilitário para download leve e multi-protocolo bem como
 | 
						|
multi-fontes operado através da linha de comando de um emulador de terminal
 | 
						|
que é executado no android. Há Suporte para downloads do tipo HTTP, HTTPS, FTP,
 | 
						|
BitTorrent e Metalink.
 | 
						|
 | 
						|
Instalando aria2 no Android
 | 
						|
---------------------------
 | 
						|
 | 
						|
aria2 não é uma aplicação Android Java. aria2 é uma aplicação escrita
 | 
						|
em C++ nativo e opera em modo linha de comando.  Não é necessário ter
 | 
						|
acesso ao usuário 'root' para usar aria2.  Como já dito, aria2 é um
 | 
						|
programa de linha de comando e por isso é necessário um emulador
 | 
						|
de terminal, portanto antes instale um emulador de Terminal Android a
 | 
						|
partir do Android Market (ou compile a partir da fonte e instale). Veja
 | 
						|
`Github jackpal <https://github.com/jackpal/Android-Terminal-Emulator/>`_.
 | 
						|
 | 
						|
1. Copiar o executável do aria2c para ``/mnt/sdcard`` do seu dispositivo.
 | 
						|
2. Executar Emulador Terminal Android.
 | 
						|
3. Criar diretório ``mkdir /data/data/jackpal.androidterm/aria2``
 | 
						|
4. Anexar aplicação 
 | 
						|
   ``cat /mnt/sdcard/aria2c > /data/data/jackpal.androidterm/aria2/aria2c``
 | 
						|
5. Habilitar modo execução 
 | 
						|
   ``chmod 744 /data/data/jackpal.androidterm/aria2/aria2c``
 | 
						|
6. Adicionar o seguintes comandos ao Emulador de Terminal Android
 | 
						|
   Terminal Emulator::
 | 
						|
 | 
						|
       export HOME=/data/data/jackpal.androidterm/aria2; cd $HOME
 | 
						|
 | 
						|
7. Sair do Emulador de Terminal Android.
 | 
						|
8. Executar novamente o Emulador de Terminal Android.
 | 
						|
9. Execute aria2c chamando o comando ``./aria2c -v``
 | 
						|
 | 
						|
Como usar comandos do aria2 no Android
 | 
						|
--------------------------------------
 | 
						|
 | 
						|
Ver o manual do aria2 online nos seguintes idiomas:
 | 
						|
`Tradução em Português <https://aria2.github.io/manual/pt/html/>`_.
 | 
						|
`Original em Inglês    <https://aria2.github.io/manual/en/html/>`_.
 | 
						|
`Tradução em Russo     <https://aria2.github.io/manual/ru/html/>`_.
 | 
						|
 | 
						|
Notas sobre uso do aria2 no Android
 | 
						|
-----------------------------------
 | 
						|
 | 
						|
O executável aria2c foi gerado usando android-ndk-r8d.
 | 
						|
 | 
						|
As seguintes bibliotecas foram ligadas estaticamente.
 | 
						|
 | 
						|
 * openssl 1.0.1e
 | 
						|
 * expat 2.1.0
 | 
						|
 * c-ares 1.9.1
 | 
						|
 | 
						|
Como o Android não possuem ``/etc/resolv.conf``, c-ares (resolvedor
 | 
						|
assíncrono de DNS) é desabilitado por padrão. Muitas vezes a resolução
 | 
						|
de nomes é lenta, recomenda-se habilitar c-ares. Para desabilitar use
 | 
						|
:option:``--async-dns`` e especifique os servidores DNS usando
 | 
						|
opção :option:``--async-dns-server``, como abaixo::
 | 
						|
 | 
						|
  --async-dns --async-dns-server=`getprop meu.dns1`,`getprop meu.dns2`
 | 
						|
 | 
						|
.. index::       double; servidor dns; android;
 | 
						|
 | 
						|
Para não se entediar digitando estes parâmetros, toda vez que usar aria2c,
 | 
						|
o seguinte script shell pode ser útil::
 | 
						|
 | 
						|
    #!/system/bin/sh
 | 
						|
    /data/data/jackpal.androidterm/aria2c \
 | 
						|
      --async-dns \
 | 
						|
      --async-dns-server=`getprop meu.dns1`,`getprop meu.dns2` \
 | 
						|
      "$@"
 | 
						|
 | 
						|
Lembrar de tornar este script executável, através do comando chmod.
 | 
						|
Também substitua meu.dns1 e meu.dns2 pelos DNS reais que você quer.
 | 
						|
Exemplo: (``chmod 744 /path-para-o/scriptSCRIPT``)
 | 
						|
 | 
						|
Problemas Conhecidos com o aria2c no Android
 | 
						|
--------------------------------------------
 | 
						|
 | 
						|
* Como Android não tem ``/dev/stdout``, ``-l-`` não funciona.
 | 
						|
 | 
						|
* Em alguns casos o Emulador de Terminal Android, para de atualizar a console.
 | 
						|
  É como se o aria2c congelasse, mas o aria2c continua executando normalmente.
 | 
						|
 | 
						|
Para Gerar a documentação
 | 
						|
=========================
 | 
						|
 | 
						|
`Sphinx <http://sphinx.pocoo.org/>`_ é usado para construir a
 | 
						|
documentação. As páginas (man) da documentação também são criadas
 | 
						|
através do comando ``make man`` caso estas páginas estejam desatualizadas.
 | 
						|
Também podem ser construídas a documentação em diversos formatos como
 | 
						|
html, latexpdf, epub, devhelp, latex, htmlhelp. Exemplo: Para construir
 | 
						|
a documentação aria2 em HTML use o comando ``make html``.
 | 
						|
O resultado será criado na subpasta _build dentro da pasta onde baixou
 | 
						|
o fonte do aria2. Ex: se baixou e descompactou o aria2 no local
 | 
						|
/home/usuario/aria2/ então a documentação gerada está em::
 | 
						|
 | 
						|
/home/usuario/aria2/doc/manual-src/pt/_build/
 | 
						|
 | 
						|
A pasta ``pt`` indica o idioma que atualmente pode ser
 | 
						|
(en,pt,ru). Para gerar documento PDF use a opção ``make latexpdf``
 | 
						|
certifique-se de que os pré-requisitos de fontes usados pelo latex 
 | 
						|
estejam presentes.
 | 
						|
 | 
						|
A versão online HTML também está disponível em:
 | 
						|
`Original em Inglês <https://aria2.github.io/manual/en/html/>`_ 
 | 
						|
e nas traduções em:
 | 
						|
(`Português <https://aria2.github.io/manual/pt/html/>`_ e
 | 
						|
`Russo <https://aria2.github.io/manual/ru/html/>`_).
 | 
						|
 | 
						|
BitTorrrent
 | 
						|
===========
 | 
						|
 | 
						|
Sobre Nome de arquivos
 | 
						|
----------------------
 | 
						|
O nome do arquivo que será baixado é determinado da seguinte maneira:
 | 
						|
 | 
						|
modo arquivo simples
 | 
						|
    O a chave "name" está presento no arquivo .torrent, o nome do
 | 
						|
    arquivo será o valor da chave "name". De outra maneira o nome
 | 
						|
    do arquivo será baseado no arquivo .torrent mais o sufixo
 | 
						|
    ".file". Exemplo: arquivo .torrent é "brasil.torrrent", então
 | 
						|
    o nome do arquivo baixado será: "brasil.torrent.file".  O 
 | 
						|
    diretório onde será armazenado o arquivo pode ser especificado
 | 
						|
    através da opção -d.
 | 
						|
 | 
						|
modo arquivos múltiplos
 | 
						|
    A estrutura completa diretório/arquivo mencionada no arquivo .torrent será
 | 
						|
    creada. O diretório base que conterá toda estrutura de diretórios e 
 | 
						|
    arquivos baixados, pode ser especificado através da opção -d.
 | 
						|
    Antes do download iniciar a estrutura completa dos diretórios necessários
 | 
						|
    ao download será criada. Por padrão aria2 abre no mínimo 100 arquivos 
 | 
						|
    mencionados no arquivo .torrent e diretamente executa gravação e leitura 
 | 
						|
    desses arquivos. O número máximo de arquivos para serem abertos 
 | 
						|
    simultaneamente pode ser controlado através da opção
 | 
						|
    :option:``--bt-max-open-files``.
 | 
						|
 | 
						|
DHT
 | 
						|
---
 | 
						|
 | 
						|
aria2 suporte DHT. Por padrão, a tabela de roteamento	
 | 
						|
para IPv4 DHT é salva em ``$HOME/.aria2/dht.dat`` e a tabela de
 | 
						|
roteamento para IPv6 DHT é salva em ``$HOME/.aria2/dht6.dat``.
 | 
						|
aria2 utiliza o mesmo número de porta para ouvir ambos
 | 
						|
IPv4 e IPv6 DHT.
 | 
						|
 | 
						|
Rastreador UDP
 | 
						|
--------------
 | 
						|
 
 | 
						|
Rastreador UDP é habilitado quando DHT IPv4 é habilitado. O número
 | 
						|
da porta do rastreador UDP é compartilhado com DHT. Usar opção
 | 
						|
:option:``--dht-listen-port`` para modificar o número da porta.
 | 
						|
 | 
						|
Outras informações importantes
 | 
						|
------------------------------
 | 
						|
 | 
						|
* Se a opção -o é usada para mudar o nome do arquivo de saida
 | 
						|
  .torrent não o nome do arquivo dentro do arquivo .torrent.
 | 
						|
  Para esta finalidade utilizar opção :option:``--index-out``.
 | 
						|
* Os números de portas padrões que o aria2 utiliza para TCP e UDP
 | 
						|
  estão no intervalo de 6881 até 6999 (6881-6999).
 | 
						|
* aria2 não configura automaticamente port-forwarding.
 | 
						|
  Por favor configurar manualmente seu roteador ou firewall.
 | 
						|
* O número máximo de é 55. Este limite pode ser excedido quando
 | 
						|
  a taxa de download é muito baixa. Esta taxa de download pode ser
 | 
						|
  ajustada com a opção :option:``--bt-request-peer-speed-limit``.
 | 
						|
* Desde a versão 0.10.0, aria2 parou de enviar mensagem de
 | 
						|
  requisição após o download seletivo completar-se.
 | 
						|
 | 
						|
 | 
						|
Metalink
 | 
						|
========
 | 
						|
 | 
						|
A implementação atual suporte HTTP, HTTPS, FTP e BitTorrent.  Outros
 | 
						|
protocolos P2P são ignorados. São suportados documentos das versões
 | 
						|
Metalink4 e Metalink 3.0.
 | 
						|
 | 
						|
Para validação de (checksum) são suportados: md5, sha-1, sha-224,
 | 
						|
sha-256, sha-384 e sha-512. Se múltiplos algoritmos de hast
 | 
						|
são fornecidos aria2 utiliza o mais robusto. Se a validação do
 | 
						|
checksum falhar totalmente aria2 não tentará mais fazer download e
 | 
						|
terminará o processamento com código de retorno diferente de zero.
 | 
						|
 | 
						|
As preferências de usuário suportadas são versão, idioma, local,
 | 
						|
protocolo e sistema operacional.
 | 
						|
 | 
						|
Se verificação (checksum) de (chunk) são fornecidas em um arquivo
 | 
						|
Metalink, aria2 automaticamente valida (chunk) partes dos dados
 | 
						|
durante o download. Esse comportamente pode ser desligado através
 | 
						|
de opção da linha de comando.
 | 
						|
 | 
						|
Se uma assinatura (certificado) é incluida em um arquivo Metalink,
 | 
						|
aria2 salva a assinatura como um arquivo após a conclusão do download.
 | 
						|
O nome do arquivo terá o sufixo ".sig". Caso já exista não será salvo.
 | 
						|
 | 
						|
Em torrent de múltiplos arquivos Metalink4, podem aparecer no elemento
 | 
						|
metalink:metaurl.  Uma vez que aria2 não faz download de 2 Torrents
 | 
						|
iguais ao mesmo tempo, aria2 agrupa arquivos em elementos metalink:file
 | 
						|
os quais tem o mesmo metaurl BitTorrent e serão baixados de um
 | 
						|
simples BitTorrent (swarm).
 | 
						|
Isto basicamente ocorre para download de multiplos arquivos Torrent quando
 | 
						|
há seleção de arquivo(s), portanto arquivos adjacentes que não estão
 | 
						|
no documento Metalink mas que compartilham a mesma (peça ou pedaço)
 | 
						|
do arquivo selecionado também serão baixados e criados.
 | 
						|
 | 
						|
Se uma URI relativa é especificada em um elemento metalink:url ou
 | 
						|
metalink:metaurl, aria2 usa a URI do arquivo Metalink como URI base
 | 
						|
para resolver a URI relativa. Se a URI relativa encontra-se em um 
 | 
						|
arquivo Metalink que é lido do disco local, aria2 usa o valor da
 | 
						|
opção ``--metalink-base-uri`` como URI base.  Se essa opção não é
 | 
						|
especificada a URI relativa será ignorada.
 | 
						|
 | 
						|
Metalink / HTTP
 | 
						|
===============
 | 
						|
 | 
						|
Esta versão utiliza links rel=duplicate. aria2 interpreta
 | 
						|
os campos do cabeçalho do Digest e verifica onde o valor do digest
 | 
						|
confere com outras fontes. Se houver diferença, derruba a conexão.
 | 
						|
aria2 também utiliza esse valor do digest para executar verificação do
 | 
						|
checksum após o download terminar. aria2 reconhece valor geo.
 | 
						|
Para sobrepor o valor de sua preferência utilize a opção
 | 
						|
``--metalink-location``.
 | 
						|
 | 
						|
netrc
 | 
						|
=====
 | 
						|
O suporte netrc é habilitado por padrão para HTTP, HTTPS e FTP.  Para 
 | 
						|
desabilitar especificar opção -n na linha de comando. 
 | 
						|
Seu arquivo .netrc precisa possuir permissões corretas (600).
 | 
						|
 | 
						|
WebSocket
 | 
						|
=========
 | 
						|
 | 
						|
O servidor WebSocket intrínseco no aria2 implementa a especificação
 | 
						|
definida na RFC 6455. O protocolo suportado refere-se a versão 13.
 | 
						|
 | 
						|
Referências
 | 
						|
===========
 | 
						|
 | 
						|
* `aria2 Manual Inglês 
 | 
						|
  <https://aria2.github.io/manual/en/html/>`_ original inglês
 | 
						|
  
 | 
						|
* `aria2 Manual Russo 
 | 
						|
  <https://aria2.github.io/manual/ru/html/>`_ versão russo
 | 
						|
  
 | 
						|
* `aria2 Manual Português 
 | 
						|
  <https://aria2.github.io/manual/pt/html/>`_ versão português
 | 
						|
  
 | 
						|
* https://aria2.github.io/
 | 
						|
* `RFC 959 FILE TRANSFER PROTOCOL (FTP) 
 | 
						|
  <http://tools.ietf.org/html/rfc959>`_
 | 
						|
* `RFC 1738 Uniform Resource Locators (URL) 
 | 
						|
  <http://tools.ietf.org/html/rfc1738>`_
 | 
						|
* `RFC 2428 FTP Extensions for IPv6 and NATs 
 | 
						|
  <http://tools.ietf.org/html/rfc2428>`_
 | 
						|
* `RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1 
 | 
						|
  <http://tools.ietf.org/html/rfc2616>`_
 | 
						|
* `RFC 3659 Extensions to FTP <http://tools.ietf.org/html/rfc3659>`_
 | 
						|
* `RFC 3986 Uniform Resource Identifier (URI): Generic Syntax 
 | 
						|
  <http://tools.ietf.org/html/rfc3986>`_
 | 
						|
* `RFC 4038 Application Aspects of IPv6 Transition
 | 
						|
  <http://tools.ietf.org/html/rfc4038>`_
 | 
						|
* `RFC 5854 The Metalink Download Description Format 
 | 
						|
  <http://tools.ietf.org/html/rfc5854>`_
 | 
						|
* `RFC 6249 Metalink/HTTP: Mirrors and Hashes 
 | 
						|
  <http://tools.ietf.org/html/rfc6249>`_
 | 
						|
* `RFC 6265 HTTP State Management Mechanism 
 | 
						|
  <http://tools.ietf.org/html/rfc6265>`_
 | 
						|
* `RFC 6455 The WebSocket Protocol <http://tools.ietf.org/html/rfc6455>`_
 | 
						|
 | 
						|
* `The BitTorrent Protocol Specification 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0003.html>`_
 | 
						|
* `BitTorrent: DHT Protocol 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0005.html>`_
 | 
						|
* `BitTorrent: Fast Extension 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0006.html>`_
 | 
						|
* `BitTorrent: IPv6 Tracker Extension 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0007.html>`_
 | 
						|
* `BitTorrent: Extension for Peers to Send Metadata Files 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0009.html>`_
 | 
						|
* `BitTorrent: Extension Protocol 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0010.html>`_
 | 
						|
* `BitTorrent: Multitracker Metadata Extension 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0012.html>`_
 | 
						|
* `BitTorrent: WebSeed - HTTP/FTP Seeding (GetRight style) 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0019.html>`_
 | 
						|
* `BitTorrent: Private Torrents 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0027.html>`_
 | 
						|
* `BitTorrent: BitTorrent DHT Extensions for IPv6 
 | 
						|
  <http://www.bittorrent.org/beps/bep_0032.html>`_
 | 
						|
  
 | 
						|
* `BitTorrent: Message Stream Encryption 
 | 
						|
  <http://wiki.vuze.com/w/Message_Stream_Encryption>`_
 | 
						|
  
 | 
						|
* `Kademlia: A Peer-to-peer Information System Based on the  XOR Metric
 | 
						|
  <http://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf>`_
 | 
						|
 | 
						|
versão revisada  em 30.março.2013    por gsavix@gmail.com
 | 
						|
 | 
						|
Anotação sobre divergência entre Manual e o aria2:
 | 
						|
 | 
						|
Esta página de manual pode não necessariamente conter a última informação.
 | 
						|
Caso haja discrepância entre alguma informação do manual e o aria2, por
 | 
						|
favor refira-se a versão em inglês resultante do comando ``man aria2c``
 | 
						|
 |