StillAlive Ok super, j'ai restauré ton message. Ca va servir à d'autre.

Si tu repères des erreurs merci de me le faire remonter 😉

un mois plus tard

Magicalex
Wahou, trop rapide, je n'avais pas vu ta réponse, merci milles fois d'avoir fait cette évolution et rapidement en plus.

    Aedonus J'ai fais d'autre amélioration, il y a eu 6 versions depuis.

    Beaucoup de nettoyage de code, amélioration des performances et de simplification à l'utilisation.
    Si tu veux faire un retour d'expérience n'hésite pas à le faire connaitre ici.

      Magicalex
      Merci c'est un gain de temps énorme !
      Ma nouvelle commande préférée :

      rtorrent-cleaner rm --assume-yes -d Partage -l /var/log/rtorrent-cleaner.log 127.0.0.1:5001

      Encore 92Go de gagné ;-)

      5 jours plus tard

      Salut à tous,

      Je vais surement sortir bientôt la version 0.9.7 aucune amélioration significative, juste une mise à jour des components symfony.

      Sinon j'ai fais une petite expérience, pour les utilisateurs de docker il est possible d'utiliser rtorrent-cleaner sans mon image docker mondedie/rtorrent-cleaner (dispo sur le dockerhub).
      Pour cela il faut configurer un peu son image docker qui contient rtorrent. Je vais vous montrer deux exemples ici avec socket et sans socket.

      Premièrement il faut créer un lien symbolique avec votre dossier qui contient les torrents. Prenons l'exemple de l'image linuxserver/rutorrent

      ln -sf /home/username/downloads /downloads

      Ensuite il faut installer rtorrent-cleaner. Exemple sur une debian 10

      apt install php-cli php-xmlrpc php-mbstring
      wget https://github.com/Magicalex/rtorrent-cleaner/raw/master/rtorrent-cleaner-php7.2.phar
      mv -f rtorrent-cleaner-php7.phar /usr/local/bin/rtorrent-cleaner
      chmod +x /usr/local/bin/rtorrent-cleaner

      Pour les images docker qui utilise un socket avec rtorrent

      Vous devez ajouter un volume avant de démarrer votre conteneur.
      Exemple l'image linuxserver/rutorrent

      --volume /run/php:/run/php

      Pour les images docker qui utilise un hostname avec rtorrent

      Vous devez modifier votre fichier .rtorrent.rc

      network.scgi.open_port = 0.0.0.0:5000

      Pour utiliser rtorrent-cleaner

      CONTAINER_IP="$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name)"
      rtorrent-cleaner report "${CONTAINER_IP}:5000"

      C'est important de mettre l'ip 0.0.0.0 pour que rtorrent soit accessible à l'extérieur de votre container.
      Il sera accessible que depuis votre machine.
      Si vous faites un nmap "${CONTAINER_IP}" vous pourrez voir que votre conteneur écoute sur le port 8080 pour le serveur web (nginx) dans la plupart des cas et aussi rtorrent sur le port 5000 dans la plupart des cas.
      En revanche si votre host est configuré sur l'ip 127.0.0.1 ou localhost nmap ne va rien trouver sur le port 5000.

      C'était la petite astuce du jour, l'avantage de cette technique c'est que rtorrent-cleaner s’exécute plus vite puisse qu'on n'a plus besoin de créer un conteneur avec l'image magicalex/rtorrent-cleaner.

      Aerya Alors je sais pas si c'est une bonne idée. De pus il est facile d'utiliser rtorrent-cleaner quand votre rtorrent est sous docker avec mon image docker magicalex/rtorrent-cleaner.

      Ou alors juste installer rtorrent-cleaner mais sans cron?
      docker exec -it rutorrent rtorrent-cleaner report

      Au passage j'ai fais des grosses modifications sur l'image mondedie/rutorrent voir ici

      En effet, j'ai déjà un CRON sur mes machines avec ton Docker, ça peut peut-être alourdir inutilement l'image de ruTorrent.

      🎉 La version 0.9.7 est sortie 🎉

      Cette nouvelle version par rapport à la 0.9.6 améliore quelques points

      • Mise à jour du Dockerfile
      • Passage à symfony 5
      • Modification mineur de l'archive Phar rtorrent-cleaner.phar
      • Correction d'erreur dans le readme
      • Fermeture de la dernière issue github sur des retours incorrect de la commande report

      Il y a toujours 2 archives PHAR

      • rtorrent-cleaner5.phar symfony 3 (php 5.5.9 et plus)
      • rtorrent-cleaner7.2.phar symfony 5 (php 7.2.5 et plus)

      Version mineur, très légère modification. C'est plutôt bon signe, ça veut dire que l'outil devient stable.

      Merci pour le taff 🙂

      Quand ça marche du premier coup, ça fait plaisir !! Merci pour ton travail @Magicalex et la qualité de tes explications !

      7 jours plus tard

      Petite demo en vidéo que j'avais déjà fait pour la version 0.4.1

      2 mois plus tard

      ça intéresse du monde une commande pour supprimer des torrents en fonction de leurs âges et de leurs ratio?

      Dans l'esprit oui, mais c'est déjà gérable par rutorrent non ? Pour ma part j'ai mis des règles de ratio, mais si tu proposes un outil qui fait la même chose, je serai bien partant pour le tester 🙂

      2 mois plus tard

      Alandil Je peux le configurer en cron ? De quelle manière ?

      Comme une tâche cron standard. Tu peux installer rtorrent-cleaner dans /usr/local/bin

      Alandil J'ai tenté de faire fonctionner mais il me dit que xmlrpc est absent...

      L'erreur semble claire non? il faut installer l'extension php xmlrpc. Tu n'as pas du bien chercher un exemple ici https://github.com/Magicalex/rtorrent-cleaner/issues/4

      🎉 La version 0.9.8 est sortie 🎉

      Cette nouvelle version par rapport à la 0.9.7 améliore quelques points.
      ça reste une version mineur qui corrige un bug.

      • Mise à jour du Dockerfile. Je compile directement rtorrent-cleaner avec la technique du multi stage.
      • bugfix: rtorrent-cleaner fonctionne maintenant quand il y a aucun torrent dans rtorrent.
      • Mise en place de github action pour build l'image docker avec un cron tous les mois.
      • Mise à jour des libs symfony.
      un an plus tard

      Bonsoir,

      Est-ce que c'est possible de faire fonctionner ce script quand on utilise des symlinks ? J'ai une erreur qui je pense vient de la.
      SplFileInfo::getSize(): stat failed for ***

      3 mois plus tard

      Bonsoir,

      J'utilise l'image docker rutorrent de mondedié ; j'ai voulu tester le rtorrent-cleaner version docker, mais sans succès:

      docker run -it --rm \
        --link rutorrentjl:rtorrent \
        --network compose_compose \
        -e PHP_MEMORY_LIMIT=128M \
        -e PHP_TIMEZONE=Europe/Paris \
        -v /home/jeanluc/compose/rutorrent/rutorrentjl/data/downloads:/data/downloads \
        -v /run/rtorrent:/run/rtorrent \
        magicalex/rtorrent-cleaner:latest report /run/rtorrent/rtorrent.sock
      ┌───────────────────────────┐
      │ rtorrent-cleaner - report │
      └───────────────────────────┘
      
      In Rtorrent.php line 21:
      
        Unable to connect to rtorrent. No such file or directory (code: 2)
      
      
      report [-f|--exclude-files EXCLUDE-FILES] [-d|--exclude-dirs EXCLUDE-DIRS] [-l|--log [LOG]] [--] <scgi>
      

      Mon container "rutorrentjl" tourne pourtant:

      CONTAINER ID   IMAGE                          COMMAND                  CREATED        STATUS        PORTS                                      NAMES
      3e2db668cbd8   mondedie/rutorrent:latest      "/usr/local/bin/star…"   11 hours ago   Up 11 hours   8080/tcp, 0.0.0.0:45752->45752/tcp         rutorrentjl
      

      --link rutorrentjl:rtorrent ==> rutorrentjl est bien le nom du container
      --network compose_compose ==> le nom du réseau sous lequel tourne aussi rutorrentjl
      -v /home/jeanluc/compose/rutorrent/rutorrentjl/data/downloads:/data/downloads ==> mon path local vers le path de down du container
      -v /run/rtorrent:/run/rtorrent ==> path local vers path container contenant rtorrent.sock

      J'ai eu beau relire le github, je ne comprends pas.

      Merci pour vos lumières.