Bonsoir,
Est-ce que c'est possible de faire fonctionner ce script quand on utilise des symlinks ? J'ai une erreur qui je pense vient de la.
SplFileInfo::getSize(): stat failed for ***
Bonsoir,
Est-ce que c'est possible de faire fonctionner ce script quand on utilise des symlinks ? J'ai une erreur qui je pense vient de la.
SplFileInfo::getSize(): stat failed for ***
Salut,
Non ce n'est pas lié.
Quand on fouille un peu le net on voit très vite le rapport avec php.ini. Donc, d'après moi, la mémoire que tu alloues (ou pas, justement) à PHP.
https://github.com/Magicalex/rtorrent-cleaner#usage-with-docker
Bonsoir,
J'utilise l'image docker rutorrent de mondedié ; j'ai voulu tester le rtorrent-cleaner version docker, mais sans succès:
docker run -it --rm \
--link rutorrentjl:rtorrent \
--network compose_compose \
-e PHP_MEMORY_LIMIT=128M \
-e PHP_TIMEZONE=Europe/Paris \
-v /home/jeanluc/compose/rutorrent/rutorrentjl/data/downloads:/data/downloads \
-v /run/rtorrent:/run/rtorrent \
magicalex/rtorrent-cleaner:latest report /run/rtorrent/rtorrent.sock
┌───────────────────────────┐
│ rtorrent-cleaner - report │
└───────────────────────────┘
In Rtorrent.php line 21:
Unable to connect to rtorrent. No such file or directory (code: 2)
report [-f|--exclude-files EXCLUDE-FILES] [-d|--exclude-dirs EXCLUDE-DIRS] [-l|--log [LOG]] [--] <scgi>
Mon container "rutorrentjl" tourne pourtant:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3e2db668cbd8 mondedie/rutorrent:latest "/usr/local/bin/star…" 11 hours ago Up 11 hours 8080/tcp, 0.0.0.0:45752->45752/tcp rutorrentjl
--link rutorrentjl:rtorrent ==> rutorrentjl est bien le nom du container
--network compose_compose ==> le nom du réseau sous lequel tourne aussi rutorrentjl
-v /home/jeanluc/compose/rutorrent/rutorrentjl/data/downloads:/data/downloads ==> mon path local vers le path de down du container
-v /run/rtorrent:/run/rtorrent ==> path local vers path container contenant rtorrent.sock
J'ai eu beau relire le github, je ne comprends pas.
Merci pour vos lumières.
Il faut que tu rajoutes un point de montage à ton image rutorrent, pour que le socket apparaisse sur l'hôte :
-v /run/rutorrent:/run/rutorrent
tu dois voir le fichier /run/rutorrent/rtorrent.sock sur ton hôte si tu veux que ça marche, avant de lancer rtorrent-cleaner
Salut MagicAlex,
après 2 ans d'usage de ma seedbox, j'essaie de faire un cleaning de celle-ci mais je me retrouve confronter à une erreur que j'ai du mal à corriger.
root@Debian-103-buster-64-minimal ~ # rtorrent-cleaner report --exclude-dirs=Musique 127.0.0.1:5001
┌───────────────────────────┐
│ rtorrent-cleaner - report │
└───────────────────────────┘
████████████████████████████ 100%
remaining time: < 1 sec
status: completed successfully!st from rtorrent...
In RecursiveDirectoryIterator.php line 48:
RecursiveDirectoryIterator::__construct(/home/username/torrents/Musique/sonicbrat - Stranger to my room (2013) [FLAC] {AMIP-0037}): Failed to open directory: Too many open files
report [-f|--exclude-files EXCLUDE-FILES] [-d|--exclude-dirs EXCLUDE-DIRS] [-l|--log [LOG]] [--] <scgi>
J'essaie de contourner la difficulté en excluant le dossier "Musique" que je ne souhaite pas vérifier dans tous les cas mais l'argument n'a pas l'air d'être pris en compte.
Pour un info le dossier mis en cause n'a a priori pas de différences avec les autres.
Est-ce que tu aurais une piste ?
Merci d'avance,
Caserio
10-20 000 environ
Merci pour ta réponse. Je pensais que c'était seulement pour l'utilisation sous docker. J'ai fait une install classique avec l'archive de type Phar.
En vérifiant mon fichier php.ini (version 8.1 mais c'est pareil pour la v.7 et les autres) j'ai ceci
; Maximum amount of memory a script may consume
; https://php.net/memory-limit
memory_limit = -1
Et en me référant à la doc php, il n'y a donc pas de limite à l'utilisation de la mémoire par un script.
Est-ce que c'est cette valeur qui est prise en compte ou je dois modifier autre chose ?
Merci de ton aide.
Caserio ça marche.
C'est une limite du système tu peux régler le problème de cette manière je pense (voir le lien) https://support.axway.com/kb/101749/language/en
Je mets l'explication ici :
Le système a des limites de sécurité pour pas ouvrir trop de fichier en même temps.
Pour voir les limites ulimit -aS
Pour connaitre la limite maximum ulimit -aH
Pour augmenter la limite à 30000 par exemple
# vim /etc/security/limits.conf
soft nofile 30000
hard nofile 30000
Bonjour,
petite réponse tardive, j'étais pris ailleurs.
j'ai modifié autrement la limite autrement, de manière temporaire de la façon suivante :
ulimit -n
ulimit -n 30000
J'ai mis 30.000 dans mon cas pour être large. Cette commande ne modifie la limite que pour le temps où le terminal est ouvert et revient à sa valeur initiale par la suite. J'ai pu vérifier ça.
Sinon l'outil fonctionne impecc (500 Go de nettoyé !). Merci beaucoup !
jean-luc
J'ai essaye la commande mais je n'arrive pas a le faire marcher
$ docker run -it --rm \
--link rt_batis:rtorrent \
--network rutorrent-net \
-e PHP_MEMORY_LIMIT=256M \
-e PHP_TIMEZONE=Europe/Paris \
-v /home/batis/rutorrent/data/downloads:/data/downloads \
-v /run/rtorrent:/run/rtorrent \
-v /run/rutorrent:/run/rutorrent \
magicalex/rtorrent-cleaner:latest report /run/rtorrent/rtorrent.sock
┌───────────────────────────┐
│ rtorrent-cleaner - report │
└───────────────────────────┘
In Rtorrent.php line 21:
Unable to connect to rtorrent. No such file or directory (code: 2)
report [-f|--exclude-files EXCLUDE-FILES] [-d|--exclude-dirs EXCLUDE-DIRS] [-l|--log [LOG]] [--] <scgi>
Sachant que mon instance rt_batis
de mondedie/rutorrent
tourne en mode swarm, j'ai essaye de lancer rt-cleaner
en mode swarm egalement mais links
n'est pas supportee!!
rt-cleaner-batis:
image: magicalex/rtorrent-cleaner:latest
environment:
PHP_MEMORY_LIMIT: '256M'
PHP_TIMEZONE: 'Europe/Paris'
networks:
- rutorrent-net
volumes:
- "/home/batis/rutorrent/data/downloads:/data/downloads"
- "/run/rtorrent:/run/rtorrent"
- "/run/rutorrent:/run/rutorrent"
# links: # pas dispo en mode swarm :x
# - "rt_batis:rtorrent" # nom du contenair rutorrent
Qulqu'un aurait une idee comment faire autrement ?
Il faut exposer ton /run/rutorrent du container rutorrent sur ton hôte (par exemple avec - v /run/rutorrent:/run/rtorrent)
Il faut ensuite monter ça dans le /run/php du container rtorrent cleaner (-v /run/rutorrent:/run/php) et appeler rtorrent cleaner en rajoutant le parametre /run/php/rtorrent.sock :
docker run -it --rm \
-v /home/seed/local/rutorrent:/home/seed/local/rutorrent \
-v /run/rutorrent:/run/php \
magicalex/rtorrent-cleaner report /run/php/rtorrent.sock
tu change le "report" dans la commande que tu veux (rm, torrents, etc...)
Merci Merrick, j'ai pige maintenant
Bonsoir,
Merci @Magicalex pour cet outil, excellente idée !
J'ai un petit souci.
Quand je tape la commande : rtorrent-cleaner report ~/.config/rtorrent/socket
Il me liste bien les fichiers qui ne sont plus rattachés à un torrent, mais aussi des fichiers encore seedés...
Je pensais que ça venait de certains dossiers que j'ai nommé ainsi : -TV_SHOWS
(avec un tiret devant) mais ça le fait avec des fichiers dans mon dossier de download et nommés en anglais, donc sans caractères spéciaux.
Peut-être un rapport avec mon fichier socket
ou parce que j'ai trop de sous dossier...
Quelqu'un a déjà eu ce souci ?
J'ai réglé mon souci par hasard...
Si ça peut aider quelqu'un :
Je suis sur une shared box.
J'ai paramétré le chemin de dl dans autobrr en prenant celui indiqué par FileZilla : /home28/etc...
Rtorrent-cleaner regarde dans /home/etc...
donc forcément, il me trouvait des fichiers non rattachés à des torrents...
J’ai pas trop compris c’est quoi autbrr?
Tu as installé toi même ta seedbox?
Normalement rtorrent-cleaner détecte automatiquement le bon chemin
autobrr c'est un outil d'automatisation, notamment RSS (cf. trackarr/autodl-irssi/flexget), mais je ne vois pas non plus le rapport