meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
linux:fs:ext4 [2024/11/15 09:30] niziaklinux:fs:ext4 [2024/11/15 10:57] (current) niziak
Line 13: Line 13:
   * jdupes - can convert duplicate files in hardlinks or relative softlinks   * jdupes - can convert duplicate files in hardlinks or relative softlinks
   * fslint - GUI tool (deprecated)   * fslint - GUI tool (deprecated)
-  * [[https://snapcraft.io/install/fslint-unofficial/debian|fslint-unofficial]]+  * [[https://snapcraft.io/install/fslint-unofficial/debian|fslint-unofficial]] - snap provided but doesn't work!
   * rmlint   * rmlint
     * Nice feature to save state: [[https://rmlint.readthedocs.io/en/master/tutorial.html#replaying-results|replaying]]     * Nice feature to save state: [[https://rmlint.readthedocs.io/en/master/tutorial.html#replaying-results|replaying]]
 +    * Can save checksums to xattr for faster consecutive runs [[https://rmlint.readthedocs.io/en/master/tutorial.html#miscellaneous-options|miscellaneous-options]]
  
  
 Not for ext4: Not for ext4:
   * duperemove   * duperemove
 +
 +===== rmlint =====
 +
 +<code bash>
 +rmlint /BIG/POOL --progress --xattr -c sh:hardlink --size 1M
 +</code>
 +
 +Tools doesn't touch filesystem. It generate ''rmlint.sh'' to make desired modification.
 +Please review script, especially function ''cp_hardlink''.
 +Function needs to hande errors a bit better - it first removes file without backup, and then if error occurs during hardlink there is no way back.
 +
 +<file diff rmlint.patch>
 +1c1
 +< #!/bin/sh
 +---
 +> #!/bin/sh -eu
 +192a193
 +>             mv "$1" ~"$1".rmlint.$$
 +194a196
 +>             rm ~"$1".rmlint.$$
 +</file>
 +