kokogakayui Du coup ouais le problème vient de la gestion des sous-dossers apparemment.

Ah ouais c'est géré par quoi ce truc?

    Tiens mon rtorrent.rc, mais je doute que ça vienne de là, tout tourne impeccable.

    network.scgi.open_port = 127.0.0.1:5001
    encoding.add = UTF-8
    network.port_range.set = 45000-65000
    network.port_random.set = no
    pieces.hash.on_completion.set = no
    directory.default.set = /home/koko/torrents
    session.path.set = /home/koko/.session
    protocol.encryption.set = allow_incoming, try_outgoing, enable_retry
    schedule2 = wdir_music,11,5,"load.start=/home/koko/watch/music/*.torrent,d.directory.set=/home/koko/torrents/music/,d.custom1.set=music,d.custom3.set=/home/koko/torrents/music/,d.delete_tied="
    schedule2 = untied_directory,5,5,"stop_untied=/home/koko/watch/*.torrent"
    schedule2 = espace_disque_insuffisant,1,30,close_low_diskspace=500M
    trackers.use_udp.set = yes
    dht.mode.set = off
    protocol.pex.set = no
    throttle.min_peers.normal.set = 40
    throttle.max_peers.normal.set = 100
    throttle.min_peers.seed.set = 10
    throttle.max_peers.seed.set = 50
    throttle.max_uploads.set = 30
    execute = {sh,-c,/usr/bin/php /var/www/rutorrent/php/initplugins.php koko &}

    Magicalex
    Bah aucune idée pour les sous-dossiers, mais ça doit être géré par rtorrent. Sur ta version test t'avais pas de sous-dossiers dans torrents/ toi ?

      J'ai tout lu, pfiou !

      Intéressé par ta solution en sh (que je voulais mettre sans docker mais impossible) je suis passé sur php7.0 juste pour toi 🙂

      J'en suis au même point que vous, effectivement passer par le point de montage est plus rapide même pour ~100 torrents 😉

      Et donc j'ai le même problème avec mes sous dossiers dans /home/user/torrents/<films-music-etc> on attend le fix 🙂

      Merci pour votre travail.

        Banip je test mon fix et je reviens vers vous.

        Je réfléchis à optimiser les requêtes xmlrpc avec du multicall mais ça ne fonctionne pas. Je comprend pas comment le multicall fonctionne. ça pourrait me faire économiser énormément de requête et vous du temps...

        @Banip @kokogakayui @kris06800 Vous pouvez retenter 😅

        Cette fois-ci j'ai fait beaucoup plus de test, j'ai poussé la version 0.1.2.
        Pour mettre à jour vous avez juste besoin de lancer cette commande

        composer global update

        Et ensuite de refaire un test (avec une url local de préférence 😂 )

        edit: bon ba j'ai un autre bug... j'ai rien dis 😄

        Bon bah excellent, ça marche impeccable...
        J'ai cru à un nouveau bug tellement j'ai de trucs qui servent à rien mais non, cette fois-ci le ton script a raison ! Total recoverable space: 505.13 Go haha il était temps que je m'y mette 🙂
        Le coup des missing files très bon aussi, ça m'a permis de capter que certains symlinks avaient sauté lors de ma dernière migration hative...
        Bref merci à toi ça tue, et ça va plutôt vite en plus !

          kokogakayui t'as mis combien de temps et avec combien de torrents?

          Vous avez l'option -v pour que le temps s'affiche sur la barre de progression.

          Maintenant tu peux tester la suppression des fichiers si tu veux.

          rtorrent-cleaner rm --url-xmlrpc=http://localhost:8888/RPC --home=/home/user/torrents

          et y a l'option --assume-yes pour les têtes brulées, ça supprime tous les fichiers qu'il trouve en trop sans confirmation. Vous avez intérêt à vérifier que le rapport ne dit pas n'importe quoi avant!!

          @kokogakayui et @Banip d'après vous sur les fichiers manquant (missing file)

          Je devrais arrêter le torrent et lancer une vérification forcé, ou alors supprimer le torrent dans rtorrent, ou tout simplement juste arrêter le torrent?

            Magicalex

            Alors chez moi ça a mis un peu moins de 7 minutes pour 4300+ torrents avec ton vhost nginx.
            Pour la fonction rm par contre je vais mabstenir et faire ça manuellement, vu que y'a pas mal de trucs que je veux récup en local avant, et d'autres que je garde pour mon plex même sans seed. Et le --assume-yes du coup ça sera sans moi aussi.

            Pour les missing files, moi la config report juste informative ça me va très bien. En l'occurence chez moi c'est certains torrents que j'avais rename en symlink pour pouvoir les crossseeder sur des trackers qui n'ont pas les mêmes normes. Les symlinks ont pété lors de ma dernière migration, j'ai juste à les remettre et c'est reparti.

            Par contre un truc qui pourrait être cool, c'est de pouvoir spécifier un nom de fichier, genre unseeded.txt, dans lequel on retrouverait l'output de ton script plutôt que directement dans le shell. Parce que dans mon cas, y'avait tellement de unnecessary files que je dépasse la limite d'affichage de mon shell, et je peux pas remonter jusqu'au début.
            Un autre truc qui pourrait être cool, qui s'applique uniquement aux boxs multi-users, ce serait une fonction qui permette de comparer mon dossier torrents avec celui de l'autre user de ma box. On a pas mal de goûts musicaux en commun, et du coup on a pas mal de doublons sur la box. Un truc qui supprime les fichiers de l'user2, et qui créée des symlinks ou hardlinks vers ceux de l'user principal ça pourrait être très cool. J'avais essayé de faire ça moi même à une époque, mais je maitrise pas assez et ça n'a jamais donné quelque chose de fonctionnel.

            EDIT : A la limite un truc qui pourrait être bien aussi, c'est une fonction qui permettre de déplacer tous les unnecessary dans un dossier donné, histoire de tous les centraliser et de les virer des dossiers de seed, sans pour autant les supprimer 🙂

              kokogakayui Par contre un truc qui pourrait être cool, c'est de pouvoir spécifier un nom de fichier, genre unseeded.txt, dans lequel on retrouverait l'output de ton script plutôt que directement dans le shell. Parce que dans mon cas, y'avait tellement de unnecessary files que je dépasse la limite d'affichage de mon shell, et je peux pas remonter jusqu'au début.

              Alors je comprend la partie ou tu as trop d'affichage, par contre j'ai pas compris ce que tu veux dire par : "spécifier un nom de fichier, genre unseeded.txt, dans lequel on retrouverait l'output de ton script plutôt que directement dans le shell"

              kokogakayui Un autre truc qui pourrait être cool, qui s'applique uniquement aux boxs multi-users, ce serait une fonction qui permette de comparer mon dossier torrents avec celui de l'autre user de ma box. On a pas mal de goûts musicaux en commun, et du coup on a pas mal de doublons sur la box. Un truc qui supprime les fichiers de l'user2, et qui créée des symlinks ou hardlinks vers ceux de l'user principal ça pourrait être très cool. J'avais essayé de faire ça moi même à une époque, mais je maitrise pas assez et ça n'a jamais donné quelque chose de fonctionnel.

              Ouais, y a pas besoin vraiment de se connecter à rtorrent pour faire ça.
              Je pense que cette fonction sera utilisé pas vraiment très très peu de personne.
              Sauf si la demande est forte je me vois pas coder ça.

              kokogakayui EDIT : A la limite un truc qui pourrait être bien aussi, c'est une fonction qui permettre de déplacer tous les unnecessary dans un dossier donné, histoire de tous les centraliser et de les virer des dossiers de seed, sans pour autant les supprimer 🙂

              Ah ça je valide, j'aime bien l'idée 😅
              je vois bien une commande du genre :

              rtorrent-cleaner mv --folder=/path/to/folder

                Magicalex
                Alors pour mon histoire d'affichage d'output, j'avoue c'était pas clair, mais l'idée est très simple. Juste un truc genre

                rtorrent-cleaner report --url-xmlrpc=http://localhost:8888/RPC --home=/home/koko/torrents --file=/home/koko/unseeded.txt -v

                qui permettrait de mettre tout le résultat du script (la liste des unecessary et des missing files) dans le fichier unseeded.txt.

                Pour ton rtorrent-cleaner mv --folder=/path/to/folder ouais je valide à fond!

                Et pour mon truc de comparaison de dossiers de plusieurs users, c'est sûr que c'est assez spécifique, mais comme ça reste dans l'idée de nettoyage et optimisation de la place sur la box je me disais que c'était cohérent héhé 🙂

                J'ai testé, la fonction rm fonctionne bien.

                Par contre dans le cas d'une série il faut supprimer chaque épisode et une fois fait le dossier existe toujours dans le système

                avant suppression : 
                /home/user/torrents/serie/episode
                Après suppression : 
                /home/user/torrents/serie/
                

                Du coup au lieu de supprimer chaque fichier d'un sous dossier, ne peut on pas supprimer le dossier ?

                  Banip le script ne supprime que les fichiers en trop par rapport à rtorrent. Et il ne supprime que les dossiers vide. Si le dossier episode dans ton exemple n'est pas supp c'est qu'il reste des fichiers dedans.

                  @Magicalex Je jure solennellement que le script ne supprime pas un dossier vide 🙁 peut être les espaces dans le nom de dossier ?

                  root@server:/home/user/torrents# rtorrent-cleaner rm --url-xmlrpc=http://localhost:8888/RPC --home=/home/user/torrents -v
                  ============================
                  = REMOVE UNNECESSARY FILES =
                  ============================
                  
                   -> Retrieving the list of concerned files.
                  
                   100/100 [============================] 100% 2 secs Completed!
                  
                  Are you sure you want to delete the /home/user/torrents/Space Colony Steam Edition - PLAZA/plaza.nfo file? [y|n] y
                   -> file: /home/user/torrents/Space Colony Steam Edition - PLAZA/plaza.nfo has been removed
                  Are you sure you want to delete the /home/user/torrents/Space Colony [...]laza-space.colony.steam.edition.iso file? [y|n] y
                   -> file: /home/user/torrents/Space Colony [...]laza-space.colony.steam.edition.iso has been removed
                  Are you sure you want to delete the /home/user/torrents/The.Elder.Scr[...]crolls.V.Skyrim.FRENCH-PiSTOLET.iso file? [y|n] ^C
                  
                  root@server:/home/user/torrents# ls Space\ Colony\ Steam\ Edition\ -\ PLAZA/ -la
                  total 8
                  drwxr-xr-x  2 mylene mylene 4096 Nov 28 14:41 .
                  drwxr-xr-x 18 mylene mylene 4096 Nov 28 14:41 ..
                  

                    kris06800 tu peux essayer en php5 pour voir.

                    Tu utilises quel version de php5? php -v

                    Banip^C tu as arrêtés le script avant la fin avec ctrl+c
                    Il faut que tu répondes à toutes les questions, tu peux faire entrer, entrer.. par défaut le script ne supprime pas le fichier.

                      @Magicalex

                      root@krisboxx:~# php -v
                      PHP 5.6.38-1~dotdeb+7.1 (cli) (built: Sep 14 2018 10:54:46)
                      Copyright (c) 1997-2016 The PHP Group
                      Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
                      with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

                      du coup tu penses faire aussi pour php 5 ?
                      ensuite c'est un serveur avec plusieurs utilisateurs sa le fait pour tous les utilisateurs ou sa demande pour chaque utilisateurs ?