Files
wiki/Catalogue-Self-Hosted/apps/app-czkawka.md
T
2026-06-09 18:40:21 +02:00

7.4 KiB


title: Czkawka created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, automation, deduplication, file-management, rust, desktop, cli] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Automation, https://github.com/qarmin/czkawka]

🧹 Czkawka

Le détecteur de doublons ultrarapide écrit en Rust — libérez des gigaoctets de votre NAS en quelques minutes en trouvant fichiers identiques, photos similaires, audios dupliqués, dossiers vides et bien plus. 10x plus rapide que les alternatives historiques.

📋 Informations Générales

Champ Valeur
Site web github.com/qarmin/czkawka
GitHub qarmin/czkawka
License MIT
Langage Rust (cœur) + GTK4 (GUI) / CLI
Étoiles GitHub 1 067 (cette stat) / 26k+ en réalité
Dernière MAJ 2026-06-02
Catégorie cat-automation

📝 Description

Czkawka (prononcer tchakafka, à la polonaise : le mot signifie « hoquet » en argot, comme le hoquet de votre disque qui a besoin de place) est l'outil de nettoyage de fichiers le plus moderne de l'écosystème open source. Écrit en Rust pour exploiter le parallélisme massif des processeurs modernes, il scanne des millions de fichiers en quelques minutes là où les anciens outils mettaient des heures.

Le projet est né d'une frustration : FSlint et dupeGuru (les classiques) sont restés bloqués à Python 2 et GTK 2 pendant des années. Czkawka les a remplacés en offrant les mêmes fonctionnalités en beaucoup plus rapide, avec une UI GTK4 moderne (Adwaita) et une CLI complète pour automatisation serveur. La version GUI est multi-plateforme (Linux, macOS, Windows), la version CLI tourne headless sur n'importe quel serveur (idéal pour un NAS).

Fonctionnalités principales :

  • Fichiers en double : détection par hash (Blake3, xxHash) — beaucoup plus rapide que MD5
  • Photos similaires : similarité visuelle via hachage perceptuel (permet de trouver des photos recadrées/redimensionnées)
  • Dossiers en double : détection par arborescence + contenu
  • Fichiers temporaires : cache navigateur, logs anciens, thumbnails
  • Vides dossiers / fichiers vides
  • Fichiers volumineux : top N par taille
  • Fichiers invalides : images, vidéos, audios corrompus
  • Extensions identiques : détecter .jpeg et .jpg du même fichier
  • Noms similaires : "IMG_001.jpg" vs "IMG_001 (1).jpg"
  • Symlinks cassés
  • Multi-thread agressif : utilise tous les cœurs CPU
  • CLI complète pour scripting et cron
  • Cache : scans incrémentaux, le second scan est instantané
  • ⚠️ Aucune modification automatique : Czkawka liste, l'humain décide (sécurité)

Performance typique : sur un NAS avec 1 million de fichiers (1 To), un scan doublons prend 5-15 minutes avec 8 threads. dupeGuru mettrait 2-3 heures. fdupes ~1 heure.

🚀 Installation

Option 1 : Docker (CLI headless, idéal NAS/script)

# docker-compose.yml
services:
  czkawka-cli:
    image: docker.io/jlesage/czkawka-cli:latest
    container_name: czkawka
    restart: "no"
    volumes:
      - /mnt/nas:/data:ro            # répertoire à scanner
      - czkawka-cache:/cache         # cache des hashes
      - czkawka-reports:/reports     # rapports générés
    command: >
      czkawka_cli dup
        --directories /data
        --hash-type blake3
        --size-unit binary
        --json-results /reports/dup-report.json

Lancement manuel : docker compose run --rm czkawka-cli puis choisir la sous-commande.

Option 2 : Binaire Linux natif

# Via cargo (depuis les sources)
cargo install czkawka_cli

# Ou binaire pré-compilé
wget https://github.com/qarmin/czkawka/releases/latest/download/czkawka_cli_linux_amd64.tar.gz
tar -xzf czkawka_cli_linux_amd64.tar.gz
sudo mv czkawka_cli /usr/local/bin/

# Scan doublons sur /mnt/nas/photos
czkawka_cli dup --directories /mnt/nas/photos --hash-type blake3

Option 3 : Paquets distro

# Ubuntu/Debian (souvent disponible)
sudo apt install czkawka

# Arch
sudo pacman -S czkawka

# Fedora
sudo dnf install czkawka

Option 4 : GUI (Linux/macOS/Windows)

  • Flatpak : flatpak install flathub com.github.qarmin.czkawka
  • Snap : sudo snap install czkawka
  • Windows : .exe disponible sur la page Releases

⚙️ Configuration

  • --hash-type : choisir blake3 (rapide, sécurisé) ou xxh3 (le plus rapide)
  • --thread-number N : par défaut = nb de cœurs, à réduire sur un NAS en production
  • --minimal-file-size 1MB : ignorer les fichiers < taille donnée
  • --allowed-extensions : filtrer par extension (jpg,png,mp4)
  • --json-results / --delete-method** : choisir entre rien (safe), corbeille, ou suppression définitive (à éviter)
  • Cache : ~/.local/share/czkawka/sauvegarder pour éviter de re-scanner après reboot

🔗 Alternatives

Open Source

  • fdupes — le classique Unix, CLI only, plus lent (Python+hash MD5)
  • jdupes — fork de fdupes, plus rapide, en C
  • dupeGuru — la référence historique, multi-OS, GUI, mais Python 2 + Qt
  • FSlint — encore plus vieux, GTK 2, quasi-abandonné
  • rdfind — CLI, gère les symlinks, UNIX pur
  • rmlint — rapide, en C, format de sortie riche
  • BleachBit — plus orienté "cache système" que "doublons"
  • SnapRAID/Btrfs/ZFS dedup — dédup au niveau filesystem (online)

Propriétaires (ce que Czkawka remplace)

  • Easy Duplicate Finder — 40 $, Windows only
  • Duplicate Cleaner Pro — 30 $, Windows
  • Disk Savvy — 80 $, Windows server
  • Cloud-apps intégrées : Google Photos "similar", Apple Photos "duplicates", Dropbox "file requests" (limités)
  • Total Commander / Beyond Compare — plugins payants de dédup

🔒 Sécurité

  • ⚠️ Ne JAMAIS lancer avec --delete-method delete sur un premier scan : vous pourriez perdre des fichiers importants
  • Toujours commencer par --delete-method none pour prévisualiser le rapport
  • Le mode corbeille (--delete-method trash) est le plus sûr
  • Sauvegarder les fichiers avant de lancer une opération massive (rsync ou borg backup)
  • Permissions : Czkawka n'a besoin que de lecture sur les dossiers scannés — ne jamais l'exécuter en root sur un serveur en prod
  • Logs : garder les rapports JSON pour audit (qui a supprimé quoi)
  • Photos similaires : attention, l'algorithme peut signaler des photos différentes mais visuellement proches (chevaux, paysages) — toujours vérifier manuellement

📚 Ressources

🔗 Pages Liées