title="Defragmentation for FFS"
Heavily used file systems tend to spread the blocks all over the disk,
especially if free space is scarce. The traditional fix for this is to
use dump, newfs, and restore to rebuild a volume; however, this is not
acceptable for current disk sizes.
The resize_ffs code already contains logic for relocating blocks, as
it needs to be able to do that to shrink a volume; it is likely that
it would serve nicely as a starting point for a defragmenting tool.
Note that safety (not scrambling the volume if the system crashes
while defragging) is somewhat tricky and critically important.
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb