Archive for June, 2008

crear torrents desde consola (metodo 2)

Monday, June 30th, 2008

Cuando deseamos publicar o compartir un nuevo recurso necesitamos dos cosas: (1) un tracker y (2) crear el fichero .torrent asociado al recurso. El tracker pondrá en contecto a los diferentes peers y el fichero .torrent indicará cómo hacer esto.

1) Instalación de un tracker

Necesitaremos un host público con el paquete bittorrent instalado. Generalmente tras instalar este paquete se lanza el servicio correspondiente (/etc/init.d/bittorrent). El fichero de configuración de este servicio lo encontramos en /etc/default/bittorrent. Ahí podremos controlar varios aspectos del servidor, como por ejemplo, el puerto de escucha. Resumiendo, para instalar el tracker hacer:
tracker# apt-get install bittorrent

Que instalará y lanzará el servidor. También es posible lanzar el servidor a mano usando:

tracker$ bttrack --port 6969 --dfile dstate

dstate es el nombre del archivo de log en formato binario y 6969 sería el puerto de escucha.

Finalmente, existe un conjunto de trackers públicos que podemos utilizar si no disponemos acceso a un host público para hacer lo anterior. Algunos ejemplos son:

http://open.tracker.thepiratebay.org/announce
http://www.torrent-downloads.to:2710/announce
http://denis.stalker.h3q.com:6969/announce
udp://denis.stalker.h3q.com:6969/announce
http://www.sumotracker.com/announce

2) Generación del fichero .torrent

Necesitaremos alguna utilidad para hacer esto. La mayoría de los clientes permiten hacerlo fácilmente. Usando el paquete bittorrent escribiremos:
seed$ btmakemetafile camino/al/recurso protocol://tracker:port/directory

# Un ejemplo más real:
ssed$ btmakemetafile login_fortunes http://193.147.118.81:6969/announce

donde recurso es el nombre del fichero o del directorio que queremos compartir, protocol es el protocolo a usar (generalmente http), tracker el la dirección IP o el nombre del servidor que ejecuta el tracker, port es el puerto de escucha del tracker y directory es el nombre del directorio que el tracker va a utilizar para anunciar dicho recurso.

Este comando generará el fichero .torrent que contiene dicha URL, el nombre de el/los fichero/s compartido/s, el tamaño del bloque y otra información que se utiliza saber si los bloques se transmiten correctamente. Dependiendo del tamaño del recurso a compatir y de la potencia de la máquina, btmakemetafile empleará más o menos tiempo porque ha de recorrer el recurso completo para generar el fichero .torrent. Esto hace además que el contenido del recurso no puede ser variable, es decir, si cambia su contenido debe regenerarse el fichero .torrent asociado.

3) Activación del seed

Para que un recurso sea compartido con éxito al menos un peer debe tener una copia completa de él. Para formar parte de la red de compartición como seed, tras generar el fichero .torrent sólo hay que escribir:

seed$ btdownloadcurses recurso.torrent

en el directorio donde está alojado el recurso recurso. Es decir, el mismo comando que usaríamos si no fuéramos un seed.

crear torrents desde consola (metodo 1)

Sunday, June 29th, 2008

Como crear archivos .torrent

Ahora demostrare como crear archivos .torrent desde cualquier SO unix, lo unico que hace falta es tener instalado mktorrent y mktorrent-borg, en gentoo con este simple comando tendriamos instalado las aplicaciones:

root@localhost ~ $ emerge mktorrent

y con esto instalamos un paquete para que el torrent tenga multitracker

root@localhost ~ $ emerge mktorrent-borg

nota: para instalar necesitamos hacerlo como superusuario. En caso de que estemos en otra distribución y no se encuentre el paquete mktorrent [0] y mktorrent-borg [1], podemos acceder a las paginas de los proyectos mktorrent y mktorrent-borg, y descargar el fuente.

Caso 1: mktorrent

con este programa podemos hacer un archivo .torrent simple, con un solo tracker, entonces analizamos las opciones que tiene este paquete

newuser@localhost ~ $ mktorrent –help

mktorrent 0.4 (c) 2007 Emil Renner Berthing

Usage: mktorrent [OPTIONS]

Options:
-a, –announce= : specify the full announce url, required.
-c, –comment= : add an optional comment to the metainfo
-d, –no-date : don’t write the creation date
-h, –help : show this help screen
-l, –piece-length= : set the piece length to 2^n bytes,
default is 18, that is 2^18 = 256kb.
-n, –name= : set the name of the torrent,
default is the basename of the target
-o, –output= : set the path and filename of the created file
default is .torrent
-p, –private : set the private flag
-v, –verbose : be verbose

Please send bug reports, patches, feature requests, praise and
general gossip about the program to: esmil@imf.au.dk

nosotros utilizaremos en este caso las opciones “a y o”

1. a = definimos el tracker cabecera
2. o = definimos como queremos que se llame el archivo .torrent

el comando quedaria asi con las opciones que nosotros utilizaremos:

newuser@localhost ~ $ mktorrent -a http://tpb.tracker.thepiratebay.org:80/announce -o prueba.torrent prueba/

en donde prueba es una carpeta, pero puede ser un archivo.

Caso 2: mktorrent-borg

este comando es igual que mktorrent, nada mas que tiene la posibilidad de hacer multitracker, luego analizamos las opciones que nos permite este comando, ejecutando

newuser@localhost ~ $ mktorrent-borg –help

Usage: mktorrent -a [options] -o
Options:
-bs - piece size in KB
-a - announce URL
-n - dir for storing multiple files
-nd - do not include source dirs into torrent
-o - output file (.torrent)
-pub - torrent is public (can use peer exchange)
-ig - ignore files/dirs that match specified pattern
You can specify -ig many times.
-mt ‘url1 url2 …’
MultiTracker tier group. You can specify -mt many times

nosotros utilizaremos en este caso las opciones “a, pub, mt y o”

1. a = definimos el tracker cabecera
2. pub = designamos que sea libre
3. mt = asignamos que el torrent sea multitracker
4. o = definimos como queremos que se llame el archivo .torrent

el comando quedaria asi con las opciones que nosotros utilizaremos:

newuser@localhost ~ $ mktorrent-borg -a http://tpb.tracker.thepiratebay.org:80/announce -pub -mt ‘http://tpb.tracker.thepiratebay.org:80/announce udp://tpb.tracker.thepiratebay.org:80/announce http://open.tracker.thepiratebay.org/announce http://www.torrent-downloads.to:2710/announce http://pirates.sumotracker.com/announce’ -o prueba.torrent prueba/

en donde prueba es una carpeta, pero puede ser un archivo.

Trackers

En esta lista se encuentran algunos de los tracker mas usados por la comunidad

    * http://open.tracker.thepiratebay.org/announce
    * http://www.torrent-downloads.to:2710/announce
    * http://denis.stalker.h3q.com:6969/announce
    * udp://denis.stalker.h3q.com:6969/announce
    * http://www.sumotracker.com/announce
    * http://pirates.sumotracker.com/announce
    * http://tracker.prq.to/announce
    * http://inferno.demonoid.com:3389/announce
    * http://tracker.bt-chat.com/announce
    * http://tracker.zerotracker.com:2710/announce

aMSN 0.97 desde svn

Monday, June 16th, 2008

Si quieres tener instala la ultima version de Amsn 0.97 aqui te digo como, svn es un control de versiones de codigo abierto, te servira para tener siempre actualizado Amsn ante las nuevas modificaciones con solo dar un svn update (abajo se menciona donde hacer esto) tendras las nuevas actualizaciones q se le agreguen a Amsn.

nota: eliminar toda instalacion previa: sudo aptitude –remove amsn

Instalacion de AMSN por SVN y paquetes necesarios:
1: $ sudo apt-get install subversion tcl8.4-dev tcl8.4 tk8.4-dev tk8.4 libpng12-dev libjpeg62-dev tcltls g++

2: obtener amsn
$ svn co https://amsn.svn.sourceforge.net/svnroot/amsn/trunk/amsn amsn
3: Descargar los plugins y skins

$ svn co https://amsn.svn.sourceforge.net/svnroot/amsn/trunk/amsn-extras amsn-extras
Paso4 :

Copiar los amsn-extras a la carpeta amsn/plugins y amsn/skins

$ sudo cp -r amsn-extras/plugins/* amsn/plugins
$ sudo cp -r amsn-extras/skins/* amsn/skins

Paso5:
Compilar amsn
$ cd amsn
$ ./configure
$ make
$ sudo make install

y listo tenemos nuestro amsn version 0.97 instalado

PASO EXTRA

Cada cierto tiempo cuando queremos actualizar a los nuevos cambios que le han hecho debemos hacer lo siguiente dentro de nuestra carpeta amsn

$ svn update

y lo mismo si se quiere hacer con lo plugins y skins (claro q dentro de la carpeta amsn-extras)