You are on page 1of 6

036-041_Monkey_Linux6 20.04.

2005 13:48 Uhr Página 36

PRÁCTICO • MLDonkey

Compartir archivos con MLDonkey y KMLDonkey

TRES EN UN BURRO

www.sxc.hu
El cliente multired MLDonkey propor-

ciona a los usuarios acceso a la ma-

yoría de redes donde se comparten


archivos. Os mostraremos cómo con-
figurar MLDonkey y cómo controlar

L
os programas para compartir
archivos en redes de intercambio este cliente con una interfaz KDE lla-
son probablemente las aplica-
ciones más controvertidas de nuestros
mada KMLDonkey.
tiempos. Usuarios que ponen sus colec-
POR MIRKO ALBRECHT
ciones completas de CDs en sus discos
duros e invitan a otros usuarios a
descargarlas han conseguido que la Entre los ejemplos más famosos de accesos más intuitivos. Uno de esos
industria musical y cinematográfica los redes donde se comparten archivos clientes es MLDonkey.
observe con recelo. Pero, hecho de encontramos a Morpheus, Gnutella, Bit-
forma legal, el compartir archivos es Torrent o Donkey/eMule. Los clientes El Núcleo
una forma excelente de que estén más modernos pueden soportar múlti- MLDonkey ejecuta lo que se ha dado en
disponibles sin necesidad de adquirir ples redes de intercambio de archivos llamar núcleo, parecido a un demonio en
alojamiento Web. entre iguales y ofrecer a sus usuarios segundo plano. Algunas distribuciones

36 Número 06 WWW.LINUX- MAGAZINE.ES


036-041_Monkey_Linux6 20.04.2005 13:48 Uhr Página 37

MLDonkey • PRÁCTICO

software que concuerda con nuestro


entorno hardware y nuestras aplica-
ciones deseadas. Debemos optar por la
versión mldonkey-2.5.16 con el parche
patch_pack16t.
Ambos archivos están disponibles
para ser descargados desde [2], pudien-
do seguir los pasos habituales para
descomprimirlos. Movemos los con-
tenidos del paquete del parche a la car-
peta creada cuando descomprimimos el
archivo tar principal /mldonkey-2.5.16.
Ahora nos movemos a este directorio y
escribimos patch -p0 < patch_pack16t
para instalar el parche.
Tendremos que configurar el makefile
en la misma carpeta. Hemos decidido
Figura 1: El primer paso es restringir el acceso al núcleo de MLDonkey asignando una con- restringir el soporte de redes sólo a Bit-
traseña. Torrent, Fasttrack y a eDonkey2000. Y
no usaremos la interfaz gráfica de
incluyen el núcleo y una interfaz gráfica parches. En el momento de imprimir usuario GTK por el momento. El
de usuario (GUI). Otras, como Suse esta revista, la última versión oficial de comando configure que consigue esto
Linux 9.2, simplemente incluyen el inter- MLDonkey era la 2.5.28, y la última ver- es:
faz gráfica de usuario KDE KMLDonkey. sión inestable era la número 2.5.29.
La experiencia nos indica que es mejor Los foros de MLDonkey (como el [3]) ./configure --disable-gui U
compilar nuestra propia versión en lugar nos indicarán que la versión con más --enable-batch U
de usar el programa suministrado por la reputación de estabilidad en opera- --disable-opennap U
distribución. Los más arriesgados que- ciones 24x7 y la mejor tasa de descarga --disable-audiogalaxy U
rrán compilar el último código fuente es el núcleo 2.5.16t. La “t” al final del --disable-gnutella U
para mantenerse al tanto de la versión número de versión identifica la versión --disable-gnutella2 U
puntera de desarrollo de MLDonkey, lo como parcheada. La propia Spiralvoice --disable-soulseek U
que se convierte en una montaña rusa de afirma que esta es la versión más --disable-openft U
vez en cuando. Los desarrolladores de estable, y se refiere a la versión actual --disable-cymes U
esta tecnología para compartir archivos como “de naturaleza experimental” [2]. --enable-pthread
están mejorando constantemente los He probado muchas versiones, y desde
protocolos y los ajustes internos. Tam- luego estoy de acuerdo con esto. Si tenemos otras preferencias cambiare-
bién tiene sentido estar al tanto de los Para instalar MLDonkey, primero mos --disable (deshabilitar) por --enable
cambios en cada una de las redes de descomprimimos el paquete en un (habilitar) según nuestros deseos. Por
intercambio, las cuales usan sus propios nuevo directorio escribiendo tar xvfz ejemplo, si sólo deseamos soporte para
protocolos. mldonkey-2.5.x.tar.gz. Al entrar en el eDonkey2000, simplemente ejecutare-
Dicho esto, la mayoría de usuarios directorio deberíamos encontrar un mos ./configure -disable-multinet sin
preferirá una versión estable. De nuevo, archivo llamado mlnet, el cual podemos olvidar especificar el resto de preferen-
la experiencia nos muestra que algunas llamar directamente escribiendo ./mlnet. cias.
actualizaciones no son óptimas. Por Generalmente, las versiones precom- Este artículo se centrará en las redes
tanto, si tenemos una versión estable de piladas que Spiralvoice ofrece para eDonkey, BitTorrent y Fasttrack
MLDonkey, lo más recomendable es descargar funcionan bastante bien. (Kaazaa), que son las más populares y
quedarse al margen de actualizaciones Estas versiones disponen de soporte difundidas entre la comunidad de inter-
dudosas que pueden afectar fácilmente modular para la mayoría de las redes de cambio de archivos. Sólo mencionar
la estabilidad de nuestro núcleo. intercambio entre iguales. El código todas las redes de intercambio de
puede ser mayor, pero esto no debe ser archivos ocuparía más espacio que todo
Instalación de Binarios problema para un equipo moderno. este artículo. Pero si queremos aprender
Si preferimos evitar la compilación de Además, podemos usar la interfaz grá- más, siempre podemos consultar las
código fuente podemos descargar fica de usuario para deshabilitar preguntas más frecuentes (FAQ) de
paquetes binarios desde la página Web cualquier módulo que no necesitemos MLDonkey en [4]. Aquí encontraremos
[1]. La página Spiralvoice [2], que es más adelante. bastante ayuda con los distintos módu-
una excelente fuente de descargas, los de redes que implementa MLDon-
dispone de parches y un paquete cons- Compilar un Burro key.
tructor para MLDonkey. En la página Compilar MLDonkey desde el código Para compilar MLDonkey necesita-
hay diversas versiones que incluyen los fuente nos proporciona una versión del mos la herramienta Objective Caml

WWW.LINUX- MAGAZINE.ES Número 06 37


036-041_Monkey_Linux6 20.04.2005 13:48 Uhr Página 38

PRÁCTICO • MLDonkey

(este es el lenguaje en el que se ha


escrito MLDonkey) versión 3.08 y
LablGTK 1.2.7. Podemos usar la fun-
ción wget de la distribución para
descargar los paquetes requeridos de
Internet durante la fase ./configure y
compilarlos. No obstante, si aplicamos
el parche patch_pack16t necesitaremos
nuevas versiones de ambas herramien-
tas. Para deshabilitar la instalación
automática de ambas herramientas
eliminaremos la opción --enable-batch
del comando configure. Si optamos por
deshabilitar la interfaz gráfica de
usuario (--disablegui) no necesitare-
mos actualizar LablGTK.
Para compilar ocaml y lablgtk, antes
de empezar debemos descargar las
fuentes desde [5] y desde [6]. Ahora
ejecutaremos tar xzfv para desempaque-
tarlos. Crear Objective Caml significa Figura 2: Para ejecutar el núcleo de MLDonkey de forma efectiva necesitamos abrir una serie
abandonar la típica compilación en tres de puertos TCP y UDP en la configuración de nuestro cortafuegos.
fases:
el cual debe ocupar entre 3.0 y 3.5 Cuando tecleamos mlnet, las si-
./configure MBytes. guientes líneas deben aparecer en nues-
make world opt opt.opt Para ejecutar MLDonkey desde tra pantalla al margen de otra mucha
make install cualquier lugar de nuestro sistema información:
debemos copiar mlnet al directorio
La sintaxis de lablGTK tampoco es la global escribiendo cp mlnet Welcome to MLDonkey
habitual. De hecho necesitamos cuatro /usr/local/bin. Por supuesto, necesita- SAVING SHARED FILES AND
pasos: mos privilegios de administrador para SOURCESU
hacerlo. Para hacer que el archivo sea on localtime: 12/ 9, 17:07:33
make configure ejecutable por todos los usuarios intro- SAVED
make ducimos chmod a+x/usr/ Options correctly saved
make opt local/bin/mlnet o asignamos a los Core started on localtime:U
make install usuarios privilegios adecuados en nues- 12/ 9, 17:07:33 (12/ 9,
tro sistema. 17:07:33)
En ambos casos necesitamos privilegios Disabling output to console,U
de administrador para ejecutar make Inicio del Núcleo to enable: stdout true
install. Si tenemos Suse Linux 9.2 no Cualquier usuario puede ejecutar el
necesitaremos pasar por todos estos núcleo de MLDonkey en una ventana Pulsamos [Ctrl]+[C] para finalizar el
problemas para compilar estas dos herra- terminal escribiendo mlnet. Si no programa, o bien podemos simplemente
mientas, puesto que la distribución hemos puesto el núcleo en nuestra ruta cerrar la ventana terminal donde lan-
incluye versiones recientes de ambas. tendremos que cambiar a la carpeta zamos el núcleo. Para no tener la
Simplemente ejecutaremos Yast para donde reside mlnet y escribir ./mlnet. necesidad de mantener abierta una ven-
instalarlas si aún no lo hemos hecho. La primera vez que ejecutamos el pro- tana para ejecutar mlnet podemos
Tras dar este paso en nuestro camino grama, este crea una gran cantidad de teclear mlnet -daemon en su lugar. Esto
hacia las redes de pares, deberíamos ser archivos y directorios en nuestro directo- hace que el núcleo se ejecute como
capaces de ejecutar configure en el rio raíz. Para evitar este desorden y man- demonio en segundo plano, pudiendo
directorio /mldonkey-2.5.16 sin ningún tener los archivos concentrados en un por tanto los usuarios desconectarse del
tipo de error. Si aún así tenemos proble- lugar definido debemos ajustar la variable sistema sin cerrar mlnet. Para finalizar
mas compilando MLDonkey podemos o de entorno MLDONKEY_DIR. Para ha- el proceso en segundo plano introduci-
olvidarnos del parche o usar la variante cerlo abrimos el archivo .bashrc de nue- mos killall mlnet.
patch_pack16r en su lugar. Los coman- stro directorio raíz y añadimos la línea
dos make depend y make nos generan el export MLDONKEY_DIR="/ruta/a/direc- Administración del Núcleo
ejecutable, puesto que no hay make torio-mldonkey", asegurándonos que Ahora que el núcleo de MLDonkey se
install. Para ejecutar MLDonkey como creamos el directorio antes. Ahora nos está ejecutando en segundo plano hay
usuario sin privilegios simplemente eje- conectamos de nuevo en la consola y apli- muchas formas de acceder al demonio.
cutamos el núcleo de MLDonkey mlnet, camos los cambios. Podemos incluso usar telnet si preferi-

38 Número 06 WWW.LINUX- MAGAZINE.ES


036-041_Monkey_Linux6 20.04.2005 13:48 Uhr Página 39

MLDonkey • PRÁCTICO

mos un método espartano. Si escribimos Si preferimos gestionar MLDonkey tribución de


telnet localhost 4000 tendremos acceso a con nuestro explorador Web debemos Suse 9.2 es
la interfaz MLDonkey. probar alemule, phpEselGui y Zuul. un antiguo
Si escribimos un interrogante en el Todas son interfaces gráficas de usuario kmldon- Figura 3: Podemos añadir
cursor telnet nos indica que s basadas en PHP. key-0.9.1. el applet de MLDonkey al
searchkey lanzará una búsqueda,vr La versión panel de control KDE
muestra los resultados, y d result num- KMLDonkey actual de para un mejor y más
ber lanza una descarga. El comando q Hace tiempo que existe una interfaz KMLDonkey rápido acceso al núcleo.
finaliza la interfaz. Si escribimos dos MLDonkey para el escritorio KDE. KML- cuando se
interrogantes obtendremos ayuda Donkey se ha convertido en un programa mandó a imprimir esta edición, kmldon-
detallada. realmente útil durante los últimos key-0.10, está disponible para ser descar-
Como alternativa a telnet, podemos meses. Como herramienta KDE genuina, gada desde [8]. La construcción de la
abrir una interfaz gráfica de usuario KMLDonkey usa la librería Qt, lo que aplicación desde las fuentes es algo
basada en Web para Mldonkey escribi- garantiza una integración sin fisuras con rápido y poco problemático. Para ha-
endo http://localhost:4080 en nuestro el escritorio KDE. Podemos añadir kml- cerlo, primero descargamos el archivo
explorador de Internet. También donkey a nuestro panel de control KDE e tar fuente, para entonces compilar e
podemos optar por alguna de las integrar enlaces ed2k (enlaces a descar- instalar usando los siguientes comandos:
muchas interfaces gráficas en su lugar. gas de eDonkey en Internet). KMLDon-
La versión preempaquetada dispone key también tiene una interfaz estruc- tar jxvf kmldonkey-0.10.tar.bz2
de una útil interfaz para la librería turada de forma lógica, que es autoex- cd kmldonkey-0.10
GTK tal y como hemos mencionado plicativa en la mayoría de las ocasiones. ./configure --prefix=$KDEDIR
con anterioridad. Los usuarios del Si preferimos instalar un binario KML- make
escritorio de Gnome optarán con toda Donkey, los usuarios de Suse des- su -c "make install"<I>
probabilidad por una bien estruc- cubrirán una versión actual para Suse
turada e intuitiva interfaz gráfica de 9.1 y 9.2 en la página de Pacman [7]. La El directorio KDE para Suse Linux es
usuario GTK. versión suministrada con la actual dis- /opt/kde3, por ejemplo, por lo que la

WWW.LINUX- MAGAZINE.ES Número 06 39


036-041_Monkey_Linux6 20.04.2005 13:48 Uhr Página 40

PRÁCTICO • MLDonkey

admin k0ntra5eña bajas y que busque servidores que per-


(Figura 1). mitan ID altas.
Tendremos que Una ID baja no nos llevará muy lejos
hacer algunos en una red donde compartimos
ajustes más en archivos. Una ID baja significa más tra-
Settings | Confi- bajo administrativo para el servidor
gure Connection Donkey, puesto que los puertos específi-
(Configuración | cos de Donkey (4661/tcp,4662/tcp y
Configurar Cone- 4665/udp) están bloqueados por un
xión) y en Prefe- cortafuegos o no enrutados por un
rences | Configure router. Tenemos que permitir estos
MLDonkey (Pre- puertos en nuestro propio núcleo
ferencias | Confi- añadiéndolos a la configuración de
gurar MLDonkey). nuestro cortafuegos SuSEFirewall2 bajo
En el primer sub- Services | Other services (Servicios |
Figura 4: Vista de la solapa “Búsqueda” de amule, otro front-end menú introducire- Otros Servicios) como aparece en la
para MLMule. En este caso buscamos copias de “El Quijote” - el libro, mos la contraseña figura 2. Si nuestro sistema MLDonkey
ojo, nada ilegal (esperamos). y credenciales de se esconde detrás de un router, debe-
usuario que mos saber que la mayoría de los dispo-
llamada oportuna es ./configure --pre- acabamos de introducir. También sitivos disponen de una conveniente
fix=/opt/kde3. El enlace para el pro- podemos configurar el modo de inicio interfaz Web que nos permite redirigir
grama compilado se encuentra bajo el (KMLDonkey startup mode) para lanzar conexiones para esos puertos a nuestra
subtítulo “Internet” en el menú KDE. el núcleo con la interfaz. Esto nos máquina (normalmente llamados
Podemos pulsar [Alt]+[F2] e introducir ahorrará el problema de tener que lan- “Servidores Virtuales” o algo similar).
kmldonkey para ejecutar la aplicación zar el núcleo manualmente como Encontraremos más detalles en la docu-
directamente (suponiendo que el núcleo hemos descrito con anterioridad. mentación de nuestro router.
de MLDonkey está ejecutándose). El segundo menú nos ofrece opciones El núcleo debe asignarnos una ID
para las distintas redes de intercambio alta, lo que podemos comprobar de
Configuración que soporta MLDonkey. El área de redes forma sencilla desde la consola de
Tras lanzar KMLDonkey, lo primero que (Networks) nos permite habilitar y con- comandos de MLDonkey introduciendo
debemos hacer es configurar la interfaz figurar los módulos individuales. id. Si el resultado es nuestra propia
del programa en la última pestaña Podemos asignar el valor false (Falso) a dirección IP, la asignación de una ID
(Console). Justo en la parte inferior de una red para evitar usar esa red. Si alta ha funcionado, lo que significa que
la pestaña está el lugar donde intro- necesitamos habilitar una red, como nunca más estaremos al final de la lista
ducir la contraseña para acceder al eDonkey2000, seleccionaremos true de clientes.
núcleo (hasta ahora cualquier usuario (Verdadero).
de nuestra red local podía acceder a Últimos Ajustes
nuestro núcleo usando telnet o vía eDonkey 2000 Algunos usuarios sugieren ajustar el
HTML. Por ejemplo, para que la con- KMLDonkey dispone de numerosos va- valor max_connected_servers (Máximo
traseña sea k0ntra5eña, escribiríamos lores predeterminados para la mayoría número de servidores conectados) lo
lo siguiente en la consola: add_user de protocolos de intercambio entre más alto posible. Esto significa que
iguales. Pero algunos archivos se descargaran de
algunos necesitan forma más rápida y, por lo menos al
algo de atención, principio, las consultas realizadas se
como los de eDon- gestionan de forma más generosa. No
key2000. Buscare- obstante, esto sobrecarga la red y puede
mos la entrada no gustarle a otros usuarios. Cada espa-
force_high_id en el cio que ocupemos con una conexión a
panel de la un servidor es uno que otro usuario no
derecha, debajo de puede utilizar. Por tanto, ajustar el valor
Network | Donkey a un valor más alto que el predetermi-
y le asignaremos nado (“3”) no garantiza descargas más
true como valor. rápidas, por lo que es mejor dejar el
Esto indica al valor como está.
servidor que debe El valor Bandwith (Ancho de banda)
cortar las cone- nos permite especificar el ancho de
xiones con los banda máximo y mínimo. La tasa má-
Figura 5: Vista de la solapa de transferencias con 3 archivos servidores que xima de subida de información
descargándose y uno (en rojo) en estado de espera. sólo soportan ID (max_hard_upload_rate) no debe ser

40 Número 06 WWW.LINUX- MAGAZINE.ES


036-041_Monkey_Linux6 20.04.2005 13:48 Uhr Página 41

MLDonkey • PRÁCTICO

superior a 5 kbps para ADSL o a 3 kbps especificar el tipo


para RDSI. La razón es que si el valor de archivo y
elegido para subir archivos es muy alto restringir su
afectaría de forma significativa la tasa tamaño. También
de descarga. Por ejemplo, si la subida tiene sentido com-
de un archivo en una línea ADSL de probar la pestaña
1000 kpbs alcanza el límite de subidas Statistics (Estadís-
de 128 kbps, lo más probable es que la ticas) de vez en
conexión se bloquee, bajando incluso la cuando. Esta nos
velocidad del acceso normal a Internet ofrece interesante
de forma dramática. La tasa de descarga información sobre
debe ser ajustada de acuerdo a nuestro la capacidad de
entorno, después de todo, nosotros descarga de nues-
conocemos nuestra conexión a Internet tros clientes.
mejor que nadie. Nótese que, el valor 0 Una de mejores
elimina los límites. funciones de KML-
Path (Ruta) nos permite especificar Donkey es que Figura 6: Solapa de conexión de amule. Vemos en este caso los
donde almacenar temporalmente los podemos integrar servidores centrales y de pares disponibles.
archivos y descargas. Con esto con- el programa en
cluimos los ajustes principales, por lo nuestro panel de control KDE. Para mente desconocidos. No obstante el
que podemos comenzar a compartir hacerlo pulsamos con el botón derecho paquete MLDonkey aún necesita algo
archivos por primera vez. Por supuesto, sobre el área Kicker del panel de con- de atención. Nos gustaría ver la insta-
el núcleo de MLDonkey tiene muchos trol y seleccionar Add | Applet | lación automática basada en RPM que
detalles adicionales que podemos reto- MLDonkey Applet (Añadir | Applet | elimina la necesidad de que los usua-
car hasta afinarlo completamente a MLDonkey Applet) para añadir el pro- rios realicen tareas como copiar la apli-
nuestro gusto. Encontraremos más grama. Aquí también podemos configu- cación en la posición adecuada del
información en los numerosos foros que rar un par de parámetros críticos del árbol de directorios.
hay en Internet respecto a MLDonkey, núcleo (ver figura 3), incluyendo las Confiemos en que la industria del
por ejemplo, véase [3]. tasas de subida y descarga máximas. entretenimiento no arrase la comunidad
De hecho el applet muestra las tasas de intercambio de archivos con su
Descargas con KMLDonkey actuales para que las conozcamos de actual postura de oposición a cualquier
La interfaz del programa es muy intui- forma rápida. Si la tasa de descarga es tipo de red de intercambio y que
tiva, estando las funciones distribuidas muy baja para otras tareas que ten- reconozca el valor de la comunidad y
en unas pocas pestañas. Servers (Servi- gamos podemos presionar el botón apoye a prometedoras herramientas
dores) nos muestra una lista de los “pausa” para indicar al núcleo de como MLDonkey. ■
servidores individuales para compartir MLDonkey que espere hasta que pulse-
archivos y nos permite abrir o cerrar mos Play para rehabilitar el núcleo. RECURSOS
conexiones con estos. Search Como hemos mencionado previa-
[1] Página Web de MLDonkey: http://
(Búsqueda) nos permite buscar mente, ahora el navegador Web Kon-
www.mldonkey.org
archivos en varias redes. Podemos queror reconoce la URL ed2k como pro-
[2] Binarios MLDonkey de Spiralvoice:
tocolo válido. Si nos encontramos con
http://download.berlios.de/pub/
un enlace de este tipo en Internet, el
mldonkey/spiralvoice/
navegador añadirá la descarga al
[3] Foro de MLDonkey: http://mldonkey.
núcleo actual con un solo clic de nues-
berlios.de/modules.
tro ratón. php?name=Forums
[4] MLDonkey FAQ: http://www.nongnu.
Conclusiones
org/mldonkey/faq.html
Tras acabar con la fase de instalación,
[5] Objective Caml: http://caml.inria.fr/
intercambiar de archivos en una red es
ocaml/
muy fácil. Gracias a cómodas interfaces
[6] Archivos fuente para lablGTK: http://
con funciones intuitivas como KML-
wwwfun.kurims.kyoto-u.ac.jp/soft/
Donkey, cualquiera puede ofrecer
olabl/lablgtk.html
archivos a la comunidad y acceder a
[7] Binarios Suse para KMLDonkey: http://
descargas que otras personas han
packman.links2linux.org/?action=451
puesto a nuestra disposición.
Figura 7: Diálogo de amule para la configu- Tanto el núcleo como la interfaz grá- [8] Archivos fuente para KMLDonkey:
http://savannah.nongnu.org/
ración del programa. En este caso, vemos la fica de usuario han madurado. La inter-
download/kmldonkey/kmldonkey-0.
sección correspondiente a la configuración operatibilidad normalmente no da pro-
10.tar.bz2
del núcleo. blemas, y los cuelgues son práctica-

WWW.LINUX- MAGAZINE.ES Número 06 41

You might also like