Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
rtorrent [Le 14/11/2009, 00:48]
213.95.41.13 Supression des occurence GUI, recréé au dessus
rtorrent [Le 11/09/2022, 11:36] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>Feisty Gutsy réseau p2p bittorrent}}+{{tag>Xenial ​réseau p2p bittorrent}}
  
 ---- ----
Ligne 7: Ligne 7:
 **rTorrent** est un client BitTorrent très léger fonctionnant en ligne de commande. Il n'​utilise que très peu de ressources (pratique si vous disposez d'une vieille machine). **rTorrent** est un client BitTorrent très léger fonctionnant en ligne de commande. Il n'​utilise que très peu de ressources (pratique si vous disposez d'une vieille machine).
  
-La seule contrainte de cet outil est qu'on ne peut pas fermer le terminal dans lequel il est lancé sans le stopper. Pour contourner ce problème, on utilisera le programme [[:Screen]] ou dtach. +{{https://​i.imgur.com/​6V6pB.png?​500}} 
-Il est également possible d'​utiliser [[alltray]] afin d'​envoyer l'​icône du terminal dans la zone de notification.+ 
 +La seule contrainte de cet outil est qu'on ne peut pas fermer le terminal dans lequel il est lancé sans le stopper. Pour contourner ce problème, on utilisera le programme [[:Screen]], tmux ou dtach. 
 +Il est également possible d'​utiliser [[:alltray]] afin d'​envoyer l'​icône du terminal dans la zone de notification.
  
 ===== Pré-requis ===== ===== Pré-requis =====
- +  
-Vous devez activer les [[depots#​universe_et_multiverse|dépôts Multiverse]]. +  * Disposer des [[:sudo|droits d'​administration]]. 
 +  * Disposer d'une connexion à Internet configurée et activée.
 ===== Installation ===== ===== Installation =====
  
-[[tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt://​rtorrent|rtorrent]]** et **[[apt://screen|screen]]** (ou **[[apt://dtach|dtach]]**).+[[tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>rtorrent]]** et **[[apt>screen]]** (ou **[[apt>dtach]]**).
  
 ===== Configuration ===== ===== Configuration =====
-Tout d'​abord,​ commencez par créer le fichier de configuration. ​ 
  
-Copier le fichier **/​usr/​share/​doc/​rtorrent/​examples/​rtorrent.rc** dans votre dossier personnel.+Tout d'​abord,​ commencez par créer le fichier de configuration. 
 + 
 +Copier le fichier **/​usr/​share/​doc/​rtorrent/​examples/​rtorrent.rc** dans votre **dossier personnel**.
  
 <​code>​cp /​usr/​share/​doc/​rtorrent/​examples/​rtorrent.rc ~/​.rtorrent.rc</​code>​ <​code>​cp /​usr/​share/​doc/​rtorrent/​examples/​rtorrent.rc ~/​.rtorrent.rc</​code>​
Ligne 27: Ligne 30:
 Puis [[:​tutoriel:​comment_editer_un_fichier|Éditez le fichier]]. Puis [[:​tutoriel:​comment_editer_un_fichier|Éditez le fichier]].
  
-Voici une configuration basique de ce fichier. Pour plus de détails, consultez la [[:page de manuel]] de rTorrent. +Voici une configuration basique de ce fichier. Pour plus de détails, consultez la [[:man|page de manuel]] de rTorrent.
  
-<​file>​+<​file ​rtorrent.rc>
 # Fichier de configuration de rtorrent. # Fichier de configuration de rtorrent.
 # Par défaut, c'est le fichier ~/​.rtorrent.rc # Par défaut, c'est le fichier ~/​.rtorrent.rc
  
-# Limites des taux de telechargement ​en reception ​et en envoi. "​0"​ équivaut à aucune limite.  +# Limites des taux de téléchargement ​en réception ​et en envoi. "​0"​ équivaut à aucune limite. 
-download_rate = 500 +#download_rate = 500 
-upload_rate = 150+#upload_rate = 150
  
-# Répertoire qui contient les fichiers ​qui pendant le téléchargement.+# Répertoire qui contient les fichiers ​téléchargés.
 directory = ~/​torrent/​data directory = ~/​torrent/​data
  
 # Répertoire où rtorrent stocke l'​état de téléchargement des torrents. # Répertoire où rtorrent stocke l'​état de téléchargement des torrents.
 session = ~/​torrent/​session session = ~/​torrent/​session
 +# Utilisez un chemin //relatif// si vous êtes susceptible de lancer plusieurs
 +# instances de rtorrent ! Commentez la ligne précédente et décommentez celle-ci :
 +#session = ./session
  
 # Ports utilisables par rtorrent (utilisez deux fois la même valeur pour utiliser tout le temps ce port) # Ports utilisables par rtorrent (utilisez deux fois la même valeur pour utiliser tout le temps ce port)
Ligne 51: Ligne 56:
 check_hash = yes check_hash = yes
  
-# Ce repertoire ​contient les fichiers .torrent. ​+# Ce répertoire ​contient les fichiers .torrent.
 # Dès qu'un nouveau .torrent y est ajouté, le téléchargement commence. # Dès qu'un nouveau .torrent y est ajouté, le téléchargement commence.
 schedule = watch_directory,​15,​15,​load_start=~/​torrent/​torrent_active/​*.torrent schedule = watch_directory,​15,​15,​load_start=~/​torrent/​torrent_active/​*.torrent
  
 # Dès que le téléchargement est achevé, le fichier est déplacé dans le # Dès que le téléchargement est achevé, le fichier est déplacé dans le
-# répertoire ~/​torrent_finis +# répertoire ~/​torrent_finis. 
-on_finished = move_complete,"​execute=mv,​-u,​$d.get_base_path=,​~/​torrent_finis/;​d.set_directory=~/​torrent_finis/"​+# Pour les versions récentes de rtorrent (0.8.4 et supérieures),​ utilisez la ligne suivante : 
 +#​system.method.set_key = event.download.finished,​move_complete,"​execute=mv,​-u,​$d.get_base_path=,​~/​torrent_finis/;​d.set_directory=~/​torrent_finis/"​ 
 +# Pour les versions 0.7.7 de 0.8.3, utilisez la ligne suivante : 
 +#on_finished = move_complete,"​execute=mv,​-u,​$d.get_base_path=,​~/​torrent_finis/;​d.set_directory=~/​torrent_finis/"​
  
 # Activation de DHT pour les torrents sans trackers. # Activation de DHT pour les torrents sans trackers.
-# Il est obligatoire de définir un répertoire de session+# Il est obligatoire de définir un répertoire de session ​(voir plus haut).
 dht = auto dht = auto
  
-# Port UDP pour l'​utilisation de DHT. +# Port UDP pour l'​utilisation de DHT.
 dht_port = 6880 dht_port = 6880
  
 # Forcer l'​utilisation de transactions chiffrées, pour ne recevoir et n'​envoyer que des données protégées. # Forcer l'​utilisation de transactions chiffrées, pour ne recevoir et n'​envoyer que des données protégées.
-# En revanche, les identités du l'​expéditeur et du destinaire ​restent ​visisles.+# En revanche, les identités du l'​expéditeur et du destinataire ​restent ​visibles.
 encryption = allow_incoming,​require,​require_rc4 encryption = allow_incoming,​require,​require_rc4
 </​file>​ </​file>​
- +<note tip>Il faut penser à ouvrir les ports utilisés par rtorrent dans [[:​iptables]]. Les ports définis dans port_range & dht_port.</​note>​
- +
  
 ===== Utilisation ===== ===== Utilisation =====
-Pour lancer rtorrent, tapez dans une console ​:+Pour lancer rtorrent, tapez dans un [[:​terminal]] :
  
   rtorrent   rtorrent
Ligne 110: Ligne 116:
 Voici l'​exemple d'un torrent : Voici l'​exemple d'un torrent :
 <​code>​ <​code>​
-*  ubuntu-5.10-install-i386.iso+*  ubuntu-11.04-install-i386.iso
 * Torrent: ​ 161.6 /  617.2 MB Rate:   1.1 /  41.3 KB Uploaded: ​    5.1 MB [24%]  0d  3:09 [TI R: 0.03] * Torrent: ​ 161.6 /  617.2 MB Rate:   1.1 /  41.3 KB Uploaded: ​    5.1 MB [24%]  0d  3:09 [TI R: 0.03]
 * *
Ligne 117: Ligne 123:
 Voici sa signification : Voici sa signification :
  
-  ubuntu-5.10-install-i386.iso ​+  ubuntu-11.04-install-i386.iso ​
 Nom du fichier téléchargé. Nom du fichier téléchargé.
  
Ligne 131: Ligne 137:
  
   [24%]   [24%]
-Pourcentage du torrent déjà téléchargé. ​+Pourcentage du torrent déjà téléchargé.
  
   0d 3:09   0d 3:09
Ligne 138: Ligne 144:
  
   T   T
-<​del>​ +Indique que le torrent a été chargé à l'aide d'un fichier *.torrent stocké localement ​(le flag n'​est ​pas présent lorsque ​le fichier torrent est chargé par le biais d'une URL)
-Present if torrent ​is tied to file, blank otherwise. +
-</​del>​ ((Je ne sais pas à quoi ça sert, ni ce que ça signifie. Si vous le savez, merci de compléter. ))+
  
   I   I
Ligne 147: Ligne 151:
   R: 0.03   R: 0.03
 Indique le pourcentage de partage (//share ratio//) : c'est le nombre de données envoyées par rapport au nombre de données reçues. Ici, vous avez jusqu'​ici envoyés 5.1 Mo et vous avez reçu 161.6 Mo, vous avez donc partagé 3 % du torrent. Indique le pourcentage de partage (//share ratio//) : c'est le nombre de données envoyées par rapport au nombre de données reçues. Ici, vous avez jusqu'​ici envoyés 5.1 Mo et vous avez reçu 161.6 Mo, vous avez donc partagé 3 % du torrent.
- 
 ===== rtorrent en daemon...===== ===== rtorrent en daemon...=====
  
Ligne 154: Ligne 157:
 Voici un petit script qui permet de lancer rtorrent au démarrage de la distribution tout en se laissant la possibilité d'​accéder à l'​interface console. Voici un petit script qui permet de lancer rtorrent au démarrage de la distribution tout en se laissant la possibilité d'​accéder à l'​interface console.
  
-Vous devez tout d'​abord avoir [[apt://​dtach|dtach]]. 
  
-Ensuite dans [[:​tutoriel:​comment_editer_un_fichier|/​etc/​init.d/​rtorrent-daemon.sh]] on écrit : +Ensuite dans [[:​tutoriel:​comment_editer_un_fichier|/​etc/​init.d/​rtorrentd]] on écrit : 
-<code>#​!/​bin/​sh -e +<file bash>#​!/​bin/​sh -e 
-# Démarrer/​arrêter rtorrent sous forme de daemon. +# 
- +### BEGIN INIT INFO 
-NAME=rtorrent-daemon.sh+# Provides: rtorrentd 
 +# Required-Start:​ $network $syslog 
 +# Required-Stop:​ $network 
 +# Default-Start:​ 2 3 5 
 +# Default-Stop:​ 0 1 6 
 +# Description: ​Démarrer/​arrêter rtorrent sous forme de daemon. 
 +### END INIT INFO 
 +user= 
 +NAME=rtorrentd
 SCRIPTNAME=/​etc/​init.d/​$NAME SCRIPTNAME=/​etc/​init.d/​$NAME
 PATH=/​usr/​local/​sbin:/​usr/​local/​bin:/​usr/​sbin:/​usr/​bin:/​sbin:/​bin PATH=/​usr/​local/​sbin:/​usr/​local/​bin:/​usr/​sbin:/​usr/​bin:/​sbin:/​bin
 +# path du fichier temporaire
 +TMP=/​tmp/​rtorrent.dtach
 +# user qui lance le torrent
 +
 +# chemin vers fichier conf
 +CONF=/​home/​${user}/​.rtorrent.rc
 +
 +start() {
 +        echo -n $"​Starting $NAME: "
 +        su -l ${user} -c "dtach -n $TMP rtorrent -n -o import=$CONF"​
 +        chmod 666 /​tmp/​rtorrent.dtach
 +        echo "​started"  ​
 +}
 +
 +stop() {
 +        echo -n $"​Stopping $NAME: "
 +        killall -r "​rtorrent"​
 +        echo "​stopped"​
 +}
 +
 +restart() {
 +
 +        if [ "$(ps aux | grep -e '​rtorrent'​ -c)" != 0  ]; then
 +        {
 +                stop
 +                sleep 5
 +        }
 +        fi
 +        start
 +}
 +
  
 case $1 in case $1 in
         start)         start)
-                echo -n "​Démarrage de rtorrent... " +               start
-                dtach -n /​tmp/​rtorrent.dtach rtorrent -n -o import=/​CHEMIN/​VERS/​VOTRE/​FICHIER.rc +
-                chmod 666 /​tmp/​rtorrent.dtach +
-                echo "​Démarré."​+
         ;;         ;;
         stop)         stop)
-                ​echo -n "​Arrêt de rtorrent... " +                ​stop 
-                ​killall rtorrent +        ;; 
-                ​echo "​Arrêté."​+        restart) 
 +                ​restart
         ;;         ;;
         *)         *)
-                echo "​Usage: ​$SCRIPTNAME ​{start|stop}"​ >&2+                echo "​Usage: ​ {start|stop|restart}" >&2
                 exit 2                 exit 2
         ;;         ;;
 esac esac
-</​code>​ 
-<note tip>​N'​oubliez pas de changer "/​CHEMIN/​VERS/​VOTRE/​FICHIER.rc"​. La plupart du temps il se trouve ici : /​home/​USER/​.rtorrent.rc</​note>​ 
  
-Pensez à rendre votre script exécutable : +</​file>​ 
-<​code>​sudo chmod +x /​etc/​init.d/​rtorrent-daemon.sh</​code>​+<note tip>​N'​oubliez pas de renseigner compléter "​user=" ​ par votre nom d'​utilisateur.</​note>​ 
 + 
 +Pensez à rendre votre script exécutable :​ 
 +<​code>​sudo chmod +x /​etc/​init.d/​rtorrentd</​code>​
  
 On termine avec la commande suivante pour indiquer que ce script doit s'​exécuter au démarrage : On termine avec la commande suivante pour indiquer que ce script doit s'​exécuter au démarrage :
-<​code>​sudo update-rc.d ​rtorrent-daemon.sh ​defaults 99</​code>​+<​code>​sudo update-rc.d ​​rtorrentd ​defaults 99</​code>​
  
 Maintenant, à chaque démarrage du système, rtorrent se lancera automatiquement. Maintenant, à chaque démarrage du système, rtorrent se lancera automatiquement.
Ligne 197: Ligne 237:
 <note tip>Vous pouvez créer un [[:alias]] pour exécuter plus facilement la commande précédente.</​note>​ <note tip>Vous pouvez créer un [[:alias]] pour exécuter plus facilement la commande précédente.</​note>​
  
-Pour détacher ensuite l'​interface console il suffit de taper CTRL + \. (Sur mac avec clavier suisse, le backslash se fait avec Maj + Alt + 7, et ça ne fonctionne pas avec l'​interface console. Un Ctrl + $ fonctionne correctement pour détacher l'​interface)+Pour détacher ensuite l'​interface console il suffit de 
 +  * en qwerty: ​taper CTRL + \ 
 +  * en azerty: taper CTRL + MAJ + 4 
 +  * mac avec clavier suisse, le backslash se fait avec Maj + Alt + 7 
 +  * Ctrl + $
  
-===... avec screen === 
-Installez [[apt://​screen|screen]] qui est un outil plus répandu que dtach, il n'est pas aussi léger mais offre plus de fonctionnalités. 
-Ensuite dans [[:​tutoriel:​comment_editer_un_fichier|/​etc/​init.d/​rtorrent-daemon.sh]] on écrit : 
-<​code>#​!/​bin/​sh -e 
-# Démarrer/​arrêter rtorrent sous forme de daemon. 
  
-NAME=rtorrent-daemon.sh 
-SCRIPTNAME=/​etc/​init.d/​$NAME 
-PATH=/​usr/​local/​sbin:/​usr/​local/​bin:/​usr/​sbin:/​usr/​bin:/​sbin:/​bin 
  
-case $1 in 
-        start) 
-                echo -n "​Démarrage de rtorrent... " 
-                # (ne marchera que pour l'​utilisateur USER) 
-                su -l USER -c "​screen -fn -dmS rtd nice -19 rtorrent"​ 
-                echo "​Démarré."​ 
  
-        ;; 
-        stop) 
-                echo -n "​Arrêt de rtorrent... " 
-                killall rtorrent 
-                echo "​Arrêté."​ 
-        ;; 
-        *) 
-                echo "​Usage:​ $SCRIPTNAME {start|stop}"​ >&2 
-                exit 2 
-        ;; 
-esac 
-</​code>​ 
-<note tip>​N'​oubliez pas de changer "​USER"​ par votre nom d'​utilisateur.</​note>​ 
-Pensez à rendre votre script exécutable:​ 
-<​code>​sudo chmod +x /​etc/​init.d/​rtorrent-daemon.sh</​code>​ 
  
-On termine ​avec la commande suivante pour indiquer ​que ce script doit s'exécuter au démarrage : +===…avec screen === 
-<​code>​sudo update-rc.d rtorrent-daemon.sh defaults 99</​code>​ +Screen est un outil plus répandu ​que dtach, il n'est pas aussi léger mais offre plus de fonctionnalités
- +Dans [[:​tutoriel:​comment_editer_un_fichier|/​etc/​init.d/​rtorrent-daemon]] on écrit 
-Maintenant, à chaque démarrage du système, rtorrent se lancera automatiquement. +<file bash>#​!/​bin/​sh -e
- +
-Pour pouvoir accéder à l'​interface console on utilise la commande: +
-<​code>​stty stop undef; stty start undef; screen -r rtd</​code>​ +
- +
-<note tip>Vous pouvez vous créer un [[:​tutoriel:​script_shell|script]] ou un [[:alias]] pour exécuter plus facilement la commande précédente.</​note>​ +
- +
-Pour détacher ensuite l'​interface console il suffit de taper Ctrl + a puis d . +
- +
- +
-Pour ceux qui préfère restart à start et stop : +
- +
-<code> +
-#!/bin/sh -e+
 # Start/Stop rtorrent sous forme de daemon. # Start/Stop rtorrent sous forme de daemon.
- +user= 
-NAME=rtorrentd+NAME=rtorrent-daemon
 SCRIPTNAME=/​etc/​init.d/​$NAME SCRIPTNAME=/​etc/​init.d/​$NAME
 PATH=/​usr/​local/​sbin:/​usr/​local/​bin:/​usr/​sbin:/​usr/​bin:/​sbin:/​bin PATH=/​usr/​local/​sbin:/​usr/​local/​bin:/​usr/​sbin:/​usr/​bin:/​sbin:/​bin
Ligne 258: Ligne 260:
         start)         start)
                 echo "​Starting rtorrent... "                 echo "​Starting rtorrent... "
-                su -l root -c "​screen -fn -dmS rtd nice -19 rtorrent"​+                su -l ${user} ​-c "​screen -fn -dmS rtd nice -19 rtorrent"​
                 echo "​Terminated"​                 echo "​Terminated"​
         ;;         ;;
Ligne 281: Ligne 283:
                         killall -r "​^.*rtorrent$"​                         killall -r "​^.*rtorrent$"​
                         echo "​Starting rtorrent... "                         echo "​Starting rtorrent... "
-                        su -l root -c "​screen -fn -dmS rtd nice -19 rtorrent"​+                        su -l ${user} ​-c "​screen -fn -dmS rtd nice -19 rtorrent"​
                         echo "​Terminated"​                         echo "​Terminated"​
                 }                 }
Ligne 288: Ligne 290:
                         echo "​rtorrent not yet started !"                         echo "​rtorrent not yet started !"
                         echo "​Starting rtorrent... "                         echo "​Starting rtorrent... "
-                        su -l root -c "​screen -fn -dmS rtd nice -19 rtorrent"​+                        su -l ${user} ​-c "​screen -fn -dmS rtd nice -19 rtorrent"​
                         echo "​Terminated"​                         echo "​Terminated"​
                 }                 }
Ligne 298: Ligne 300:
         ;;         ;;
 esac esac
-</​code>​+</​file>​ 
 +<note tip>​N'​oubliez pas de compléter "​user="​ par votre nom d'​utilisateur.</​note>​ 
 +Pensez à rendre votre script exécutable:​ 
 +<​code>​sudo chmod +x /​etc/​init.d/​rtorrent-daemon</​code>​
  
-Sans vouloir critiquer, ​ce code est plus propre car il ne kill pas le daemon ​en même temps que les processus ​de rtorrent+On termine avec la commande suivante pour indiquer que ce script doit s'​exécuter au démarrage : 
-Ne pas oublier ​de remplacer root par le nom d'utilisateur.+<code>​sudo ​update-rc.d ​rtorrent-daemon ​defaults 99</​code>​ 
 + 
 +Maintenant, à chaque démarrage du système, rtorrent se lancera automatiquement. 
 + 
 +Pour pouvoir accéder à l'​interface console on utilise la commande: 
 +<​code>​stty stop undef; stty start undef; screen -r rtd</​code>​ 
 + 
 +<note tip>Vous pouvez vous créer un [[:​tutoriel:​script_shell|script]] ou un [[:alias]] pour exécuter ​plus facilement la commande précédente.</​note>​ 
 + 
 +Pour détacher ensuite l'​interface console ​il suffit de taper Ctrl + a puis d . 
 + 
 +===…avec crontab === 
 + 
 +Dans la crontab de l'​utilisateur ​en lançant dtach. 
 +L'​utilisateur torrent lancera le dtach à chaque démarrage ​de la machine
 +C'est simple, efficace, mais un peu brutal. 
 + 
 +<​code>​sudo crontab -e -u torrent</​code>​ 
 + 
 +On rajoute cette ligne 
 + 
 +# Start rtorrent in a detached session 
 +@reboot TERM=xterm dtach -n ~/​torrents/​rtorrent rtorrent 
 +===== Interfaces graphiques ===== 
 +Ce qui fait toute la puissance ​de rTorrent est son API : xmlrpc. Elle permet a un logiciel client de se connecter à rTorrent et à fournir une interface en se basant sur le moteur du logiciel. Cette flexibilité,​ obtenu à un coût très raisonnable (installation du paquet rtorrent), permet ​d'utiliser rTorrent de multiples façons. 
 +Il peut être nécessaire d'​installer pour ces clients mod_scgi : 
 +[[apt>​libapache2-mod-scgi]] (Disponible uniquement sur [[bionic|Ubuntu 18.04]] ((https://​packages.ubuntu.com/​search?​suite=default&​section=all&​arch=any&​searchon=names&​keywords=libapache2-mod-scgi))) 
 + 
 + 
 + 
 + 
 +==== Interfaces "​Web"​ ==== 
 +  * [[rutorrent]] est une interface web en php. Elle est basée sur l'​apparence (très agréable au demeurant) de uTorrent, le logiciel windows. 
 + 
 +  * [[https://​github.com/​Flood-UI/​flood|flood]] est une interface moderne écrite en Node.js spécifiquement pour rTorrent, minimaliste et très fiable.
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * [[http://libtorrent.rakshasa.no/|Site officiel de rTorrent]] (en)+  * [[http://​rakshasa.github.io/​rtorrent/|Site officiel de rTorrent]] (en) 
 ---- ----
  
-//​Contributeurs : [[utilisateurs:​yoyomoony|Yoann/​Yoyo/​Yoyomoony]], [[utilisateurs:​Samaga]],​ Geek Spirit.//+//​Contributeurs : [[utilisateurs:​Yoann]],​ [[utilisateurs:​Samaga]], [[utilisateurs:​Flayor]], Geek Spirit, Simtris.//
  • rtorrent.1258156110.txt.gz
  • Dernière modification: Le 14/11/2009, 00:48
  • par 213.95.41.13