Guides

Find and remove duplicate files on TrueNAS

Your TrueNAS pool keeps filling up and you assumed ZFS dedup handled duplicates? It doesn't touch your existing files. Here's how to actually find and remove duplicate files on TrueNAS, safely, without touching your pool.


Your TrueNAS pool keeps growing, and you suspect the same files are sitting in several datasets. Many people assume ZFS deduplication already takes care of that. It doesn't, at least not the way you'd expect, and counting on it leaves you with either wasted RAM or a NAS still full of copies.

Block dedup is a storage feature, not a cleanup tool

ZFS deduplication works at the block level. It avoids writing the same block twice on the pool, invisibly, to save disk space. It comes at a real cost: it's RAM-hungry (commonly cited around 1 to 5 GB of RAM per TB of data), it maintains a deduplication table that grows as your data grows, and TrueNAS's own guidance frequently warns against turning it on unless you really know your dataset will benefit. It also runs inline, on newly written data only, so it does nothing about the duplicates already sitting on your pool. None of this produces a human-readable answer to the question you actually have: which of my files are duplicates, and how much space would I get back by removing them?

File dedup is what you're really after

What most people want is file-level deduplication: spotting that the same photo, video or document is sitting in three different folders, and being able to look at the list and clean it up. That has nothing to do with the ZFS block layer. It's a read-only scan of your files followed by a deliberate cleanup, and it doesn't require touching your pool, your RAM budget or your dataset settings.

How NAS Ranger handles it, without touching ZFS

NAS Ranger connects to your TrueNAS shares over SMB and identifies duplicates by content fingerprint, so identical files are found regardless of name, date or folder. It never alters your pool, datasets or ZFS options. You see every duplicate group and the exact space you'd reclaim. For the detail of content matching, see how to find duplicate files.

A deliberate, reversible cleanup

You act on many files at once, and nothing is destroyed in place. Confirmed duplicates are moved to a trash folder on the share, a rename, so you review before purging. Here's why that stays safe. And since the app runs on your computer over SMB, there's nothing to install on TrueNAS and a system update can't take it away.

Try it free: scan your TrueNAS shares, see every duplicate and the gigabytes you can reclaim, before touching a single file.

FAQ

Isn't ZFS deduplication enough on TrueNAS?
ZFS dedup is block-level: it avoids storing identical blocks on the pool. It's RAM-hungry (roughly 1 to 5 GB per TB), keeps a dedup table that grows fast, and TrueNAS itself often discourages it. It does not give you a list of your duplicate files to review. That's file-level work, which is a different thing.
What's the difference between block dedup and file dedup?
Block dedup happens inside the storage layer, invisibly, to save disk space. File dedup finds whole duplicate files (the same photo or video sitting in several folders) so you can see and remove them. NAS Ranger does the second, without touching your ZFS pool.
Will NAS Ranger interfere with my pool or datasets?
No. It connects over SMB to your shares and reads files like any client. It never changes ZFS settings. Confirmed duplicates are moved to a trash folder, not deleted in place.
Do I need to enable anything on TrueNAS?
Only an SMB share, which most setups already have. Nothing is installed on TrueNAS, and a system update can't break the tool.