martes, 12 de febrero de 2008

Howto: Usar rtorrent como un profesional

Esta entrada está obsoleta, la he revisado en la siguiente url:
http://www.ciberterminal.net/blog/?p=21


Voy a hacer una traducción/asimilación de una pagina que me ha servido para poder manejar rtorrent y su (al principio) muy poco amigable interfaz.
La página en concreto es "Howto: Use rtorrent like a pro", muchas gracias por la ayuda.

Soy un gran fan de rtorrent, no me puedo imaginar por que alguien quiere usar otra cosa, a menos que quieras hacer algo que los grandes programas hagan y rtorrent todavía no lo haya conseguido.
Voy a hacer un pequeño tour para enseñar lo que puede hacer este cliente, rtorrent es un asombroso, complejo y poderoso programa que es al mismo tiempo elegante, limpio, comprensible y ultraligero (y esto es solo la punta del iceberg)
Primero, rascaremos la superficie. Como casi todos los programas basados en consola, se ve una pantalla un tanto... seca:
Y... eso es todo, excitante, no? :D
Para añadir un torrent, pulsar enter y navegar hasta donde esté el fichero. En este ejemplo, estoy usando el ultimo HYPE album, “Just a Catwalk from Heaven,” desde Jamendo. No te voy a garantizar que te guste, solo es legal y gratis descargarlo y sirve perfectamente como ejemplo.
Puedes usar el completado por tab para hacerlo más facil. Un doble tab mostrará la lista de ficheros disponible en el path de inicio. El path al que se accede es el home o inferior si se ha iniciado el programa por debajo de allí, asi que no te tienes que preocupar de no darle el path completo si no quieres. Presiona enter de nuevo cuando hayas encontrado el torrent que quieres y rtorrent lo añadirá a la lista:
Si te fijas, está marcado como "INACTIVO", rtorrent no empezará a descargar hasta que se lo indiques. Usa las teclas arriba y abajo para moverte entre los torrents, el torrent activo se marca con una barra de asteriscos; para comenzar a descargar: CTRL+S
Se mueve! El torrent está marcado como activo, el tracker ha sido contactado y nos ha provisto de semillas para empezar la descarga.
En conjunto, eso es todo. Hay más cosas que experas de un cliente? Presiona derecha cuando tienes un torrent seleccionado y verás información detallada del mismo:
Dentro de esta pantalla, también puedes moverte arriba y abajo e incluso entrar por ejemplo a la lista de peers/seeds conectados.
Para volver a la lista principal, simplemente pulsa la flecha izquierda.
Seguramente el ancho de banda sea importante para tí (Throttle). Si sueles capar el ancho de banda (normalmente capo el ancho de subida para que el router no se reinicie cada 2x3), asi que pulsa a-s-d, A-S-D, z-x-c y Z-X-C para limitar la velocidad a tu gustoSi te tomas unos minutos para experimentar, notarás que presionando 1 a 6 cambias la vista con diferentes filtros aplicados. Esto es util si tienes 10 o 12 torrents cargados al mismo tiempo y quieres ver los finalizados, parados o en progreso.
Y lo más importante, sales del programa con CTRL+Q!

Aquí es donde puedes dejar de leer si quieres. Lo que sigue es para gente que realmente quiere exprimir rtorrent.

La primera vez que inicias el rtorrent seguramente te fijaste que decía que no existe el fichero .rtorrent.rc. Este fichero de configuración convierte rtorrent en una bestia de descarga.
En ubuntu, se puede encontrar la plantilla de configuración en el directorio /usr/share/doc/rtorrent/examples/rtorrent.rc. o si lo has compilado, estará dentro del directorio ~/rtorrent-0.x.y/doc/rtorrent.rc depende de la versión, por supuesto. Solo tienes que copiarlo a tu home:
cp /usr/share/doc/rtorrent/examples/rtorrent.rc ~/.rtorrent.rc
Abre el fichero con tu editor favorito y dedica unos minutos a examinar "las tripas" del mismo.
Te harás una idea de lo que este fichero puede hacer: fijar máximas subidas/bajadas, el ancho de banda, opciones de ip, etc... Pero examina las siguientes opciones:

# Watch a directory for new torrents, and stop those that have been
# deleted.
#schedule = watch_directory,5,5,load_start=./watch/*.torrent
#schedule = untied_directory,5,5,stop_untied=

Que significa esto? Bien, rtorrent puede comprobar periodicamente un directorio y añadir automáticamente torrents a la lista, a la vez que eliminarlos si son borrados.
Vamos con lo siguiente:

# Stop torrents when reaching upload ratio in percent,
# when also reaching total upload in bytes, or when
# reaching final upload ratio in percent.
# example: stop at ratio 2.0 with at least 200 MB uploaded, or else ratio 20.0
#schedule = ratio,60,60,stop_on_ratio=200,200M,2000

Asi que puedes sedear hasta un ratio específico, un total de kb/mb subidos o ambos. Asi que si te aburres llevando el peso de internet en tus hombros, puedes poner esto a tu criterio y ya lo hace el solito.
Estarás pensando, que esto no es nada nuevo, que azureus ya lo hace, además de tener un maravilloso GUI, es la ventaja de usar java y tener una ranita azul como mascota.

Aquí termina la traducción, pongo mi caso particular, como ejemplo de por qué no usar Azureus o similar...

Pongamos que tienes el típico equipo moderno, dualcore, varios discos sata, una magnífica gráfica, varios gb de ram, etc...
Que puede suponer eso... fuente de 500W y 4 magnificos ventiladores (mínimo), osea consumo y ruido.
Ahora imagina tu viejo pc, ese p2 a 200mhz con disco de 20Gb; qué fuente lleva? cuantos ventiladores? (como muchísimo 250W y 1 ventilador en el micro), será el candidato ideal para ponerle un entorno mínimo linux con rtorrent corriendo.
Por que la instalación de rtorrent ocupa como 1,5Mb y eso contando las dependencias, consume 30Mb de ram como mucho (lo máximo que he visto con 8 torrents a la vez) y salvo cuando hace hash de ficheros muy grandes consumirá un 3% de CPU.
Se puede automatizar casi todo, hasta vigila el espacio en disco!!

Pongo lo que para mí son las ventajas e inconvenientes:
Ventajas:
  1. Ligero, rápido
  2. Totalmente configurable (salvo por un aspecto que está en negativa)
  3. Corre perfectamente sin gui de ningún tipo
  4. Compatible con trackers con ratio. (muy importante para mí)
  5. Multitorrent multitracker.
Inconvenientes:
  1. El único aspecto no configurable es velocidad individual por torrent, una cosa a mejorar.
  2. No tiene un bonito, agradable y carismático gui (que ocupe 100MB de ram xD).
  3. No es accesible por web (salvo malabarismos parcheando código y teniendo una lamp)
Tenéis la página de descarga y de ayuda propia del cliente (en inglés) aparte de la página del manual (man rtorrent) xD.

Este documento está publicado bajo la licencia GFDL 1.2
This document has been publised under GFDL 1.2.
Thanks to K.Mandla for the support

11 comentarios:

timofonic dijo...

Multitorrent multitracker? ¿Cómo? Yo estoy con rottrent y no soy capaz de añadir trackers a un .torrent que tengo...

dodger dijo...

No puedes añadir trackers a un torrent, ya están incluidos "dentro" del .torrent y no se puede editar.
Pero si un torrent tiene multiples trackers, rtorrent envía y recoge estadísticas de todos:
Trackers: [Key: xxx70a79]
0: http://tracker.xxxxxorum.es:2710/xxxxxxx6d5e0edcac083b722264b30ba/announce
Id: Focus: no Enabled: yes Open: no S/L: 4/2
1: http://inferno.demonoid.com:3396/announce
Id: Focus: no Enabled: yes Open: no S/L: 6/2
2: http://tracker.zerotracker.com:2710/announce
Id: Focus: no Enabled: yes Open: no S/L: 0/0

Pero si estás en un tracker privado solo tendrás 1 :P

mimosinnet dijo...

Con tu traducción he empezado a usar el rtorrent. Fantástico! Mil gracias por la traducción!

Abrazos!

SeruLinux dijo...

Hola, es verdad que no su puede usar remotamente via html pero... es fantastico para usarlo con ssh desde consola desde otro linux o con putty desde una pc con window$. Yo lo uso asi hace tiempo y es fantastico, solo debes tener en cuenta que hay que abrirlo simepre en una sesion de screen para no cerrar el programa cuando cierres la consola o el putty.
pruebalo asi por que es una maravilla incomparale con cualquier cliente torrent con gui.

Saludosgilabertmiguel

mimosinnet dijo...

Desde el año pasado, desde que lo descubrí a partir de la traducción, lo he estado usando y ya no me puedo imaginar otro.

Abazos!

Sergio dijo...

A mi me gusrtaria saber si con el se pueden hacer torrents o si hay algun programa que pueda dejar como una daemon en un servidor haciendo torrent.
Despues de leer esta guia yo en el servidor es el que uso, es una gozada, y funciona de tal manera...

Gracias por la guia!

dodger dijo...

hola sergio,
rtorrent no crea torrents, para linux/cli tienes "createtorrent" que seguramente tengas en repositorios de la distro que uses. Sino, compilarlo es un momentito y casi no tiene dependencias.

Dami dijo...

Hola, me parece que para usarlo con una interfaz web me quedo toda la vida con una conexión de ssh y listo el problema, que es como lo vengo usando desde hace mucho tiempo.

Por otro lado me parece que si lo que buscan es algo web les recomiendo torrentflux antes que rtorrent.
Este se lo instale a mi padre y está muy contento con sus resultados ya que recién empieza en GNU/Linux y buscaba algo web que no consuma muchos recursos.

Yo llegué acá buscando como subir el ancho de banda durante la noche y bajarlo durante el día de forma automática.
Seguiré buscando :-)

Saludos y éxitos por traducción,
Damián.

dodger dijo...

Puedes pasarte por aquí, ya no actualizo este blog:
http://www.ciberterminal.net/blog/?p=21
Que yo sepa, no puedes cambiar el throttle, pero creo que te podría hacer un apaño con un script que uso yo. pon el comentario por allí y seguimos

Dami dijo...

Lo encontré y más allá de que hayas cambiado de blog, voy a dejar la respuesta acá por si alguno (como yo) llega acá a travez del link del articulo original en ingles.

Para más info (actualizada) esto está sacado de http://libtorrent.rakshasa.no/wiki/RTorrentCommonTasks#Schedulingdownloadrate

# Scheduling download rate
# Every day "throttle_1" gets triggered at 01:00 and sets the download rate to unlimited,
# while "throttle_2" sets it to 25kb at 05:00. Using this the client may be made to perform a somewhat crude form of bandwidth scheduling.
schedule = throttle_1,01:00:00,24:00:00,download_rate=0
schedule = throttle_2,05:00:00,24:00:00,download_rate=25

Y si les sirve, lo que yo use es:
schedule = throttle_noche_up,02:30:00,24:00:00,upload_rate=25
schedule = throttle_noche_down,00:00:00,24:00:00,download_rate=0

schedule = throttle_dia_up,09:30:00,24:00:00,upload_rate=15
schedule = throttle_dia_down,12:00:00,24:00:00,download_rate=150

EresLoQueHaces dijo...

Muchas gracias, lo he hecho con ubuntu server 9.10 porque así me dejaba mapear los datos a la partición ntfs de un disco duro externo por USB (esta opción no venía en la anterior versión de ubuntu), ahora mismo lleva meses encendido, tan simple como arrastrar un torrent a la carpeta compartida con samba.
Muy bueno lo de screen ;) gran detalle.
Kernel 2.6.31 PIII 128MB RAM y con más servicios, realmente increíble.

Mi más sincera enhorabuena.