Uma configuração para torrent leve, bem automática e até elegante – rtorrentrc

Esta postagem também está disponível em: Inglês

Há algum tempo atrás eu instalei na minha casa uma conexão ADSL de 5Mbps, e queria ter uma boa configuração de BitTorrent, para aproveitar bem a nova capacidade… Além disso, no futuro muito próximo eu vou ter uma conexão de 50Mbps, daí então a necessidade de um ambiente “otimizado” e automatizado pro meu compartilhamento de arquivos via torrent :)

Minha idéia é usar um computador VELHO que eu tenho aqui como uma máquina de torrent dedicada, ligada 24/7. Então, eu estava procurando por um cliente de torrent robusto, poderoso e configurável (para usar por meses sem reiniciar), mas ao mesmo tempo que precisasse de pouca CPU e pouca memória. Felizmente, eu encontrei esse FANTÁSTICO cliente: ele se chama rTorrent, foi escrito em C++ puro voltado pra performance e estabilidade, e é uma aplicação de modo texto.

Depois de muita pesquisa no Google e de muita tentativa e erro, eu consegui chegar a um arquivo de configuração do rTorrent (.rtorrentrc) que satisfaz todos os meus requisitos para um Ótima Configuração BitTorrent®. Esses requisitos são:

  • Ajuste periódico de velocidade: As velocidades de download e upload são ajustadas automaticamente, dependendo do período do dia
  • Terminar após atingir seed ratio: Remove um torrent (e seu meta-arquivo .torrent correspondente) da lista de downloads após ele ter atingido uma certa proporção de envio (por exemplo, 200%)
  • Início e parada baseados no conteúdo de um diretório: Monitora um diretório especificado pela adição e remoção de arquivos com extensão .torrent. Inicia o download dos adicionados, remove os removidos
  • Separação entre downloads ativos e já finalizados: Armazena os arquivos que fazem parte dos torrents SENDO BAIXADOS em um diretório especial (“in-progress”) e os já finalizados em outro diretório (“finished”)

Agora, você pode acreditar em mim, baixar o arquivo rtorrent.rc diretamente aqui e usá-lo. Após baixar o arquivo faça o seguinte:

mv [onde-vc-baixou-o-rtorrentrc] ~/.rtorrent.rc
mkdir ~/torrent

# Opção 1) Caso você não tenha uma estrutura prévia onde armazenar seus downloads de torrent
mkdir ~/torrent/{session,metafiles-{in-progress,finished},content-{in-progress,finished}}

# Opção 2) Caso você já tenha um local favorito onde armazenar torrents em progresso e concluídos
mkdir ~/torrent/{session,metafiles-{in-progress,finished}}
ln -s [caminho-de-downloads-em-progresso] ~/torrent/content-in-progress
ln -s [caminho-de-downloads-concluídos] ~/torrent/content-finished

A seguir eu faço uma revisão comentada do que significa cada linha nesse arquivo, acho que é interessante dar uma olhada :)

A primeira linha já nos diz qual é o diretório onde o rTorrent armazena suas informações durante a execução. Esse diretório nunca deve ser deletado com o rTorrent rodando.

Agora nós definimos o diretório onde o rTorrent deve manter os dados dos torrents ENQUANTO eles estão sendo baixados.

Já as próximas linhas controlam limites mínimos e máximos do número de peers enquanto fazendo download ou seeding. Esses números eu obtive “empiricamente” durante meses de experiência e eles funcionam bem em uma rede de aprox. 10MB/s.

Agora dizemos que após atingirmos uma porcentagem de “seeding” (no caso, de 200%), o torrent deve ser automaticamente fechado e removido da lista do RTorrent. Isso para que você contribua com o espírito do compartilhamento, mas COM UM LIMITE :) Além disso, novos downloads não são iniciados caso haja muito pouco espaço livre no disco:

As próximas linhas tratam de opções diversas (ativa DHT, criptografia, define portas) e devem ser bem auto-explicativas. A configuração mais importante é a “port range”. Você deve setar essa opção para um intervalo de portas liberadas (forwarded) no seu roteador.

Uma seção bem importante agora: definimos aqui o ajuste automático de velocidades de download/upload pelo horário. Essas aí embaixo são as MINHAS preferências, por favor adapte pra SUA velocidade de conexão e cenário de uso. No meu caso, eu quero que o consumo de banda seja MENOR NAS MANHÃS e no começo das noites (é quando eu geralmente estou em casa).

Ainda, nós dizemos ao rTorrent para monitorar o diretório “~/torrent/metafiles-in-progress” e detectar adições de arquivos do tipo “*.torrent”. Arquivos adicionados vão causar o início de um download:

Por fim, as seguintes linhas fazem com que downloads INCOMPLETOS tenham os seus arquivos baixados deletados sempre que o meta-arquivo .torrent correspondente é deletado – ou o download seja removido manualmente na lista de downloads do rTorrent. Além disso, os downloads finalizados são movidos para um diretório especial chamado “content-finished”, enquanto o meta-arquivo em si é arquivado para a posteridade, em “metafiles-finished”.

Então, isso é tudo, pessoal! De agora em diante, com a minha seedbox já com o rTorrent instalado e configurado, basta que eu jogue qualquer arquivo .torrent na pasta “metafiles” e deixe todo o trabalho chato de gerenciamento pro rTorrent. Ele vai garantir que eu sou justo com a comunidade (garantindo uma proporção de seed de 200%) e vai colocar os arquivos já baixados em “finished”, prontinhos para que eu os use… :)

Se quiser usar e adaptar essa configuração também, vá até o início do post, baixe o arquivo e siga as instruções…

This entry was posted in Dia-a-dia, Linux, Tech and tagged , , , , , . Bookmark the permalink.

2 Responses to Uma configuração para torrent leve, bem automática e até elegante – rtorrentrc

  1. Pingback: Highlights dos últimos 100 posts :D | Experimento imaginário

  2. Pingback: Highlights of the last 100 posts… | Experimento imaginário

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">