kokogakayui Je peux t'aider avec mon script, mais pas avec rtchecker qui semble plus du tout maintenu.
rtorrent-cleaner un outil pour libérer de la place sur votre seedbox !
- Modifié
@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
- Modifié
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à !
- Modifié
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 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)
- Modifié
j'ai fais un commit à l'arrache, je dois partir https://github.com/Magicalex/rtorrent-cleaner/commit/f5b0629ecdf97fed60507fbf2652d2cc2d5460aa
On test ça ce soir si tu es là.
@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ù ?
Magicalex Ce soir chaud, mais je regarde ça demain ! Merci à toi en tout cas !
kokogakayui pas de soucis moi je vais faire des tests de mon côté, je vous tiens au courant ici
- Modifié
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.
Magicalex Merci pour l'update ! On attend de tes nouvelles
- Modifié
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ù ?
- Modifié
kokogakayui t'as installé php-bcmath?
T'as fait quoi exactement?
tu peux mettre ici le résultat de la commande echo $PATH
- Modifié
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 "="....