ATTENTION cet article comporte des inexactitudes, se reporter à la page Deluge mise à jour régulièrement
Lors de l’installation de sweetBox et en vu d’en faire un serveur de téléchargement je me suis mis en quête d’un client torrent et comme pour tous autre logiciel sous Linux il y en a pléthore.
Sous Windows j’utilisais µtorrent, ce dernier n’existe pas sous Linux (tout du moins au moment où j’ai cherché) et de plus il ne répond pas aux besoins spécifique d’une machine sans interface graphique.
Les besoins sont les suivants :
- Téléchargement automatique via la surveillance d’un répertoire (dès qu’un .torrent est ajouté é ce répertoire le téléchargement commence)
- Fonctionnement sans interface graphique
- Existence d’un interface d’administration Web
- Déplacements de torrents (une fois le téléchargement terminé)
- Blocage d’IP par import de listes noires
Après quelque recherche et hésitation (rtorrent, transmission) j’ai finalement choisi Deluge.
Installation
Téléchargement du dernier package sur le site de Deluge (lors de ma première installation il s’agissait du 0.9.02, actuellement j’en suis au 1.1.2 et sur le site il y a la 1.1.6).
Installation par dpkg :
dpkg -i deluge-torrent_1.1.2-1_i386.gutsy.deb
Et voila, on peut ensuite lancer le démon par un :
deluged -l /var/log/deluged.log
Et l’interface Web par :
deluge -u web
Qui est alors accessible a cette adresse :
et « deluge » comme mot de passe par défaut
Paramétrage
Installation en tant que service
Une fois cet installation faite, il peut être utile voir indispensable de démarrer Deluge en tant que service.
Créer le fichier /etc/init.d/deluge-daemon et copier ceci :
#!/bin/sh ### BEGIN INIT INFO # Provides: deluge-daemon # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Should-Start: $network # Should-Stop: $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Daemonized version of deluge and webui. # Description: Starts the deluge daemon with the user specified in # /etc/default/deluge-daemon. ### END INIT INFO # Author: Adolfo R. Brandes PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DESC="Deluge Daemon" NAME1="deluged" NAME2="deluge" DAEMON1=/usr/bin/deluged DAEMON1_ARGS="-l /var/log/deluged.log" DAEMON2=/usr/bin/deluge DAEMON2_ARGS="-u web" PIDFILE1=/var/run/$NAME1.pid PIDFILE2=/var/run/$NAME2.pid PKGNAME=deluge-daemon SCRIPTNAME=/etc/init.d/$PKGNAME # Exit if the package is not installed [ -x "$DAEMON1" -a -x "$DAEMON2" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$PKGNAME ] && . /etc/default/$PKGNAME # Load the VERBOSE setting and other rcS variables [ -f /etc/default/rcS ] && . /etc/default/rcS # Define LSB log_* functions. # Depend on lsb-base (>= 3.0-6) to ensure that this file is present. . /lib/lsb/init-functions if [ -z "$DELUGED_USER" ] then log_warning_msg "Not starting $PKGNAME, DELUGED_USER not set in /etc/default/$PKGNAME." exit 0 fi # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started start-stop-daemon --start --background --quiet --pidfile $PIDFILE1 --exec $DAEMON1 \ --chuid $DELUGED_USER --user $DELUGED_USER --test > /dev/null RETVAL1="$?" start-stop-daemon --start --background --quiet --pidfile $PIDFILE2 --exec $DAEMON2 \ --chuid $DELUGED_USER --user $DELUGED_USER --test > /dev/null RETVAL2="$?" [ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] || return 1 start-stop-daemon --start --background --quiet --pidfile $PIDFILE1 --make-pidfile --exec $DAEMON1 \ --chuid $DELUGED_USER --user $DELUGED_USER -- $DAEMON1_ARGS RETVAL1="$?" sleep 2 start-stop-daemon --start --background --quiet --pidfile $PIDFILE2 --make-pidfile --exec $DAEMON2 \ --chuid $DELUGED_USER --user $DELUGED_USER -- $DAEMON2_ARGS RETVAL2="$?" [ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] || return 2 } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --user $DELUGED_USER --pidfile $PIDFILE2 RETVAL2="$?" start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --user $DELUGED_USER --pidfile $PIDFILE1 RETVAL1="$?" [ "$RETVAL1" = "2" -o "$RETVAL2" = "2" ] && return 2 rm -f $PIDFILE1 $PIDFILE2 [ "$RETVAL1" = "0" -a "$RETVAL2" = "0" ] && return 0 || return 1 } case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME1" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME1" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; restart|force-reload) log_daemon_msg "Restarting $DESC" "$NAME1" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 exit 3 ;; esac :
Comme vous pouvez le voir le script n’est pas de moi….
Créer le fichier /etc/default/deluge-daemon et copier ceci :
# Configuration for /etc/init.d/deluge-daemon # The init.d script will only run if this variable non-empty. DELUGED_USER="mon_user" # Should we run at startup? RUN_AT_STARTUP="YES"
Installer ensuite le service :
sudo update-rc.d deluge-daemon defaults 99
Et le démarrer :
sudo /etc/init.d/deluge-daemon start
Autres paramétrages
Dans l’interface web :
- Network / Ports : changer le port par défaut et mettre le même port dans « from » et « to » (port à ouvrir dans votre routeur, mais c’est un autre sujet)
- Bandwidth / Global : voila qui est délicat à régler et qui peut avoir de grandes conséquences sur la vitesse de download. J’avais il y a quelques temps trouvé un post expliquant comment régler ces paramètres mais je n’arrive plus à remettre la main dessus. Voici mes réglages (connexion free 2 Mo)
- Maximum connections : 375
- Maximum upload speed : 30
- Maximum upload slot : 4
- Deluge / Download : à vous de voir, voici mes réglages
- Store all downoads in : /home/mon_user/downloads
- Save .torrent files to : /home/mon_user/downloads
- Auto Add folder : /home/mon_user/downloads/torrentfiles
- Auto Add enabled : coché
- Deluge / Queue : idem Bandwidth / Global, délicat..
- Total active torrents: 8
- Total active downloading: 3
- Total active seeding: 3
- Share ratio limit: 2.0
- Seed time ratio limit: 7.0
- Seed time limit: 100.
On notera le paramétrage indiquant à Delue le répertoire a scanner, pour l’auto-ajout de téléchargement.
Et voila, on pourra aussi
- Changer le mot de passe
- Changer le port
- Activer et paramétrer le plugin Blocklist
Edit : Pour plus d’information Installation Deluge, Configuration Deluge (partie 1) et Configuration Deluge (partie 2)