rmlint finds space waste and other broken things on your filesystem and offers to remove it. It is able to find:

  • Duplicate files & directories.
  • Nonstripped Binaries
  • Broken symlinks.
  • Empty files.
  • Recursive empty directories.
  • Files with broken user or group id.

Key Features:

  • Extremely fast.
  • Flexible and easy commandline options.
  • Choice of several hashes for hash-based duplicate detection
  • Option for exact byte-by-byte comparison (only slightly slower).
  • Numerous output options.
  • Option to store time of last run; next time will only scan new files.
  • Many options for original selection / prioritisation.
  • Can handle very large file sets (millions of files).
  • Colorful progressbar. (😃)

https://readthedocs.org/projects/rmlint/badge/?version=latest https://img.shields.io/travis/sahib/rmlint/develop.svg?style=flat https://img.shields.io/github/issues/sahib/rmlint.svg?style=flat https://img.shields.io/github/release/sahib/rmlint.svg?style=flat https://badge.waffle.io/sahib/rmlint.svg?label=ready&title=Ready http://img.shields.io/badge/license-GPLv3-4AC51C.svg?style=flat

Informative reference

These chapters are informative and are not essential for the average user. People that want to extend rmlint might want to read this though:

The Changelog is also updated with new and futures features, fixes and overall changes.


rmlint was and is written by:

Christopher Pahl https://github.com/sahib 2010-2019
Daniel Thomas https://github.com/SeeSpotRun 2014-2019

Additional thanks to:

  • vvs- (Scalability testing)
  • Attila Toth
  • All sane bugreporters (there are not many)
  • All packagers, porters and patchers.


rmlint is licensed under the terms of GPLv3.


If you think rmlint saved [*] you some serious time and/or space, you might consider a donation. You can donate either via Flattr or via PayPal:


Or just buy us a beer if we ever meet. Nice emails are okay too.

[*]If it freed you from your beloved data: Sorry. [†]
[†]Please file a bug or read the source and provide a patch. [‡]
[‡]For more than 100GB of data loss we owe you one beer. [§]
[§]If you don’t like beer or there’s only Budweiser available, you can order a Club Mate.