zeroer -- wipe unallocated disk space around files
The zeroer utility can be used to flush the empty space on a disk. In contrary to the dd utility, zeroer doesn't wipe existing files on a partition. It overwrites the unallocated disk space around existing files, which means that deleted files cannot be restored anymore after processing a certain partition with zeroer. The utility's principle consists in writing huge zero-padded memory blocks to a file. To a cer- tain extent this works similar to the dd program, however zeroer dynam- ically reduces the blockwriter's buffer size when the disk is going to be full. Thus, smaller fragments of unallocated partition space are also flushed, even though the largest unallocated disk areas can be written with huge blocks and this means more speed.
zeroer's principle is quite simple and there is no guarantee, that zeroer works reliably on every file system, since zeroer doesn't know the way a file system works exactly. However, most file systems use a mix of a centralized disk block addressing table (e.g. inodes, file allocation table) and multiple peripheral directory/ file descriptors. zeroer has been multi-pass tested on UFS, FAT and NTFS and the test's results showed, that zeroer operates quite reliably on these file sys- tems.
Warning: The current version of zeroer doesn't remove file or directory meta data like file and directory names, sizes, dates, modes. Only a file's content is overwritten. Metadata scrambling will be implemented in a future release.
Author: David Schneider (davidschneiderATgmxDOTch)