| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488 | aria2 - Utilitário para Download Super Ultra Rápido===================================================:Author:     Tatsuhiro Tsujikawa:Email:      t-tujikawa_at_users_dot_sourceforge_dot_net:translator: tradução Portuguese gsavix@gmail.comRenúncia--------Este programa não vem com garantias. O uso deste programa é por suaconta e risco.Introdução----------aria2 é um utilitário para download de arquivos. Os protocolos suportados sãoHTTP, HTTPS, FTP, BitTorrent e Metalink. aria2 pode baixar arquivos demú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 mesmotempo pode executar download de HTTP, HTTPS, FTP e BitTorrent enquanto estesdados podem ser disponibilizados (uploaded) ao mesmo tempo para o BitTorrent oupara você ir assistindo um filme enquanto o download prossegue.  Através daverificação (checksum) de partes dos dados dos Metalink's, aria2automaticamente valida partes (chunks) do BitTorrent.A página do projeto está em http://aria2.sourceforge.net/.Veja `aria2 Manual Online <http://aria2.sourceforge.net/manual/pt/html/>`_e `Exemplos de Uso <http://sourceforge.net/apps/trac/aria2/wiki/UsageExample>`_ 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  opçional de arquivo de saída* Suporte a URI parametrizadas (intervalos, etc)* Suporte a IPv6Como obter o código fonte-------------------------O código fonte é mantido no Github:https://github.com/tatsuhiro-t/aria2Para obter o último código fonte, execute o seguinte comando::    $ git clone git://github.com/tatsuhiro-t/aria2.gitAria2 será criado no diretório corrente do seu computador com os arquivos fonte.Dependências------------======================== ========================================funcionalidade           dependência======================== ========================================HTTPS                    GnuTLS ou OpenSSLBitTorrent               libnettle+libgmp ou libgcrypt ou OpenSSLMetalink                 libxml2 ou Expat.Checksum                 libnettle ou libgcrypt ou OpenSSLgzip, deflate em HTTP    zlibAsync DNS                C-AresFirefox3/Chromium cookie libsqlite3XML-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 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 cruypto:* libgcrypt* libnettle* OpenSSL* GnuTLS + libgcrypt* GnuTLS + libnettleBitTorrent e Metalink podem ser desabilitados fornecendo 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 antespacotes 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 delibgnutls-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 bibliotecasacima 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-develSe 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 deconfiguração (configure) e outros scripts também necessáriospara o build ou compilação do aria2::    $ autoreconf -iPara construir a documentação é necessário instalar`Sphinx <http://sphinx.pocoo.org/>`_ que constroi página (man), html ou pdfcontendo 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::    $ ./configurePara compilar com link-edição estática utilize o opção da linhade comando ``ARIA2_STATIC=yes``::    $ ./configure ARIA2_STATIC=yesApós a configuração feita, execute ``make`` para compilar o programa::    $ makeVer `Compilação Cross Windows binário`_ para Criar Binário paraWindows.  Ver `Compilação Cross Android binário`_ para criarBinário para Android.O script configure verifica as bibliotecasdisponíveis e habilitaou desabilita as funcionalidades na maior abrangência possivel, poispor padrão todas as funcionalidades são habilitadas.  Desde a versão1.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 bibliotecafoi adequadamente configurada para localizar o certificado CAarmazenado, aria2 carrega automaticamente estes certificados no início.Se este não ocorrer, recomenda-se fornecer o caminho para o arquivo queconté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'    $ makeSem a opção ``--with-ca-bundle``, haverá um erro ao acessar servidoresHTTPS pois o certificado não pode ser verificado sem possuir um pacote CA(entidade certificadora). Nesse caso, pode ser especificado um arquivo decertificado usando opção aria2's ``--ca-certificate``.  Caso não haja umcertificado instalado, então o último recurso é desabilitar a validaçãodo certificado usando a opção ``--check-certificate=false``.Por padrão, arquivo chamado (bash_completion) ``aria2c`` é instalado nodiretório ``$prefix/share/doc/aria2/bash_completion``.  Para mudar odiretó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 otest unit emita o comando::    $ make checkCompilação Cross Windows binário--------------------------------Nessa seção, está descrito como fazer o build do binário para Windowsusando o compilador cross mingw-w64 no Debian Linux.Basicamente, após compilar e instalar as bibliotecas dependentes, quesã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 usadasno procedimento (configure). Para maior conveniência e menor custode desenvolvimento, é fornecida uma maneira fácil de configurar ascaracterí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.  Essescript assume que as seguintes bibliotecas tenham sido compiladase/ou instaladas para a compilação cross:* c-ares* openssl* expat* sqlite3* zlib* cppunitAlgumas 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-configCompilação Cross Android binário--------------------------------Nessa seção, descrevemos como construir um binário usando o compilador-crossNDD no Linux Debian.``android-config`` é um script para configurar compilação para Android, o qualassume que as seguintes bibliotecas também foram construídas paracompilador-cross:* c-ares* openssl* expatQuando 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áriocompilar uma zlib nossa.``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.Para Gerar a documentação-------------------------`Sphinx <http://sphinx.pocoo.org/>`_ é usado para construir adocumentação. As páginas (man) da documentação são criadas se através docomando  ``make`` caso estas páginas estejam desatualizadas. Tambempode ser construida a versão em HTML da documentação do aria2 atravésdo comando ``make html``. A versão HTML também está disponível em:`Original em Inglês <http://aria2.sourceforge.net/manual/en/html/>`_ e nas traduções em:(`Português <http://aria2.sourceforge.net/manual/pt/html/>`_ e`Russo <http://aria2.sourceforge.net/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 ``--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 deroteamento para IPv6 DHT é salva em ``$HOME/.aria2/dht6.dat``.aria2 utiliza o mesmo número de porta para ouvir ambosIPv4 e IPv6 DHT.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 ``--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 ``--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.  Outrosprotocolos P2P são ignorados. São suportados documentos das versõesMetalink4 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 hastsão fornecidos aria2 utiliza o mais robusto. Se a validação dochecksum falhar totalmente aria2 não tentará mais fazer download eterminará 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 arquivoMetalink, aria2 automaticamente valida (chunk) partes dos dadosdurante o download. Esse comportamente pode ser desligado atravésde 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 elementometalink:metaurl.  Uma vez que aria2 não faz download de 2 Torrentsiguais ao mesmo tempo, aria2 agrupa arquivos em elementos metalink:fileos quais tem o mesmo metaurl BitTorrent e serão baixados de umsimples BitTorrent (swarm).Isto basicamente ocorre para download de multiplos arquivos Torrent quandohá seleção de arquivo(s), portanto arquivos adjacentes que não estãono 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 oumetalink:metaurl, aria2 usa a URI do arquivo Metalink como URI basepara resolver a URI relativa. Se a URI relativa encontra-se em um arquivo Metalink que é lido do disco local, aria2 usa o valor daopçã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 interpretaos campos do cabeçalho do Digest e verifica onde o valor do digestconfere com outras fontes. Se houver diferença, derruba a conexão.aria2 também utiliza esse valor do digest para executar verificação dochecksum 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 desabilitarespecificar opção -n na linha de comando. Seu arquivo .netrc precisa possuirpermissões corretas (600).WebSocket---------O servidor WebSocket intrínseco no aria2 implementa a especificaçãodefinida na RFC 6455. O protocolo suportado refere-se a versão 13.Referências-----------* `aria2 Manual Inglês <http://aria2.sourceforge.net/manual/en/html/>`_ versão inglês* `aria2 Manual Russo <http://aria2.sourceforge.net/manual/ru/html/>`_ versão russo* `aria2 Manual Português <http://aria2.sourceforce.net/manual/pt/html/>`_ versão portugues* http://aria2.sourceforge.net/* http://sourceforge.net/apps/trac/aria2/wiki* https://github.com/tatsuhiro-t/aria2* `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 atualizada em 26.novembro.2012 por gsavix@gmail.com
 |