- Modifié
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?
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 &}
@kokogakayui Je pense que tu viens de découvrir une faille dans la logique de mon script.
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 ?
kokogakayui j'ai trouvé le souci je fais un fix dans la journée
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 @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?
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 ?
@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 ..
@Magicalex je suis en php 5 et non en php 7 du coup pense tu faire un script pour php 5 ?
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 ?