DedupCommando compared with fdupes, jdupes, rmlint, rdfind, fclones, Czkawka, dupeGuru and duperemove

This page compares DedupCommando v0.9.2 , a beta duplicate file finder for Linux, with eight established ones, using each project's own documentation, release notes and package listings. The others are more widely packaged, run on more systems and have been around longer, and Czkawka and dupeGuru are full desktop apps. DedupCommando is narrower: a terminal tool for ZFS pools that wraps every change in a snapshot, a quarantine and a fresh check.

Who each tool is for

At a glance

ToolInterfaceHow duplicates are confirmedHardlinkReflink / dedupeReversible deleteZFS snapshot before changesPackages
fdupesCLI; ncurses screen for deletingSize, MD5, then byte by byteNot documentedNot documentedNot documentedNot documentedDebian, Ubuntu, Arch, Homebrew
jdupesCLISize, xxHash, then byte by byte (-Q skips it)Yes (-L)-B: Btrfs, XFS, APFSNot documentedNot documentedDebian, Ubuntu, Arch, Homebrew
rmlintCLI (writes a script); GUI: ShredderBLAKE2b by default, or byte by byteYesclone (FIDEDUPERANGE), reflink (like cp --reflink)Via a user command (trash-put)Not documentedDebian, Ubuntu, Homebrew
rdfindCLISize, first/last bytes, SHA-1 by defaultYesNot documentedNo: deletes (unlink); dry runNot documentedDebian, Ubuntu, Arch, Homebrew
fclonesCLIHash only (metro by default)Yesdedupe (reflink; not on Windows)Not documented; move sets files asideNot documentedArch, Homebrew, Snap, crates.io
CzkawkaGUI (Krokiet, GTK) and CLISize, partial hash, BLAKE3YesNot documentedYes: system trash (option)Not documentedDebian, Ubuntu 25.10+, Homebrew, crates.io, Flathub (GTK 10.0)
dupeGuruGUI (Qt)Size and xxHash (MD5 fallback)YesNot documentedYes: trash by defaultNot documentedDebian, Ubuntu, own installers
duperemoveCLIExtent hashes; kernel compares bytesn/a (extent-level tool)FIDEDUPERANGE; btrfs and XFS onlyn/a (no delete option)Not documentedDebian, Ubuntu, Arch
DedupCommandoTUI (commander or wizard)BLAKE3; optional byte by byteYes, within one datasetZFS block cloning (ZFS ≥ 2.3), within one datasetYes: per-dataset quarantineYes: every dataset in the batchOwn APT repo, release tarballs

"Not documented": the project's own docs don't describe it. Packages: official Debian, Ubuntu and Arch repositories, Homebrew, crates.io, Flathub and channels a project names itself (AUR not checked).

OpenZFS 2.2.0 added block cloning, which newer versions of cp use to make clones. The dedupe ioctl FIDEDUPERANGE, used by duperemove and rmlint's clone handler, was left returning an error on ZFS; an implementation reached the development branch on 20 August 2026 but has not shipped in a release (latest: 2.4.4). fclones' dedupe uses FICLONE, and jdupes names Btrfs, XFS and APFS for -B; none of these four mentions ZFS in its README or man page. DedupCommando's reflink needs OpenZFS 2.3+ with block_cloning and, like a hardlink, stays within one dataset.

Where the others are better

Where DedupCommando is different

Others let you look first too: fdupes re-checks files before deleting, rmlint's script is meant to be reviewed, fclones and rdfind have dry runs. DedupCommando differs in what surrounds each change (safety model):

Which one should you use

Facts checked on 2026-09-28; tell us if something changed.

Man pages used: fdupes, jdupes, rmlint, rdfind, duperemove.

DedupCommando is an independent project, not affiliated with the projects compared here or with Proxmox Server Solutions GmbH.