@Magicalex bah avec plaisir, tant que ça me permet de savoir quels fichiers sont en seed et quels fichiers ne le sont pas sur mon dédié ça me va 🙂 Après ce qui est frustrant, c'est que rtchecker fonctionne toujours chez un pote qui utilise un fichier .scgi_local, donc j'aimerais bien comprendre pourquoi j'arrive pas à faire comprendre au script où regarder..

En tout cas oui, si tu peux m'expliquer comment utiliser ton script sans docker je suis chaud !

EDIT : ah et petite précision : je suis un gros noob, je ne parle pas php et je n'avais jamais entendu parler de composer avant ton post. Mais j'apprends vite :x

Je reviens vers toi avec une solution. J'ai pas tout le protocole pour que ça marche du premier coup.
Y a surement du code à changer un peu 😅

Ok ça roule. Mon installe debian9 + script d'ex rat est toute fraîche en plus, j'ai pas encore eu le temps de trop foutre la merde donc ça devrait pas bugguer de ce côté là !

    kokogakayui donc ton XMLRPC endpoint c'est http://localhost:80/USERNAME
    Je sais pas si il faut indiquer un mot de passe.

    En tout cas tu peux commencer par installer composer.
    https://mondedie.fr/d/7407
    Fait que la partie installer composer, rendre les paquets exécutable ça sera pas nécessaire.
    ⚠ vérifies avant il est peut-être déjà installé

    Ensuite télécharge le script php

    cd /tmp
    git clone https://github.com/Magicalex/rtorrent-cleaner.git
    cd rtorrent-cleaner/rootfs/rtorrent-cleaner
    composer install

    et pour le moment attend ce soir parce que tu peux pas l'utiliser comme ça.

    todo list pour moi :

    • il faut que j'ajoute une option pour changer le home du user
    • il faut que change l'option rpc-port

    ça parait compliqué à faire fonctionner, mais j'ai une idée quand le script sera rodé pour simplifier tout ça.
    Par contre il faudra les droits root dans un premier temps pour exécuter le script...

      Magicalex a renommé le titre en rtorrent-cleaner un script pour libérer de la place sur votre seedbox !.

      Magicalex Ok c'est fait ! J'attends la suite 🙂 Pour le XMLRPC endpoint, c'est sur le port 80 même si j'ai 127.0.0.1:5001 dans ma conf rtorrent ?

        kokogakayui non ça c'est le serveur scgi on va passer par nginx. J'arrive pas à me connecter directement en php sur le serveur scgi (si quelqu'un a une solution je veux bien au passage)

        @Magicalex j'aimerai bien tester aussi. Ma config : débian 7 et install via script de @ex_rat 😉
        PS : il faudrait que j'arrive à te MP pour un truc mais je ne sais pas trop où ?

          kris06800 envoie-moi un mail à magicalex at mondedie.fr je check tous les jours cette boite

          kokogakayui pas de soucis moi je vais faire des tests de mon côté, je vous tiens au courant ici

          Juste pour info, je vais créer une archive phar exécutable.
          Vous n'aurez plus qu'à exécuter l'archive, j'espère que ça va fonctionner 😅

          edit: du coup j'ai tout cassé 😅 je reviens vers vous avec une solution ++

          Juste pour tenir au courant

          J'essayes de faire une archive php (.phar) à la manière de composer pour rendre le script exécutable en un seul fichier. Mais pour l'instant mes tests ne fonctionnent pas. J'utilise https://github.com/humbug/box pour générer l'archive mais ça veut pas...

          Je continue mes investigations mais ça risque de traîner le temps que je trouve le problème.

            Bon j'avais un peu de temps cette après-midi, j'ai testé le script.
            Normalement il fonctionne pour tous les types d'installation rutorrent qui ont un point de montage xmlrpc.
            Je fais un petit tuto pour les personnes qui veulent bien tester.
            Le script ne risque pas de mettre la pagaille dans vos fichiers, il supprime rien sans vous demander avant 😅

            Installation de rtorrent-cleaner

            Bon pour commencer il faut php 7 au minimum pour qu'il fonctionne avec 2 extensions (php-bcmath et php-dom)
            Les commandes ci-dessous sont correctes pour debian 9
            Si vous avez déjà php d'installé, vous pouvez vérifier votre version avec cette commande php -v

            Installation de php 7

            apt-get install php php-bcmath php-dom

            ⚠ si php-dom ne fonctionne pas, essayez avec php-xml

            Installation de composer pour l'utilisateur root

            curl -s https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
            chmod +x /usr/local/bin/composer
            mkdir /root/.composer && composer install -d /root/.composer
            echo 'export PATH="$PATH:/root/.composer/vendor/bin"' >> /root/.bashrc
            source /root/.bashrc

            Installation de rtorrent-cleaner

            composer global require magicalex/rtorrent-cleaner

            Utilisation

            Il y a deux options importante obligatoire --url-xmlrpc et --home

            Un exemple cette commande vous fait un rapport sur les fichiers en trop (généralement mal supprimés par rutorrent, mais aussi les fichiers qui manquent sur les torrents alors qu'ils sont en seed.

            rtorrent-cleaner report --url-xmlrpc=https://username:password@domain.tld/URI --home=/home/username/torrents

            Cette commande rm supprime les fichiers en trop, elle vous demande confirmation pour chaque fichier
            Il existe une option --assume-yes pour supprimer les fichiers en trop sans confirmation.

            rtorrent-cleaner rm --url-xmlrpc=https://username:password@domain.tld/URI --home=/home/username/torrents

            ⚠ Le script peut mettre du temps en fonction de l'url que vous appelez, notamment les urls distantes.
            Il faut préférer utiliser http://localhost si votre serveur web vous le permet.
            Au pire, Il y a une barre de progression 😁
            Si vous avez beaucoup de torrents ça mettre du temps de toute manière 😅

            Performance

            Pour les personnes qui ont beaucoup de torrent le script peut mettre beaucoup de temps pour récupérer la liste des fichiers via rtorrent. Plusieurs heures apparement pour @kokogakayui
            Cela dépend des urls que vous appelez. Une url avec une auth basic + nom de domaine distant.
            Exemple https://user:pass@rutorrent.domain.tld/USER cette url pour les personnes qui ont beaucoup de torrent ça risque d'être interminable. Une solution existe, c'est de passer en local. Voici la marche à suivre.

            nano /etc/nginx/sites-enabled/cleaner.conf
            server {
                listen 127.0.0.1:8888;
                charset utf-8;
            
                location = /RPC {
                    include scgi_params;
                    scgi_pass 127.0.0.1:5000;
                }
            }

            ensuite redémarre nginx

            service nginx restart

            Par contre il faut bien indiquer le port scgi de votre user rtorrent. ici c'est le port 5000 scgi_pass 127.0.0.1:5000;
            Cela va créer un point de montage http://localhost:8888/RPC accessible que en local sur votre serveur.

            ensuite

            rtorrent-cleaner report --url-xmlrpc=http://localhost:8888/RPC --home=/home/username/torrents -v

            ça serait intéressant de voir la différence de temps. Ajoute l'option -v ça ajoute le temps écoulé sur la barre de progression.

            Pour moi l'install se passe à priori bien, mais je tombe sur un command not found quand je veux lancer rtorrent-cleaner... Il est censé s'installer où ?

              kokogakayui t'as installé php-bcmath?

              T'as fait quoi exactement?
              tu peux mettre ici le résultat de la commande echo $PATH

              Bon par contre ça me donne ça : The "--url-xmlrcp" option does not exist.
              EDIT : Bon alors pour le PATH, je pense qu'il y avait un souci dans la commande que tu donnes, parce que chez moi en suivant tes instructions ça s'est installé sous
              ~/.composer/vendor/bin
              et pas
              ~/.config/composer/vendor/bin

              Rien de bien méchant. Par contre ouais "The "--url-xmlrcp" option does not exist". J'ai essayé sans le = pour voir mais même résultat.

              Pour info j'ai testé avec plusieurs commandes :
              rtorrent-cleaner report --url-xmlrcp=https://koko:mdp@chezmoi.com/rutorrent --home=/home/username/torrents/music
              rtorrent-cleaner report --url-xmlrcp=https://koko:mdp@localhost:5001 --home=/home/username/torrents/music

              Mais aussi report --xmlrcp https://koko:mdp@localhost:5001 --home=/home/username/torrents/music
              Pour voir si ça venait pas du "="....