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.