Instalando MLDonkey

De fábrica, nuestro Synology nos viene con un cliente para descarga Torrents y descargas directas, pero su rendimiento deja bastante que desear. Además, es un cliente para leechers… una vez completada la descarga de un torrent, no hay manera de dejarlo seedeando.

Esto es un gran problema, pues muchos trackers privados tienen ratio y debemos mantenerlo para poder seguir descargando, aparte que también esta bien contribuir a la comunidad seedeando 😉

La única solución (hasta que modifiquen el integrado, que esta basado en una versión antigua de rTorrent), es desactivarlo e instalar un cliente diferente.

De entre los diferentes gestores que hay para linux, yo he escogido el MLDonkey. ¿Mis Razones?

  • Tiene una velocidad de descarga normal (a lo que de tu línea en torrents bien seedeados)
  • Permite dejar las cosas seedeando cuanto tiempo quieras
  • Tiene una potente interfaz de administración, ya sea por web o utilizando un programa como el sancho
  • Soporta las siguientes redes p2p: edonkey, gnutella (1 y 2), overnet, direct connect y fasttrack (Esto depende de cómo compilemos el ejecutable).
  • Permite descargas directas desde HTTP y FTP.

Sigue leyendo para ver como instalarlo.

Antes de continuar, este tutorial asume que habéis realizado los anteriores, activando el telnet, instalado el bootstrap y el ssh. En caso de no haberlo hecho, deberíais empezar por ahí, dado que sino no podréis instalar el mldonkey.

Igualmente, deberíais deshabilitar el cliente integrado de descarga desde la web de administración de Synology.

El siguiente paso consiste en conseguir el MLDonkey:

Para empezar, copiaremos el ejecutable (mlnet) de la versión que escojamos en /volume1/opt/bin renombrándolo a mlnet. De esta manera, podremos ejecutarlo desde cualquier carpeta escribiendo simplemente “mlnet”.

El siguiente paso es instalar las librerías necesarias. Aquí debemos ir con cuidado y mirar si ya tenemos alguna instalada para no sobrescribirla.

Abrimos el archivo comprimido con las librerías y nos vamos a /lib. Miramos una por una las que tenemos en el archivo comprimido para ver si ya la tenemos en /lib. Es posible que esté pero con otra versión (osea, si tenemos la lib_abc.so.1.2.3 en el archivo comprimido, puede que instalada ya tengamos la lib_abc.so.2.2.2).

Copiaremos todas las que no tengamos a /lib (tanto las que hay en la carpeta /lib como /usr/lib del archivo comprimido). A continuación, mediante telnet/ssh, nos situaremos en /lib y crearemos los enlaces simbólicos para cada librería que hayamos copiado:

ln -s /lib/libxxxxx.so.1.1.1 /lib/libxxxxx.so.1
ln -s /lib/libxxxxx.so.1 /lib/libxxxxx.so

Bien, ya tenemos todos los archivos necesarios para trabajar. Ahora solo nos queda configurar el MLDonkey. Antes de nada, vamos a definir el directorio donde se guardará toda la configuración. Yo he decidido crear un directorio llamado download en el disco duro. Ahí tengo una carpeta oculta de nombre .mldonkey con toda la configuración y las carpetas incoming/temp para las descargas y el almacenaje de torrents. De esta forma es fácil administrarlo todo desde el propio Windows.

Por defecto, si vamos a ejecutar el programa como root, nos creará esta carpeta en /root/.mldonkey pero claro, eso esta en la memoria flash y es limitada.

Lo que haremos es, un enlace simbólico de esa carpeta a la que nosotros queremos en el disco duro:

mkdir /volume1/download/.mldonkey
cd ~/
ln -s /volume1/download/.mldonkey /root/.mldonkey

Dicho y hecho, procedemos a ejecutar el MLDonkey:

mlnet&

Si nos muestra algo similar a esto, es que todo ha ido bien:

[cO] Starting MLDonkey 2.9.0.CVS ...
[cO] Language EN, locale ANSI_X3.4-1968, ulimit for open files 1024
[cO] MLDonkey is working in /root/.mldonkey
[Gettext] Loading language resource mlnet_strings.EN_ANSI_X3.4-1968
[cO] loaded language resource file
[DNS] Resolving [DS207] ...
[DNS] Resolving [www.mldonkey.org] ...
[dMain] Libmagic file-type recognition database not present
[cO] Logging in /root/.mldonkey/mlnet.log
[dMain] Core started

Ahora, mediante el htop (o un kill %1) mataremos el proceso y procederemos a configurarlo.

La configuración base la haremos editando el archivo /volume1/download/.mldonkey/downloads.ini

Aquí lo mas importante es buscar el apartado “allowed_ips” y añadir la IP del PC (o PC’s) que usaremos para administrar el MLDonkey. Todo lo demás lo podremos modificar por Web, pero si queréis podéis ir leyendo el fichero y cambiando las opciones a vuestro gusto.

A partir de aquí ya hemos acabado con la parte complicada y todo lo que queda es configurar el MLDonkey activando las redes que queramos usar, indicar los puertos, limites etc.

Os recomiendo usar un programa tipo sancho para realizar la configuración y administración. Si teneis dudas sobre esta, podeis consultar la web oficial del MLDonkey.

Si no lo habéis modificado en el downloads.ini, el puerto para administrar por el navegador es el 4080, y el que debéis usar para conectaros con el sancho es el 4001.

Ya para terminar, yo he decidido que el MLDonkey solo se ejecute cuando yo lo decido, dado que si lo tenemos siempre funcionando, impedirá la hibernación de los discos duros. Para ello, he creado un simple archivo bat, que usando el Plink (viene con el PuTTY), me permite ejecutar con un solo clic el MLDonkey. Cuando quiero pararlo, simplemente me conecto con el sancho y utilizo la función “Kill Core” que incluye para parar el MLDonkey 🙂

El archivo bat es muy sencillo:

@echo off
plink -V
plink -ssh root@ds207ssh mlnet&
pause

En mi caso, ds207ssh es el nombre de un perfil de conexión ssh que tengo grabado en el PuTTY), que junto con la clave de autentificación SSH, se conecta automáticamente y ejecutaa el MLDonkey ( mlnet& ). Esta es una de las utilidades del SSH frente al Telnet 😀

Para que se inicie automáticamente, leeros esta entrada.

Si tenéis alguna duda, podéis usar los Comentarios de esta entrada e intentaré resolverla. Igualmente, iré avisando en el Blog conforme vayan saliendo nuevas versiones compiladas para nuestro Synology 😀

7 opiniones en “Instalando MLDonkey”

  1. Hola, me he comprado un DS207 y estoy intentado echar a andar el mldonkey, sigo los pasos tal y como dices aqui pero me da este error

    /opt/bin/mlnet: /opt/bin/mlnet: 1: þíúÎ: not found
    /opt/bin/mlnet: /opt/bin/mlnet: 2: : not found
    /opt/bin/mlnet: /opt/bin/mlnet: 3: : not found
    /opt/bin/mlnet: /opt/bin/mlnet: 4: : not found
    /opt/bin/mlnet: /opt/bin/mlnet: 5: : not found
    /opt/bin/mlnet: /opt/bin/mlnet: 6: : not found
    /opt/bin/mlnet: /opt/bin/mlnet: 9: Syntax error: “(” unexpected

    He repasado varias veces los pasos y no encuentro el fallo, aunque creo que puede estar en la parte de copiar las librerias.

    Gracias por adelantado

  2. Hola, ¿te funciona el Bootstrap correctamente?, osea, si haces un:

    :term: ipkg update
    :term: ipkg upgrade

    te hace cosas?

    Otra cosa, ¿que firmware tienes? Todo esto me funciona a mi con el 462, verifica que no tengas uno mas antiguo/actual.

  3. Ya lo he arreglado, era una chorrada, tenia una version diferente del archivo mlnet en la carpeta bin…
    Yo tengo instalado el firmware 514 y funciona todo sin problemas, otra cosa que quiero probar es a instalarle un servidor de correo y ver q tal va
    Gracias por responder tan pronto y por hacer esta guia, me ha venido de escándalo

  4. Perfecto 🙂

    Interesante tener la confirmación de que con un firmware actualizado sigue funcionando todo. Yo por el momento me voy a quedar con el 462 ya que los nuevo no me ofrecen nada de interés (incluso han añadido algunos errores con otros modelos de NAS).

    Avísame si consigues montar un servidor de correo y en caso de que lo consigues, anímate a hacer un tutorial paso a paso 😀

  5. Una preguntilla si no te importa 🙂

    Acabo de recibir un DS-207+ y quiero instalarle el MLDonkey usando tu tutorial (chapó por ti, ya que es imposible encontrar un bicho de estos y información suya en español) y quiero instalar el MLDonkey usando tus tutoriales pero me gustaría que se iniciase al arrancarlo, pero como no se prácticamente nada de Linux no se donde tengo que tocar para que se inicie automáticametne.

    Gracias de antemano y por los tutoriales.

  6. Hola, en principio deberias crear un script como los encontrarás en:

    /volume1/opt/etc/init.d

    Algo así:

    #!/bin/sh
    
    if [ -f /volume1/download/.mldonkey/mlnet.pid ] ; then
      kill `cat /volume1/download/.mldonkey/mlnet.pid`
    else
      killall mlnet
    fi
    
    rm -f /volume1/download/.mldonkey/mlnet.pid
    
    sleep 60
    
    /volume1/opt/bin/mlnet&

    Lo he probado y funciona 🙂

    El sleep es para darle un minutín al DS207 para que arranque todo y luego se inicia el mlnet.

    He tenido que crear un enlace simbolico a la carpeta donde tengo la configuración ya que iniciandolo así la buscaba en otro sitio.

    ln -s /volume1/download/.mldonkey /.mldonkey
  7. Joe, me había repetido en el comentario, no me di cuenta jejeje.

    Muchas gracias por la rápida solución y por probarlo para ver si funciona, eres un crack tiu :). A ver si llega el finde y tengo un rato porque la verdad que le he metido el disco, lo he configurado un poquito y lo tengo ahí parado que estos días con el trabajo y demás historias no tengo tiempo de trastearlo :S

    Lo único que he podido hacer desde el trabajo es investigar y preguntar por los foros para ver si alguien ha probado el paquete NTFS-3G, dado que FAT32 para discos externos enormes como que no me convence mucho y así se añadiría soporte de escritura a NTFS… pero parece q la comunidad no ha enredado con ese tema.

    Ya te informaré de mis progresos con el bixo;)

    Saludos y gracias.

Comentarios cerrados.