Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
deluge [Le 11/09/2022, 11:26] 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) |
deluge [Le 20/02/2023, 12:08] (Version actuelle) L'Africain MAJ |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Xenial p2p}} | + | {{tag>Jammy p2p}} |
---- | ---- | ||
Ligne 11: | Ligne 11: | ||
- | == Fonctionnalités de base == | + | Fonctionnalités de base : |
* Affichage dans une seule fenêtre des téléchargements simultanés | * Affichage dans une seule fenêtre des téléchargements simultanés | ||
* Gestion des priorités de téléchargement (par torrent, mais aussi pour chacun des fichiers compris dans un torrent) | * Gestion des priorités de téléchargement (par torrent, mais aussi pour chacun des fichiers compris dans un torrent) | ||
Ligne 19: | Ligne 19: | ||
* Supporte le µTorrent Peer Exchange | * Supporte le µTorrent Peer Exchange | ||
- | == Greffons intégrés == | + | Greffons intégrés : |
* Création de torrents | * Création de torrents | ||
* Déplacements de torrents (une fois le téléchargement entamé) | * Déplacements de torrents (une fois le téléchargement entamé) | ||
Ligne 28: | Ligne 28: | ||
* Support des flux RSS | * Support des flux RSS | ||
- | ===== Pré-requis ===== | ||
- | |||
- | * Disposer des [[:sudo|droits d'administration]]. | ||
- | * Disposer d'une connexion à Internet configurée et activée. | ||
=====Installation===== | =====Installation===== | ||
Ligne 55: | Ligne 51: | ||
Il est intéressant d'en profiter pour inclure les utilisateurs qui vont utiliser Deluge dans le groupe ''deluge'' afin qu'ils puissent facilement récupérer les fichiers téléchargés. En effet, les fichiers téléchargés seront la propriété de l'utilisateur ''deluge'' du groupe ''deluge'', donc initialement inaccessibles aux autres utilisateurs de votre machine. Exemple pour inclure l'utilisateur ''Toto'' au groupe ''deluge'' : | Il est intéressant d'en profiter pour inclure les utilisateurs qui vont utiliser Deluge dans le groupe ''deluge'' afin qu'ils puissent facilement récupérer les fichiers téléchargés. En effet, les fichiers téléchargés seront la propriété de l'utilisateur ''deluge'' du groupe ''deluge'', donc initialement inaccessibles aux autres utilisateurs de votre machine. Exemple pour inclure l'utilisateur ''Toto'' au groupe ''deluge'' : | ||
<code>sudo adduser Toto deluge</code> | <code>sudo adduser Toto deluge</code> | ||
- | |||
- | ====Avant Ubuntu 16.04==== | ||
- | Nous allons maintenant faire en sorte que deluged (le daemon deluge) et deluge-web (son interface graphique web) soient lancés automatiquement au démarrage de l'ordinateur. Pour cela nous allons créer le [[:services|service]] correspondant. | ||
- | |||
- | [[:tutoriel:comment_modifier_un_fichier|Créez le fichier]] **/etc/default/deluge-daemon** [[:sudo|avec les droits d'administration]]. | ||
- | Remplissez-le par le contenu suivant : | ||
- | <file bash /etc/default/deluge-daemon> | ||
- | # Configuration for /etc/init.d/deluge-daemon | ||
- | |||
- | # The init.d script will only run if this variable non-empty. | ||
- | DELUGED_USER="deluge" | ||
- | |||
- | # Should we run at startup? | ||
- | RUN_AT_STARTUP="YES" | ||
- | </file> | ||
- | |||
- | Créez un autre fichier du même nom dans **/etc/init.d** avec ce contenu: | ||
- | <file bash /etc/init.d/deluge-daemon> | ||
- | #!/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 | ||
- | # Modified: Sami Olmari | ||
- | |||
- | PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin | ||
- | DESC="Deluge Daemon" | ||
- | NAME1="deluged" | ||
- | NAME2="deluge-web" | ||
- | DAEMON1=/usr/bin/deluged | ||
- | DAEMON1_ARGS="-d -c /var/lib/deluge -l /var/log/deluged.log -L warning" | ||
- | DAEMON2=/usr/bin/deluge-web | ||
- | DAEMON2_ARGS="-p 9092 -c /var/lib/deluge -l /var/log/deluge-web.log -L warning" | ||
- | 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 "$RUN_AT_STARTUP" -o "$RUN_AT_STARTUP" != "YES" ] | ||
- | then | ||
- | log_warning_msg "Not starting $PKGNAME, edit /etc/default/$PKGNAME to start it." | ||
- | exit 0 | ||
- | fi | ||
- | |||
- | 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 | ||
- | |||
- | : | ||
- | </file> | ||
- | |||
- | Rendez le script exécutable : | ||
- | <code>sudo chmod a+x /etc/init.d/deluge-daemon</code> | ||
- | |||
- | Configurez le lancement au démarrage du système et lancez le service : | ||
- | <code>sudo update-rc.d deluge-daemon defaults | ||
- | sudo service deluge-daemon start</code> | ||
- | |||
- | === Installation automatisée === | ||
- | Ce script réalise l'installation et le démarrage tel que vu dans ce tutoriel: | ||
- | <file bash> | ||
- | sudo apt-get update | ||
- | sudo apt-get install deluged deluge-web | ||
- | sudo adduser --disabled-password --system --home /var/lib/deluge --gecos "SamRo Deluge server" --group deluge | ||
- | sudo wget https://doc.ubuntu-fr.org/_export/code/deluge?codeblock=2 --output-document=/etc/default/deluge-daemon | ||
- | sudo wget https://doc.ubuntu-fr.org/_export/code/deluge?codeblock=3 --output-document=/etc/init.d/deluge-daemon | ||
- | sudo chmod a+x /etc/init.d/deluge-daemon | ||
- | sudo update-rc.d deluge-daemon defaults | ||
- | sudo /var/lib/deluge | ||
- | sudo service deluge-daemon start | ||
- | </file> | ||
- | |||
- | ==== À partir de Ubuntu 16.04==== | ||
- | Comme [[:Xenial|Ubuntu 16.04]] utilise **systemd** en remplacement de [[:Init_d|Init.d]] ou [[:upstart]] pour la gestion des services, la configuration est légèrement différente. | ||
- | |||
- | === Suppressions des anciennes configurations === | ||
- | |||
- | Assurez vous qu'il n'y ait pas d'anciens fichiers de configuration [[:services|Init.d]] ou [[:upstart]] sur votre machine.\\ | ||
- | Pour init.d : | ||
- | <code>sudo /etc/init.d/deluge-daemon stop | ||
- | sudo rm /etc/init.d/deluge-daemon | ||
- | sudo update-rc.d deluge-daemon remove </code> | ||
- | |||
- | Pour upstart : | ||
- | <code>sudo stop deluged | ||
- | sudo stop deluge-web | ||
- | sudo rm /etc/init/deluge-web.conf | ||
- | sudo rm /etc/init/deluged.conf</code> | ||
- | === Création du service Deluge Daemon (deluged) === | + | ==== Création du service Deluge Daemon (deluged) ==== |
[[:tutoriel:comment_modifier_un_fichier|Créez le fichier]] **/etc/systemd/system/deluged.service** [[:sudo|avec les droits d'administration]] et remplissez-le comme ceci : | [[:tutoriel:comment_modifier_un_fichier|Créez le fichier]] **/etc/systemd/system/deluged.service** [[:sudo|avec les droits d'administration]] et remplissez-le comme ceci : | ||
Ligne 302: | Ligne 95: | ||
See system logs and 'systemctl status deluged.service' for details.</code></note> | See system logs and 'systemctl status deluged.service' for details.</code></note> | ||
- | === Création du service Deluge Web UI (deluge-web) === | + | ==== Création du service Deluge Web UI (deluge-web) ==== |
[[:tutoriel:comment_modifier_un_fichier|Créez le fichier]] **/etc/systemd/system/deluge-web.service** [[:sudo|avec les droits d'administration]] et remplissez-le comme ceci : | [[:tutoriel:comment_modifier_un_fichier|Créez le fichier]] **/etc/systemd/system/deluge-web.service** [[:sudo|avec les droits d'administration]] et remplissez-le comme ceci : | ||
<file txt /etc/systemd/system/deluge-web.service> | <file txt /etc/systemd/system/deluge-web.service> |