Initial vault setup
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
---
|
||||
title: Cleanuparr
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, arr, cleanup, torrent, automation, qbittorrent]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=*arr, https://github.com/Cleanuparr/Cleanuparr]
|
||||
---
|
||||
|
||||
# 🎬 Cleanuparr
|
||||
|
||||
> Nettoyeur automatique de torrents orphelins et de fichiers *arr mal gérés : détecte les torrents bloqués, les imports ratés, les fichiers dupliqués, et libère l'espace disque intelligemment.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Attribut | Valeur |
|
||||
|----------|--------|
|
||||
| **Nom** | Cleanuparr |
|
||||
| **Slug** | cleanuparr |
|
||||
| **Description** | Outil de nettoyage et maintenance pour Sonarr/Radarr/qBittorrent : suppression de torrents bloqués, gestion des imports échoués, optimisation disque |
|
||||
| **Site officiel** | https://cleanuparr.github.io |
|
||||
| **Repository** | https://github.com/Cleanuparr/Cleanuparr |
|
||||
| **Stars** | 2 296 ⭐ |
|
||||
| **Licence** | GPL-3.0 |
|
||||
| **Langage principal** | C# (.NET) |
|
||||
| **Catégorie** | *arr (utilitaires) |
|
||||
| **Tags** | [catalogue, arr, cleanup, torrent, automation, qbittorrent] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**Cleanuparr** est l'outil que vous installez 6 mois après avoir monté votre stack *arr complète, quand vous réalisez que vous avez 200 torrents en `stalled`, 50GB de fichiers `.partial~`, des saisons 3 téléchargées en triple parce qu'un épisode était mal nommé, et 3 jobs Sonarr bloqués depuis 3 semaines sur "Already imported but found in download client".
|
||||
|
||||
Les fonctionnalités principales :
|
||||
|
||||
- **Détection des torrents bloqués** : un torrent est `stalled`/`error`/`missing` depuis plus de X jours → action configurable (supprimer, hard-delete, mettre en pause, notifier).
|
||||
- **Imports échoués *arr** : scan de la queue Sonarr/Radarr, identification des jobs coincés, retry ou suppression.
|
||||
- **Fichiers partiels** : nettoyage des `.partial~`, `*.!qB`, fichiers sans extension dans `/downloads`.
|
||||
- **Doublons** : hash-based dedup, garde le fichier de meilleure qualité, supprime les autres.
|
||||
- **Hardlinks cassés** : détection et réparation des hardlinks entre `/downloads` et `/library`.
|
||||
- **Règles personnalisables** : planifier via cron intégré, dry-run obligatoire, logs détaillés.
|
||||
|
||||
Cleanuparr est **non-destructif par défaut** : tout part en dry-run, on valide, on bascule en mode actif. C'est appréciable vu qu'il touche à des données irremplaçables.
|
||||
|
||||
## 🚀 Installation
|
||||
### Via Docker (recommandé)
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
cleanuparr:
|
||||
image: ghcr.io/cleanuparr/cleanuparr:latest
|
||||
container_name: cleanuparr
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TZ=Europe/Paris
|
||||
- LOG_LEVEL=info
|
||||
volumes:
|
||||
- ./config:/app/config
|
||||
- /data/downloads:/downloads
|
||||
- /data/movies:/movies
|
||||
- /data/tv:/tv
|
||||
ports:
|
||||
- "6868:6868"
|
||||
```
|
||||
### Installation manuelle
|
||||
.NET 8 SDK requis, binaire self-contained sur les releases GitHub (Linux x64, arm64, Windows).
|
||||
|
||||
## ⚙️ Configuration
|
||||
- **Connexion qBittorrent** : URL, user/pass (pas le cookie). Activer l'API Web dans qBittorrent.
|
||||
- **Connexion Sonarr/Radarr** : API key + URL, pour lire la queue d'imports.
|
||||
- **Règles de blocage** : par défaut `stalled > 7 jours ET ratio < 1.0 → notifier ; > 14 jours → supprimer avec fichiers`. Ajuster selon votre usage (Fibre + VPN → seuil de 30 jours raisonnable).
|
||||
- **Dry-run** : **toujours** activé en premier passage, désactiver seulement après validation.
|
||||
- **Notifications** : Discord, Telegram, Apprise (multi-canaux), webhook.
|
||||
- **Schedule** : cron intégré, ex `0 3 * * *` (3h du matin tous les jours).
|
||||
|
||||
## 🔗 Alternatives
|
||||
- **Sonarr/Radarr built-in Queue Cleaner** — minimaliste, intégré, mais pas de cross-service.
|
||||
- **Maintainerr** — orienté règles de suppression métier (cf. fiche dédiée), pas maintenance technique.
|
||||
- **Traktarr** — suppression basée sur watchlist, cas d'usage différent.
|
||||
- **Scripts bash custom** — pour les bricoleurs, mais aucune UI ni logs centralisés.
|
||||
|
||||
## 🔒 Sécurité
|
||||
- **Droits fichiers** : Cleanuparr **supprime** des fichiers réels, le user Docker (PUID) doit avoir les droits sur `/downloads` et `/library` — équivalents à Sonarr/Radarr/qBittorrent.
|
||||
- **Dry-run avant prod** : tester 1 semaine en mode simulation pour vérifier qu'il n'efface rien d'important.
|
||||
- **Pas d'auth locale forte** : mettre derrière Authelia/Authentik, jamais exposé en clair.
|
||||
- **Backup** : faire un snapshot de `/downloads` et `/library` avant la première activation, **rien n'est récupérable après suppression**.
|
||||
- **Logs** : conserver 30 jours minimum, le service peut faire des erreurs de jugement (garder un torrent qui aurait dû être supprimé est moins grave que l'inverse).
|
||||
|
||||
## 📚 Ressources
|
||||
- Site officiel : https://cleanuparr.github.io
|
||||
- Documentation : https://cleanuparr.github.io/docs
|
||||
- Wiki *arr : https://wiki.servarr.com
|
||||
|
||||
## 🔗 Pages Liées
|
||||
- [[cat-arr]]
|
||||
- [[app-sonarr]]
|
||||
- [[app-radarr]]
|
||||
- [[app-qbittorrent]]
|
||||
- [[app-maintainerr]] — autre outil de suppression, plus orienté règles métier
|
||||
- [[app-traktarr]]
|
||||
- [[app-traefik]]
|
||||
- [[app-gluetun]] — VPN
|
||||
- [[securisation-home-lab]]
|
||||
- [[recettes-docker-compose]]
|
||||
Reference in New Issue
Block a user