Defraginator vs xfs_fsr
Defraginator
github.comxfs_fsr
xfs.orgSide by side
| Figure | Defraginator | xfs_fsr |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| Plans published | 0 | 1 |
| Spec score · Disk Defragmentation Software | 7.3 (#12) | 6.9 (#16) |
| Purpose | Defraginator is a desktop app that defragments split .bin ROM and firmware images on SD cards and other removable media. | xfs_fsr reorganizes mounted XFS filesystems by improving the layout of file extents one file at a time. |
Plans
In their own words
Defraginator
Defraginator is a desktop utility for making selected ROM and firmware `.bin` images contiguous on removable storage. It detects mounted volumes that appear to be removable, scans them recursively, and checks matching files’ physical layout. You can enable or disable target sizes of 256 KB, 512 KB, 1024 KB, and 2048 KB; files outside those sizes are not in scope. The app needs a single free gap at least as large as the file. It reports available free space and, on Windows, the largest contiguous block; on Linux and macOS, that largest-block figure is unknown. Windows moves clusters in place and requires administrator rights. Linux and macOS rewrite files into newly allocated space and check their physical extents; the Linux FIBMAP fallback requires root, while the listed macOS operations run as a normal user. The project says it restores the original after an unsuccessful rewrite and reports success only after verifying contiguity. Keep the card connected during work. Defraginator is free and GPL-3.0 licensed; building it requires the .NET 10 SDK.
xfs_fsr
xfs_fsr is a free Linux utility in the xfsprogs project that reorganizes mounted XFS filesystems one file at a time. It copies a target file to temporary storage, then atomically exchanges the data extents of the original and temporary files. With no arguments, it chooses files with the largest extent counts and attempts the top 10% on each pass. A default run lasts up to two hours and records its stopping point for later resumption. You can name filesystems or individual files, with one pass through each target. Targets must be mounted read-write; entries without that option are skipped. Files mapped in memory and files marked no-defrag are not processed. Reorganization needs enough free space to copy the target, with space less fragmented than the original. On quota-enabled systems, the owner also needs sufficient remaining file quota. The manual says system partitions generally do not need this utility and warns that moving bootloader files can prevent booting unless lilo is rerun before reboot.