{{tag>precise p2p}} ---- ====== MLDonkey ====== **MLDonkey** est un client [[P2P]] multiplate-forme, pour les réseaux [[wpfr>EDonkey2000|eDonkey]], [[wpfr>BitTorrent_(protocole)|BitTorrent]] mais aussi [[FTP]], les [[wpfr>Direct_download|téléchargement direct]] et bien d'autres encore. Il ne nécessite pas d'interface graphique pour continuer à télécharger. Accessible par [[wpfr>interface web]] ou [[wpfr>interfaces graphiques]] dédiées, MLDonkey est idéal à placer sur un serveur commandé à distance. ===== Installation ===== [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt://mldonkey-server|mldonkey-server]]** Lors de l'installation une question vous sera posée: **Faut-il lancer MLDonkey au démarrage du système?**\\ Si vous découvrez MLDonkey, il est préférable de laisser décocher l'option. Vous pourrez l'activer plus tard lorsque vous aurez connaissances des différentes manière de l'utiliser. ===== Lancement ===== Nous venons d'installer MLDonkey. Vous ne trouverez pas d'entrée dans le menu applications concernant MLDonkey puisque c'est un [[wpfr>Disk_and_execution_monitor|démon]]. Ensuite vous utiliserez un client graphique qui permettra de contrôler ce démon. ====En mode standard==== Pour démarrer ou arrêter MLDonkey copiez dans un terminal : __Pour le démarrer :__ mlnet __Pour le stopper :__ sudo killall mlnet __Démarrer MLDonkey à l'ouverture de la session :__\\ Ajouter la commande **mlnet** [[tutoriel/application_demarrage#lancer_le_gestionnaire_d_applications_au_demarrage|sur le gestionnaire d'applications au démarrage]]. ====En mode démon==== Avec ce mode, même si vous changez ou quittez la session de l'ordinateur sur lequel est en fonction le démon, MLDonkey continuera d'être actif. Si vous utilisez le mode démon, vous devrez manuellement paramétrer MLDonkey pour qu'il utilise entre autres vos répertoires pour enregistrer les téléchargements en court et finaux, et gérer les droits. Ce qui peut s’avérer difficile pour les néophytes. __Pour le démarrer :__ sudo /etc/init.d/mldonkey-server start __Pour le stopper :__ sudo /etc/init.d/mldonkey-server stop __Activer le démon MLDonkey au démarrage de l'ordinateur __(ce qui est proposé à l'installation) :\\ Il vous faut [[:tutoriel:comment_editer_un_fichier|éditer le fichier]] ''/etc/default/mldonkey-server'' et mettre le paramètre **LAUNCH_AT_STARTUP** à **true**. ===== Configuration du démon MLDonkey ===== MLDonkey a subit de nombreuses modifications, certaines des informations concernant sa configuration sont partiellement obsolètes. ==== Configuration des répertoires ==== Comme tout bon logiciel de P2P, MLDonkey a besoin de deux répertoires pour fonctionner : * Un répertoire **temp** dans lequel il stockera les fichiers en cours de téléchargement. * un répertoire **incoming** dans lequel il placera les fichiers téléchargés. Par défaut ces deux répertoires se situent dans ''/var/lib/mldonkey'', ce qui n'est pas très pratique. Nous allons donc modifier le démon afin qu'il place ces répertoires dans votre dossier personnel. Avant de toucher au fichier de configuration du démon nous devons éteindre celui ci : sudo /etc/init.d/mldonkey-server stop Maintenant nous allons [[:tutoriel:comment_editer_un_fichier|éditer le fichier]] ''/var/lib/mldonkey/downloads.ini''\\ Il faut trouver la ligne contenant les paramètres **incoming_directory** et **temp_directory**, puis les remplacer par les répertoires de votre choix : Ce qui donne par exemple : temp_directory = "/home/mondossierpersonnel/.mldonkey/temp" (* The directory where downloaded files should be moved after commit *) incoming_directory = "/home/mondossierpersonnel/.mldonkey/fini" Bien sûr nous devons créer ces deux répertoires. **Sous Feisty (en mode utilisateur)** Les dossiers se trouve dans ''/home/mondossierpersonnel/.mldonkey'', le fichier à éditer est alors ''/home/mondossierpersonnel/.mldonkey/downloads.ini'' Trouvez la section pour les fichiers temporaires : temp_directory = "/home/mondossierpersonnel/.mldonkey/temp" Puis la section pour les répertoires de partage et de classement : shared_directories = [ { dirname = "/home/mondossierpersonnel/.mldonkey/shared" (* dossier partagé*) strategy = only_directory priority = 0 }; { dirname = shared strategy = all_files priority = 0 }; { dirname = "/home/mondossierpersonnel/.mldonkey/incoming" (* dossier fichiers finis edonkey*) strategy = incoming_files priority = 0 }; { dirname = "/home/mondossierpersonnel/.mldonkey/incoming" (* dossier fichiers finis bittorrent*) strategy = incoming_directories priority = 0 };] ==== Configuration des droits==== Pour des raisons de sécurité, le démon mldonkey est lancé par l'utilisateur ''mldonkey'' appartenant au groupe ''mldonkey''. Pour que ce dernier puisse aller écrire dans nos deux répertoires fraîchement crées, il faut modifier les droits : On attribue les dossiers de mldonkey au groupe ''mldonkey'' : sudo chgrp -R mldonkey /home/mondossierpersonnel/.mldonkey/* Enfin on autorise seulement les utilsateurs du groupe mldonkey à lire et modifier ces répertoires : sudo chmod 660 -R /home/mondossierpersonnel/.mldonkey/* Comme l'utilisateur ''mldonkey'', appartient également au groupe ''mldonkey'' et que le démon est lancé par l'utilisateur ''mldonkey'', ce dernier pourra donc lire et écrire dans les répertoires définis. **Sous Feisty (en mode utilisateur) cette étape n'est plus obligatoire.** Une commande se révèle utile pour vérifier le bon positionnement des droits: sudo -u mldonkey /usr/bin/mlnet. Un message d'erreur explicite "check rights" apparaît si les droits ne permettent pas à mldonkey d'écrire dans son répertoire. ==== En cas de problème : mode verbose ==== Lorsque MLDonkey ne démarre plus et qu'il n'y a rien dans le log, il faut modifier le script de démarrage ''/etc/init.d/mldonkey-server'' pour afficher des informations supplémentaires. Pour cela, chercher les lignes : start-stop-daemon --start $WRAPPER_OPTIONS \ --pidfile $PIDFILE --background --exec $EXEC \ -- -log_file $SERVERLOG -pid $PIDDIR 2>&1 et remplacer ''--background'' par ''--verbose''. Au démarrage du service (''service mldonkey-server start''), des infos seront affichées, et probablement la cause du problème. Ensuite, rétablir la ligne modifiée. NB : ces lignes peuvent varier suivant les versions. Version pour cet exemple : 3.0.1. ===== Installation d'un client graphique ===== Comme je l'ai dit, MLDonkey n'est que le cœur du système de téléchargement. Pour pouvoir le piloter facilement il vous faut un client graphique qui se connectera au démon et lui enverra des commandes. L'avantage est que vous pouvez fermer le client graphique, le démon lui, continue à télécharger. Un autre avantage est que vous pouvez configurer un PC dédié uniquement au téléchargement sur lequel tourne le démon, et piloter le téléchargement depuis un autre PC, ou même du bureau. Donc en résumé par exemple, un PC dans le salon qui fait du bruit et qui télécharge, un pc dans la chambre depuis lequel on lance les téléchargements et qu'on peut éteindre la nuit. Par défaut vous utilisez MLDonkey en tant qu'utilisateur **admin**. Si vous voulez l'utilisez à l'extérieur, vous pouvez facilement définir un reverse proxy dans apache qui pointera par exemple sur le dossier http://monsite/mldonkey. Comme ça, depuis internet, vous pouvez lancer des téléchargements. ====WebUI==== MLDonkey fourni nativement une interface web pour piloter le démon. Elle est accessible par défaut sur le port 4080 (vous pouvez le changer dans la configuration de MLDonkey) de la machine qui héberge le démon (vous pouvez donc accéder à votre interface web à l'adresse [[http://localhost:4080/]]). Cette interface est en anglais uniquement. ==== MLdonkeyGtkUi ==== Le premier client graphique que je vous présente est le plus simple à installer.\\ Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **mldonkey-gui** Puis le démarrer soit: *En utilisant les menus, cliquez sur **Internet** puis **MLDonkey**. *Ou alors, lancez l'application via le [[:unity#tableau_de_bord_dash|dash]] (Ubuntu 11.04 et ultérieures) ou via le [[:terminal]] (toutes versions d'Ubuntu) avec la [[:commande_shell|commande]] suivante : mlgui ==== KMLDonkey - Interface KDE ==== Voir la page dédiée : [[KMLDonkey]] ==== Sancho - Interface Gnome ==== Il existe plusieurs interfaces graphiques, ma préférée est Sancho : http://sancho.awardspace.com\\ C'est une interface gtk2 avec une icône dans le [[indicator-applications|systray]]. === Installation === Récupérez l'archive de Sancho sur le site du projet, onglet **Linux**. Quand au choix de la version: *Java GTK x86 binary: Si vous avez [[Java]] sur votre machine architecture [[architecture_materielle#mon_ubuntu_est-il_32_ou_64_bits|32 bits]]; *Java GTK x86_64 binary: Si vous avez Java sur votre machine architecture 64 bits; *Native GTK x86 binary: Si vous n'avez pas Java sur votre machine, compatible 32 et 64 bits. Nous supposerons que l'archive est téléchargée dans votre dossier personnel. Créez le répertoire d'installation : sudo mkdir /usr/local/sancho Maintenant exécutons le script d'installation (À adapter en fonction de la version obtenu) : sudo sh ~/sancho-0.9.4-59-linux-gtk.sh Le script vous demande où le logiciel doit être installé : Extract to directory []: Taper donc ''/usr/local/sancho'' Sancho est installé. Vous pouvez [[:raccourci-lanceur|Créez un raccourci]] en utilisant « ''sancho'' » comme commande. Les fichiers de configuration de Sancho dans votre dossier personnel appartiennent à **root** (car vous avez lancé l'installation en tant qu'administrateur). Nous allons donc remettre le bon propriétaire (vous !) à ces fichiers : sudo chown -R $USER:$USER ~/.sancho //(vous pouvez remplacer $USER par votre login bien sûr ;-)// Vous pouvez maintenant démarrer **sancho** depuis le menu **applications => internet**. === Mettre Sancho en français === Démarrez **Sancho**, allez dans **Tools => Preferences**. Dans la section **sancho:main**, dans l'onglet **General**, là où il y a écrit « Locale specific sancho*.properties file », choisissez **fr_FR** dans le menu déroulant puis redémarrez l'application. === Dernière étape : se connecter à un serveur === La dernière étape est de se connecter à un serveur pour pouvoir lancer une recherche. Cliquez sur l'onglet serveur.\\ En haut a droite cliquez sur la planète avec une croix verte intitulé "ajouter un fichier serveur.met" entrez-y l'adresse d'un fichier de serveur .met que vous récupérerez sur des sites comme [[http://ed2k.2x4u.de]]\\ Il devrait aussi récupérer une liste d'autre serveurs. Il est plus sûr de désactiver les options de récupération automatique des serveurs afin d'éviter de recevoir des serveurs espions. Dans ce cas une liste de serveurs sûrs doit être récupérée en téléchargeant un des fichiers ".met" ci-dessus. Une fois connecté lancez une recherche. === Lancement du démon avec l'interface graphique Sancho === Pour lancer le démon automatiquement au démarrage de Sancho et le couper à la fermeture de Sancho (à la manière de Amule) : mlnet -start_gui true -mldonkey_gui /usr/local/sancho/sancho Puis vous pouvez simplement lancer mlnet, le serveur lancera toujours Sancho. **N'oubliez pas d’autoriser Sancho à couper le serveur mldonkey lorsque vous quittez :** outils / préférences : * optional core executable : mlnet * cocher Kill spawned core when exiting sancho Pour revenir à la configuration par défaut, [[:tutoriel/comment_editer_un_fichier|éditez le fichier]] /home/mondossierpersonnel/.mldonkey/download.ini et cherchez la ligne mldonkey_gui ===== Filtrage des IP ===== **Pour Feisty :** Vous pouvez vous servir d'un ipfilter.dat en le placant dans le dossier **~/.mldonkey** Pour la compatibilité d'un fichier ipfilter.dat : * récupérer un fichier :[[http://emulepawcio.sourceforge.net/nieuwe_site/Ipfilter_fakes/ipfilter.dat|Ipfilter.dat ]] ; * [[:tutoriel/comment_editer_un_fichier|éditez ce fichier]] et supprimer toutes les lignes (avec les #) avant la série de chiffre . Vous pouvez aussi utiliser [[recherche_ligne_commande#grep]] pour filtrer les lignes commentées (avec les #) : grep -v ^# ipfilter.dat > ipfilter.p2p ===== Ports utilisés ===== Avec l'interface web, cliquer sur les onglets **help+ => Sysinfo** et le troisième tableau affichera la liste des ports utilisés comme présenté ci dessous: Network | Port|Type ---------- ------ ------------------- BitTorrent| 6882|client_port TCP BitTorrent| 6881|tracker_port TCP Core | 4080|http_port Core | 4000|telnet_port Core | 4001|gui_port Donkey | 4662|client_port TCP Donkey | 4666|client_port UDP Donkey | 14934|overnet_port TCP UDP Donkey | 4672|kademlia_port UDP En veillant que le démon ne soit pas lancé pendant l'édition, il est possible de modifier ces ports: [[:tutoriel:comment_editer_un_fichier|éditez le fichier]] **~/.mldonkey/nomduprotocole.ini** avec nomduprotocole : * Pour Edonkey, Overnet, Kademlia : éditer le fichier /home/mondossierpersonnel/.mldonkey/donkey.ini. * Pour Bittorrent : éditer le fichier /home/mondossierpersonnel/.mldonkey/bittorrent.ini. * etc... ===== Intégration à Firefox ===== À l'aide d'une extension spécialement conçu pour MLDonkey, il est possible de charger des fichiers eDonkey et BitTorrent en un clic. Elle utilise l'interface web WebUI, et permet donc de le faire à distance. Disponible sur le site des extensions Mozilla: https://addons.mozilla.org/fr/firefox/addon/mldonkeyfox-protocols-handl > **Pour l'installation aller voir [[firefox|Firefox]]** ===== Un système d'analyse anti-virus et d'alerte ===== Dernier raffinement, vous pouvez vous créer un script (shell, php, perl, ...) qui sera lancé au démarrage et à la récupération d'un fichier. Cela permet d'avertir l'utilisateur, de scanner avec un anti-virus le fichier récupéré, et même de le sortir de l'incoming, pour éviter les problèmes d'upload. Allez voir dans downloads.ini, jusqu'à la commande file_completed. Si il y en a que ça intéresse, je peux joindre la copie de mon script (home made 100% pas propre). FIXME qui peut joindre la copie du script? =====Voir aussi===== * [[http://mldonkey.sourceforge.net/|Site officiel]] ---- //Contributeur : [[utilisateurs:mathieu.vilaplana]], [[utilisateurs:Boris Le Hachoir]]//